
Messages in this thread
SubjectRe: [PATCH v7 0/8] Tunable sched_mc_power_savings=n
* Mike Galbraith <> [2009-01-07 09:59:15]:

> I have a couple questions if you don't mind.
> In wake_idle() there's an odd looking check for kthreads. Why does it
> matter if a kbuild task wakes kernel or userland helper thread?

Only user space tasks/threads should be biased at wakeup and
consolidated for the following reasons:

* kernel threads generally perform housekeeping tasks and its rate of
execution and cpu utilisation is far less than that of user task in
an under utilised system.
* Biasing at wakeup help consolidate bursty user space tasks. Long
running user space tasks will be consolidated by load balancer.
kthreads are not bursty, they are generally very short running.

> I also don't see why sched_mc overrides domain tunings. You can turn
> NEWIDLE off and sched_mc remains as set, so it's a one-way override. If
> NEWIDLE is a requirement for sched_mc > 0, it seems only logical to set
> sched_mc to 0 if the user explicitly disables NEWIDLE.

SD_BALANCE_NEWIDLE is required for sched_mc=2 and power savings while
not mandated for sched_mc=0. We can remove NEWIDLE balance at
sched_mc=0 if that helps baseline performance. Ingo had identified
that removing NEWIDLE balance help performance in certain benchmarks.

I do not get what you have mentioned by NEWIDLE off? Is there
a separate user space control to independently set or reset
SD_BALANCE_NEWIDLE at a give sched_domain level?

Thanks for the detailed review.


 \ /
  Last update: 2009-01-07 12:27    [from the cache]
©2003-2011 Jasper Spaans