Re: [RFC][PATCH 0/3] A Dynticks Aware Processor Idle PM Governor

From: Len Brown
Date: Thu May 31 2007 - 21:18:52 EST


Applied this series to acpi-test
in anticipation that Venki is about to send some incremental
patches to address the feedback on it.

thanks,
-Len

On Saturday 24 March 2007 03:46, Adam Belay wrote:
> Hi All,
>
> Here is my first take at implementing an idle PM governor that takes
> full advantage of NO_HZ. I call it the 'menu' governor because it
> considers the full list of idle states before each entry.
>
> I've kept the implementation fairly simple. It attempts to guess the
> next residency time and then chooses a state that would meet at least
> the break-even point between power savings and entry cost. To this end,
> it selects the deepest idle state that satisfies the following
> constraints:
> 1. If the idle time elapsed since bus master activity was detected
> is below a threshold (currently 20 ms), then limit the selection
> to C2-type or above.
> 2. Do not choose a state with a break-even residency that exceeds
> the expected time remaining until the next timer interrupt.
> 3. Do not choose a state with a break-even residency that exceeds
> the elapsed time between the last pair of break events,
> excluding timer interrupts.
>
> This governor has an advantage over "ladder" governor because it
> proactively checks how much time remains until the next timer interrupt
> using the tick infrastructure. Also, it handles device interrupt
> activity more intelligently by not including timer interrupts in break
> event calculations. Finally, it doesn't make policy decisions using the
> number of state entries, which can have variable residency times (NO_HZ
> makes these potentially very large), and instead only considers sleep
> time deltas.
>
> The menu governor can be selected during runtime using the cpuidle sysfs
> interface like so:
> "echo "menu" > /sys/devices/system/cpu/cpuidle/current_governor"
>
> This patchset applies against 2.6.21-rc4 plus the latest from the acpi
> testing tree, which is available here:
> ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/test/2.6.21/acpi-test-20070126-2.6.21-rc4.diff.bz2
>
> I'd really appreciate any comments, benchmarks, or suggestions.
>
> Cheers,
> Adam
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/