lkml.org 
[lkml]   [2010]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRFC: /sys/power/policy_preference
Create /sys/power/policy_preference, giving user-space
the ability to express its preference for kernel based
power vs. performance decisions in a single place.

This gives kernel sub-systems and drivers a central place
to discover this system-wide policy preference.
It also allows user-space to not have to be updated
every time a sub-system or driver adds a new power/perf knob.

policy_preference has 5 levels, from max_performance
through max_powersave. Here is how 4 parts of the kernel
might respond to those 5 levels:

max_performance (unwilling to sacrifice any performance)
scheduler: default (optimized for performance)
cpuidle: disable all C-states except polling mode
ondemand: disable all P-states except max perf
msr_ia32_energy_perf_bias: 0 of 15

performance (care primarily about performance)
scheduler: default (optimized for performance)
cpuidle: enable all C-states subject to QOS
ondemand: all P-states, using no bias
msr_ia32_energy_perf_bias: 3 of 15

balanced (default)
scheduler: enable sched_mc_power_savings
cpuidle: enable all C-states subject to QOS
ondemand: all P-states, powersave_bias=5
msr_ia32_energy_perf_bias: 7 of 15

powersave (can sacrifice measurable performance)
scheduler: enable sched_smt_power_savings
cpuidle: enable all C-states, subject to QOS
ondemand: disable turbo mode, powersave_bias=10
msr_ia32_energy_perf_bias: 11 of 15

max_powersave (can sacrifice significant performance)
scheduler: enable sched_smt_power_savings
cpuidle: enable all C-states, subject to QOS
ondemand: min P-state (do not invoke T-states)
msr_ia32_energy_perf_bias: 15 of 15

Note that today Linux is typically operating in the mode
called "performance" above, rather than "balanced",
which is proposed to be the default. While a system
should work well if left in "balanced" mode, it is likely
that some users would want to use "powersave" when on
battery and perhaps shift to "performance" on A/C.

Please let me know what you think.

thanks,
Len Brown, Intel Open Source Technology Center


\
 
 \ /
  Last update: 2010-06-16 23:07    [W:1.986 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site