123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- Intel P-state driver
- --------------------
- This driver provides an interface to control the P state selection for
- SandyBridge+ Intel processors. The driver can operate two different
- modes based on the processor model, legacy mode and Hardware P state (HWP)
- mode.
- In legacy mode, the Intel P-state implements two internal governors,
- performance and powersave, that differ from the general cpufreq governors of
- the same name (the general cpufreq governors implement target(), whereas the
- internal Intel P-state governors implement setpolicy()). The internal
- performance governor sets the max_perf_pct and min_perf_pct to 100; that is,
- the governor selects the highest available P state to maximize the performance
- of the core. The internal powersave governor selects the appropriate P state
- based on the current load on the CPU.
- In HWP mode P state selection is implemented in the processor
- itself. The driver provides the interfaces between the cpufreq core and
- the processor to control P state selection based on user preferences
- and reporting frequency to the cpufreq core. In this mode the
- internal Intel P-state governor code is disabled.
- In addition to the interfaces provided by the cpufreq core for
- controlling frequency the driver provides sysfs files for
- controlling P state selection. These files have been added to
- /sys/devices/system/cpu/intel_pstate/
- max_perf_pct: limits the maximum P state that will be requested by
- the driver stated as a percentage of the available performance. The
- available (P states) performance may be reduced by the no_turbo
- setting described below.
- min_perf_pct: limits the minimum P state that will be requested by
- the driver stated as a percentage of the max (non-turbo)
- performance level.
- no_turbo: limits the driver to selecting P states below the turbo
- frequency range.
- turbo_pct: displays the percentage of the total performance that
- is supported by hardware that is in the turbo range. This number
- is independent of whether turbo has been disabled or not.
- num_pstates: displays the number of pstates that are supported
- by hardware. This number is independent of whether turbo has
- been disabled or not.
- For contemporary Intel processors, the frequency is controlled by the
- processor itself and the P-states exposed to software are related to
- performance levels. The idea that frequency can be set to a single
- frequency is fiction for Intel Core processors. Even if the scaling
- driver selects a single P state the actual frequency the processor
- will run at is selected by the processor itself.
- For legacy mode debugfs files have also been added to allow tuning of
- the internal governor algorythm. These files are located at
- /sys/kernel/debug/pstate_snb/ These files are NOT present in HWP mode.
- deadband
- d_gain_pct
- i_gain_pct
- p_gain_pct
- sample_rate_ms
- setpoint
|