Re: Core Scheduling - Concurrent VMs

From: Peter Zijlstra
Date: Tue Jul 27 2021 - 05:54:52 EST


On Mon, Jul 26, 2021 at 11:57:21AM -0400, Joel Fernandes wrote:
> Hi,
> +Dario Faggioli and +Vineeth Pillai as well.
>
> On Mon, Jul 26, 2021 at 1:41 AM Rajendran, Jaishankar
> <jaishankar.rajendran@xxxxxxxxx> wrote:
> >
> > Refer to the below experiments performed using Core Scheduling for Concurrent VMs and we found the benchmark scores executed in different VMs are
> > degrading after enablement of Core Scheduling. Both the host and guest are enabled with Core Scheduler
>
> Why are you running core scheduling within the guest? Only the host
> needs it and you tag vCPU threads in the host. Within the guest you
> don't need it (and it probably doesn't make sense unless you pin the
> vCPU threads to individual physical hardware threads).

Correct, in-guest core-scheduling only works if there's an in-guest
topology, which requires pinning vcpu threads and sacrificing a chicken
on the altar of qemu to get the right incantation such that the guest
actually receives the right topology.

Nested core scheduling hurts my head.

> I don't think these commands can really tell you that core scheduler
> is working or not. They are too coarse grained. You would need to look
> at it through ftrace scheduling events. Core scheduling will still
> allow differently tagged threads to use a core, it is just that it
> wont allow it simultaneously.

Right, you need tracing to verify it actually works, no real alternative
there.