[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190426095123.GE126896@gmail.com>
Date: Fri, 26 Apr 2019 11:51:23 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Mel Gorman <mgorman@...hsingularity.net>
Cc: Aubrey Li <aubrey.intel@...il.com>,
Julien Desfossez <jdesfossez@...italocean.com>,
Vineeth Remanan Pillai <vpillai@...italocean.com>,
Nishanth Aravamudan <naravamudan@...italocean.com>,
Peter Zijlstra <peterz@...radead.org>,
Tim Chen <tim.c.chen@...ux.intel.com>,
Thomas Gleixner <tglx@...utronix.de>,
Paul Turner <pjt@...gle.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Linux List Kernel Mailing <linux-kernel@...r.kernel.org>,
Subhra Mazumdar <subhra.mazumdar@...cle.com>,
Fr?d?ric Weisbecker <fweisbec@...il.com>,
Kees Cook <keescook@...omium.org>,
Greg Kerr <kerrnel@...gle.com>, Phil Auld <pauld@...hat.com>,
Aaron Lu <aaron.lwe@...il.com>,
Valentin Schneider <valentin.schneider@....com>,
Pawan Gupta <pawan.kumar.gupta@...ux.intel.com>,
Paolo Bonzini <pbonzini@...hat.com>,
Jiri Kosina <jkosina@...e.cz>
Subject: Re: [RFC PATCH v2 00/17] Core scheduling v2
* Mel Gorman <mgorman@...hsingularity.net> wrote:
> > Interesting.
> >
> > Here too I'm wondering whether the scheduler could do something to
> > improve the saturated case: which *is* an important workload, as kernel
> > hackers tend to over-load their systems a bit when building kernel, to
> > make sure the system is at least 100% utilized. ;-)
> >
>
> Every so often I try but I never managed to settle on a heuristic that
> helped this case without breaking others. The biggest hurdle is that
> typically things are better if migrations are low but it's hard to do
> that in a way that does not also stack tasks on the same CPUs
> prematurely.
So instead of using a heuristic (which are fragile and most of them are
also annoyingly non-deterministic and increase overall noise and make
measurements harder) I'd suggest using SCHED_BATCH just as a hardcore
toggle to maximize for CPU-bound throughput.
It's not used very much, but the kernel build could use it by default
(i.e. we could use a "chrt -b" call within the main Makefile), so it
would be the perfect guinea pig and wouldn't affect anything else.
I.e. we could use SCHED_BATCH to maximize kernel build speed, with no no
regard to latency (within SCHED_BATCH workloads). I suspect this will
also maximize bandwidth of a lot of other real-world, highly parallel but
interacting processing workloads.
[ I'd even be willing to rename it to SCHED_KBUILD, internally. ;-) ]
Thanks,
Ingo
Powered by blists - more mailing lists