public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* cpufreq on demand governor sampling rate restricted to HZ even on NO_HZ kernels
@ 2009-01-30 14:59 Thomas Renninger
  2009-01-30 17:28 ` Pallipadi, Venkatesh
  0 siblings, 1 reply; 3+ messages in thread
From: Thomas Renninger @ 2009-01-30 14:59 UTC (permalink / raw)
  To: cpufreq; +Cc: linux-kernel, venkatesh.pallipadi

Hi,

depending on HZ set to:

100
250
1000

the ondemand governor is currently limited to poll the CPU load
and adjust the frequency (sampling rate sysfs variable) every:

200ms
80ms
20ms

This limitation does not consider NO_HZ which looks wrong?
If this is correct, can someone give me a pointer, I'd like
to understand why.

If NO_HZ can/should go down to 20ms polling and more (current
CPUs are able to switch fast enough, so that the ondemand governor
would calculate the default polling interval below 80ms for them),
this would hurt in respect of C-states at some point.

For performance reasons, one wants to poll as much as possible, for
powersaving reasons (C-states), one wants to poll as seldom as
possible.

I wonder whether it makes sense to dynamically adjust the polling
interval (e.g. by a hint (and initial wakeup) from the scheduler or
taking C-states into account) to:
  - increase the sampling rate, e.g. based on context switching
    activity
  - lower sampling rate when the system is idle (to gain
    full C-state efficiency)
Or in what other way deep C-states could be taken into account
in respect of ondemand polling?

Thanks,

     Thomas


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-02-03 17:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-30 14:59 cpufreq on demand governor sampling rate restricted to HZ even on NO_HZ kernels Thomas Renninger
2009-01-30 17:28 ` Pallipadi, Venkatesh
2009-02-03 17:04   ` Thomas Renninger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox