[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel][PATCH][RFC] credit scheduler enhancement, eliminate unnecessary vcpu migrations



Hi Keir,

csched_load_balance is used to see if there are higher privileged vcpu
in
other physical processors' runnable queue, if there is, then migrate
this vcpu to this physical processor.

But at following scenario, this vcpu migration is unnecessary.
1. idle_vcpu0 is running on lp0, hvm_vcpu is in lp0's runnable queue,
this
    happens when hvm_vcpu is just being woken up,
2. idle_vcpu1 is running on lp1, there are no vcpu in lp1's runnable
queue,
   idle_vcpu1 calls scheduler to try to find vcpu in other physical
processor
   to run on lp1, it then finds hvm_vcpu, and hvm_vcpu is migrated to
lp1.

In fact, this migration is unnecessary, due to hvm_vcpu is going to run
on lp0     immediately.

As we know vcpu migration incurs extra overhead such as tlb purge.

This patch is to eliminate these unnecessary vcpu migrations.

After applying this patch, KB on up hvm domain gain more than 10%
improvement.
There are 4 physical processors on my box.


What do you think?

Thanks,
Anthony

Attachment: credit_sched.patch
Description: credit_sched.patch

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.