The setup is as follows. Ubuntu-11.10 VM running on an ESXi host. The VM has 3 vCPU assigned.
When running dump (to backup the harddisk) it seems all the processes are assigned to the first vCPU. As we are using compression this loads the vCPU at 100%, slowing down the dump to a crawl.
I have (by using taskset) spread the dump processes to other vCPUs and thereby gained a factor 3 speedup of the backup. Their original affinity was set to 0-2, and if I remove the affinity I have set they all move back to the first vCPU.
I can not fathom what may cause the scheduler to allocate all processes to the same CPU. Can somebody please explain why the task-scheduler may act like this?