Why Workflow Creating Multiple Tasks is VERY SLOW?

I’ve got a workflow that when a case is assigned to a user, it creates 22 tasks for that case. Initially, whenyou saved the case, it took about 10 seconds or so to run the workflow and come back to the case view, which is still a long delay. It’s gotten a bit worse, like 20 seconds. Hosted on a VPS SSD Solution with
10.5GB RAM
Guaranteed 2.625 CPU Cores
Burst Up to 7.875 CPU Cores
Guaranteed 1400 Sustained IOPS
Burst Up to 3500 IOPS

There’s nothing else intensive running on the box. MySQL my.cnf has been tuned, etc. Do I need more hardware horsepower or is SugarCRM just not very efficient at running a workflow that involves creating multuple tasks? There’s max two users using the system at a time.

Move to a new host with about 8 time the IOPS and it cut the lag time in half. But still 15+ seconds seems like a long time to wait for the workflow to run. It seems the AOW task creation code isn’t very efficient as creating 21 tasks seems like it shouldn’t take that long.