> 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
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to
majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>