|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Re: CPU scheduling of domains and vcpus
If we know that a particular VM is running a compute bound workload with synchronization, we can mark that VM to be gang scheduled. That would work better than pinning to physical cpus, since scheduler can still load balance across all physical cpus.
Nevertheless, as Mike mentioned, idle cycles can be accounted for by providing hints from guest OS. Hints can be rolled into the multicall done at context switch.
It seems to me that it would be desirable to have gang scheduling available as an one of the scheduler options.
-- Nauman Rafique Purdue University
On Mon, Apr 21, 2008 at 5:34 PM, Samuel Thibault < samuel.thibault@xxxxxxxxxxxxx> wrote:
Mike D. Day, le Mon 21 Apr 2008 16:32:18 -0400, a écrit :
> On 21/04/08 18:56 +0100, Samuel Thibault wrote:
> > Nauman Rafique, le Mon 21 Apr 2008 13:52:21 -0400, a écrit :
> > > In fact, wasted cycles can probably be avoided by doing opportunisitic
> > > gang scheduling (i.e. gang schedule, unless there would be wasted
> > > cycles)
> >
> > How do you detect that there would be wasted cycles?
>
> The only way is for a very self-aware guest to use a paravirtual
> feature to give a hint to the scheduler.
Agreed :)
> Alternatively, the scheduler can notify the guest that it is about to
> be preempted by the hypervisor and now would be a good time to sleep
> before gaining a contended spinlock.
Mmm, "about to be" means "on the next tick" then. That may be a long
time.
Samuel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|