@@ -54,10 +54,13 @@ registered (see `below <status_attr_>`_).
54
54
Operation Modes
55
55
===============
56
56
57
- ``intel_pstate `` can operate in three different modes: in the active mode with
58
- or without hardware-managed P-states support and in the passive mode. Which of
59
- them will be in effect depends on what kernel command line options are used and
60
- on the capabilities of the processor.
57
+ ``intel_pstate `` can operate in two different modes, active or passive. In the
58
+ active mode, it uses its own internal performance scaling governor algorithm or
59
+ allows the hardware to do preformance scaling by itself, while in the passive
60
+ mode it responds to requests made by a generic ``CPUFreq `` governor implementing
61
+ a certain performance scaling algorithm. Which of them will be in effect
62
+ depends on what kernel command line options are used and on the capabilities of
63
+ the processor.
61
64
62
65
Active Mode
63
66
-----------
@@ -194,10 +197,11 @@ This is the default operation mode of ``intel_pstate`` for processors without
194
197
hardware-managed P-states (HWP) support. It is always used if the
195
198
``intel_pstate=passive `` argument is passed to the kernel in the command line
196
199
regardless of whether or not the given processor supports HWP. [Note that the
197
- ``intel_pstate=no_hwp `` setting implies ``intel_pstate=passive `` if it is used
198
- without ``intel_pstate=active ``.] Like in the active mode without HWP support,
199
- in this mode ``intel_pstate `` may refuse to work with processors that are not
200
- recognized by it.
200
+ ``intel_pstate=no_hwp `` setting causes the driver to start in the passive mode
201
+ if it is not combined with ``intel_pstate=active ``.] Like in the active mode
202
+ without HWP support, in this mode ``intel_pstate `` may refuse to work with
203
+ processors that are not recognized by it if HWP is prevented from being enabled
204
+ through the kernel command line.
201
205
202
206
If the driver works in this mode, the ``scaling_driver `` policy attribute in
203
207
``sysfs `` for all ``CPUFreq `` policies contains the string "intel_cpufreq".
@@ -318,10 +322,9 @@ manuals need to be consulted to get to it too.
318
322
319
323
For this reason, there is a list of supported processors in ``intel_pstate `` and
320
324
the driver initialization will fail if the detected processor is not in that
321
- list, unless it supports the `HWP feature <Active Mode _>`_. [The interface to
322
- obtain all of the information listed above is the same for all of the processors
323
- supporting the HWP feature, which is why they all are supported by
324
- ``intel_pstate ``.]
325
+ list, unless it supports the HWP feature. [The interface to obtain all of the
326
+ information listed above is the same for all of the processors supporting the
327
+ HWP feature, which is why ``intel_pstate `` works with all of them.]
325
328
326
329
327
330
User Space Interface in ``sysfs ``
@@ -425,22 +428,16 @@ argument is passed to the kernel in the command line.
425
428
as well as the per-policy ones) are then reset to their default
426
429
values, possibly depending on the target operation mode.]
427
430
428
- That only is supported in some configurations, though (for example, if
429
- the `HWP feature is enabled in the processor <Active Mode With HWP _>`_,
430
- the operation mode of the driver cannot be changed), and if it is not
431
- supported in the current configuration, writes to this attribute will
432
- fail with an appropriate error.
433
-
434
431
``energy_efficiency ``
435
- This attribute is only present on platforms, which have CPUs matching
436
- Kaby Lake or Coffee Lake desktop CPU model. By default
437
- energy efficiency optimizations are disabled on these CPU models in HWP
438
- mode by this driver. Enabling energy efficiency may limit maximum
439
- operating frequency in both HWP and non HWP mode. In non HWP mode,
440
- optimizations are done only in the turbo frequency range. In HWP mode ,
441
- optimizations are done in the entire frequency range. Setting this
442
- attribute to "1" enables energy efficiency optimizations and setting
443
- to "0" disables energy efficiency optimizations .
432
+ This attribute is only present on platforms with CPUs matching the Kaby
433
+ Lake or Coffee Lake desktop CPU model. By default, energy-efficiency
434
+ optimizations are disabled on these CPU models if HWP is enabled.
435
+ Enabling energy- efficiency optimizations may limit maximum operating
436
+ frequency with or without the HWP feature. With HWP enabled, the
437
+ optimizations are done only in the turbo frequency range. Without it ,
438
+ they are done in the entire available frequency range. Setting this
439
+ attribute to "1" enables the energy- efficiency optimizations and setting
440
+ to "0" disables them .
444
441
445
442
Interpretation of Policy Attributes
446
443
-----------------------------------
@@ -484,8 +481,8 @@ Next, the following policy attributes have special meaning if
484
481
policy for the time interval between the last two invocations of the
485
482
driver's utilization update callback by the CPU scheduler for that CPU.
486
483
487
- One more policy attribute is present if the ` HWP feature is enabled in the
488
- processor <Active Mode With HWP_> `_ :
484
+ One more policy attribute is present if the HWP feature is enabled in the
485
+ processor:
489
486
490
487
``base_frequency ``
491
488
Shows the base frequency of the CPU. Any frequency above this will be
@@ -526,11 +523,11 @@ on the following rules, regardless of the current operation mode of the driver:
526
523
527
524
3. The global and per-policy limits can be set independently.
528
525
529
- If the `HWP feature is enabled in the processor <Active Mode With HWP _>`_, the
530
- resulting effective values are written into its registers whenever the limits
531
- change in order to request its internal P-state selection logic to always set
532
- P-states within these limits. Otherwise, the limits are taken into account by
533
- scaling governors (in the `passive mode <Passive Mode _>`_) and by the driver
526
+ In the `active mode with the HWP feature enabled <Active Mode With HWP _>`_, the
527
+ resulting effective values are written into hardware registers whenever the
528
+ limits change in order to request its internal P-state selection logic to always
529
+ set P-states within these limits. Otherwise, the limits are taken into account
530
+ by scaling governors (in the `passive mode <Passive Mode _>`_) and by the driver
534
531
every time before setting a new P-state for a CPU.
535
532
536
533
Additionally, if the ``intel_pstate=per_cpu_perf_limits `` command line argument
@@ -541,12 +538,11 @@ at all and the only way to set the limits is by using the policy attributes.
541
538
Energy vs Performance Hints
542
539
---------------------------
543
540
544
- If ``intel_pstate `` works in the `active mode with the HWP feature enabled
545
- <Active Mode With HWP_> `_ in the processor, additional attributes are present
546
- in every ``CPUFreq `` policy directory in ``sysfs ``. They are intended to allow
547
- user space to help ``intel_pstate `` to adjust the processor's internal P-state
548
- selection logic by focusing it on performance or on energy-efficiency, or
549
- somewhere between the two extremes:
541
+ If the hardware-managed P-states (HWP) is enabled in the processor, additional
542
+ attributes, intended to allow user space to help ``intel_pstate `` to adjust the
543
+ processor's internal P-state selection logic by focusing it on performance or on
544
+ energy-efficiency, or somewhere between the two extremes, are present in every
545
+ ``CPUFreq `` policy directory in ``sysfs ``. They are :
550
546
551
547
``energy_performance_preference ``
552
548
Current value of the energy vs performance hint for the given policy
@@ -650,12 +646,14 @@ of them have to be prepended with the ``intel_pstate=`` prefix.
650
646
Do not register ``intel_pstate `` as the scaling driver even if the
651
647
processor is supported by it.
652
648
649
+ ``active ``
650
+ Register ``intel_pstate `` in the `active mode <Active Mode _>`_ to start
651
+ with.
652
+
653
653
``passive ``
654
654
Register ``intel_pstate `` in the `passive mode <Passive Mode _>`_ to
655
655
start with.
656
656
657
- This option implies the ``no_hwp `` one described below.
658
-
659
657
``force ``
660
658
Register ``intel_pstate `` as the scaling driver instead of
661
659
``acpi-cpufreq `` even if the latter is preferred on the given system.
@@ -670,13 +668,12 @@ of them have to be prepended with the ``intel_pstate=`` prefix.
670
668
driver is used instead of ``acpi-cpufreq ``.
671
669
672
670
``no_hwp ``
673
- Do not enable the ` hardware-managed P-states (HWP) feature
674
- <Active Mode With HWP_> `_ even if it is supported by the processor.
671
+ Do not enable the hardware-managed P-states (HWP) feature even if it is
672
+ supported by the processor.
675
673
676
674
``hwp_only ``
677
675
Register ``intel_pstate `` as the scaling driver only if the
678
- `hardware-managed P-states (HWP) feature <Active Mode With HWP _>`_ is
679
- supported by the processor.
676
+ hardware-managed P-states (HWP) feature is supported by the processor.
680
677
681
678
``support_acpi_ppc ``
682
679
Take ACPI ``_PPC `` performance limits into account.
0 commit comments