Re: [PATCH] kernel/sched: run nohz idle load balancer on HK_FLAG_MISC CPUs

From: Nicholas Piggin
Date: Fri Apr 26 2019 - 00:41:10 EST

Peter Zijlstra's on April 25, 2019 9:56 pm:
> On Fri, Apr 12, 2019 at 02:26:13PM +1000, Nicholas Piggin wrote:
>> The nohz idle balancer runs on the lowest idle CPU. This can
>> interfere with isolated CPUs, so confine it to HK_FLAG_MISC
>> housekeeping CPUs.
>> HK_FLAG_SCHED is not used for this because it is not set anywhere
>> at the moment. This could be folded into HK_FLAG_SCHED once that
>> option is fixed.
> Frederic? Anyway, I thnk I'll take this patch as is.

That would be great, thanks. We've been testing it in a staging
environment (this is where they noticed the noise in the first
place), and results have been as expected:

I've been able to test Nick's idle-loop load balancer (ILB) patch,
with and without the TEO cpuidle governor. With the ILB patch (and
nohz_full) I get a very quiet noise profile with either cpuidle
governor (menu or teo). For my tests, I don't see a meaningful
difference between the two governors.


Bottom line: Nick's patch that constrains the ILB to run on non-nohz
cores has a noticeable noise-reduction effect. For this type of
workload, the choice of cpuidle governor, menu or teo, is immaterial.

This is against a slightly backported RHEL kernel they are using, but
no significant differences from upstream in these areas.