About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / cpu-freq / intel-pstate.txt




Custom Search

Based on kernel version 4.0. Page generated on 2015-04-14 21:20 EST.

1	Intel P-state driver
2	--------------------
3	
4	This driver provides an interface to control the P state selection for
5	SandyBridge+ Intel processors.  The driver can operate two different
6	modes based on the processor model legacy and Hardware P state (HWP)
7	mode.
8	
9	In legacy mode the driver implements a scaling driver with an internal
10	governor for Intel Core processors.  The driver follows the same model
11	as the Transmeta scaling driver (longrun.c) and implements the
12	setpolicy() instead of target().  Scaling drivers that implement
13	setpolicy() are assumed to implement internal governors by the cpufreq
14	core. All the logic for selecting the current P state is contained
15	within the driver; no external governor is used by the cpufreq core.
16	
17	In HWP mode P state selection is implemented in the processor
18	itself. The driver provides the interfaces between the cpufreq core and
19	the processor to control P state selection based on user preferences
20	and reporting frequency to the cpufreq core.  In this mode the
21	internal governor code is disabled.
22	
23	In addtion to the interfaces provided by the cpufreq core for
24	controlling frequency the driver provides sysfs files for
25	controlling P state selection. These files have been added to
26	/sys/devices/system/cpu/intel_pstate/
27	
28	      max_perf_pct: limits the maximum P state that will be requested by
29	      the driver stated as a percentage of the available performance. The
30	      available (P states) performance may be reduced by the no_turbo
31	      setting described below.
32	
33	      min_perf_pct: limits the minimum P state that will be  requested by
34	      the driver stated as a percentage of the max (non-turbo)
35	      performance level.
36	
37	      no_turbo: limits the driver to selecting P states below the turbo
38	      frequency range.
39	
40	      turbo_pct: displays the percentage of the total performance that
41	      is supported by hardware that is in the turbo range.  This number
42	      is independent of whether turbo has been disabled or not.
43	
44	      num_pstates: displays the number of pstates that are supported
45	      by hardware.  This number is independent of whether turbo has
46	      been disabled or not.
47	
48	For contemporary Intel processors, the frequency is controlled by the
49	processor itself and the P-states exposed to software are related to
50	performance levels.  The idea that frequency can be set to a single
51	frequency is fiction for Intel Core processors. Even if the scaling
52	driver selects a single P state the actual frequency the processor
53	will run at is selected by the processor itself.
54	
55	For legacy mode debugfs files have also been added to allow tuning of
56	the internal governor algorythm. These files are located at
57	/sys/kernel/debug/pstate_snb/ These files are NOT present in HWP mode.
58	
59	      deadband
60	      d_gain_pct
61	      i_gain_pct
62	      p_gain_pct
63	      sample_rate_ms
64	      setpoint
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.