|
|
|
|
|
|
|
|
|
|
xen-devel
RE: [Xen-devel] planned csched improvements?
>From: Jan Beulich [mailto:JBeulich@xxxxxxxxxx]
>Sent: 2009年10月12日 15:28
>
>>>> "Tian, Kevin" <kevin.tian@xxxxxxxxx> 10.10.09 10:03 >>>
>>>From: Jan Beulich
>>>On a lightly loaded many-core non-hyperthreaded system (e.g. a single
>>>CPU bound process in one VM, and only some background load
>elsewhere),
>>>I see this CPU bound vCPU permanently switch between
>sockets, which is
>>>a result of csched_cpu_pick() eagerly moving vCPU-s to "more idle"
>>>sockets. It would seem that some minimal latency
>consideration might be
>>>useful to get added here, so that a very brief interruption
>by another
>>>vCPU doesn't result in unnecessary migration.
>>
>>there's a migration delay (default is 1ms) to judge cache hotness and
>>thus avoid unnecessary migration. However so far it's only checked
>>when one cpu wants to steal vcpus from other runqueue. Possibly it
>>makes sense to add this check to csched_vcpu_acct, as a cold cache
>>and cascade of other VCPU migrations could easily beat benefit on a
>>"more idle" socket.
>
>Where do you see this 1ms delay - I can't seem to spot it...
>
Sorry, that's default value in my memory. However taking a look at
code doesn't give it.
/*
* Delay, in microseconds, between migrations of a VCPU between PCPUs.
* This prevents rapid fluttering of a VCPU between CPUs, and reduces the
* implicit overheads such as cache-warming. 1ms (1000) has been measured
* as a good value.
*/
static unsigned int vcpu_migration_delay;
integer_param("vcpu_migration_delay", vcpu_migration_delay);
It's just the comment saying that. You may try to add that boot option
for a try. :-)
Thanks,
Kevin _______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|