Re: [RFC PATCH v4 00/19] Core scheduling v4

From: Julien Desfossez
Date: Fri Feb 21 2020 - 18:21:06 EST


On 18-Feb-2020 04:58:02 PM, Vineeth Remanan Pillai wrote:
> > Yes, this makes sense, patch updated at here, I put your name there if
> > you don't mind.
> > https://github.com/aubreyli/linux/tree/coresched_v4-v5.5.2-rc2
> >
> > Thanks Aubrey!

Just a quick note, I ran a very cpu-intensive benchmark (9x12 vcpus VMs
running linpack), all affined to an 18 cores NUMA node (36 hardware
threads). Each VM is running in its own cgroup/tag with core scheduling
enabled. We know it already performed much better than nosmt, so for
this case, I measured various co-scheduling statistics:
- how much time the process spends co-scheduled with idle, a compatible
or an incompatible task
- how long does the process spends running in a inefficient
configuration (more than 1 thread running alone on a core)

And I am very happy to report than even though the 9 VMs were configured
to float on the whole NUMA node, the scheduler / load-balancer did a
very good job at keeping an efficient configuration:

Process 10667 (qemu-system-x86), 10 seconds trace:
- total runtime: 46451472309 ns,
- local neighbors (total: 45713285084 ns, 98.411 % of process runtime):
- idle neighbors (total: 484054061 ns, 1.042 % of process runtime):
- foreign neighbors (total: 4191002 ns, 0.009 % of process runtime):
- unknown neighbors (total: 92042503 ns, 0.198 % of process runtime)
- inefficient periods (total: 464832 ns, 0.001 % of process runtime):
- number of periods: 48
- min period duration: 1424 ns
- max period duration: 116988 ns
- average period duration: 9684.000 ns
- stdev: 19282.130

I thought you would enjoy seeing this :-)

Have a good weekend,

Julien