Intel® Processors, Tools, and Utilities
14695 Discussions

How to enable additional C-States on Intel 10th Gen W-1290P


I am running a Intel 10th Gen Xeon W-1290P Comet Lake CPU]. The CPU is really similar to the normal desktop i9-10900k.

The machine containing the CPU runs a Proxmox Hypervisor with Linux kernel 5.11.


root@server:~# uname -a
Linux server 5.11.21-1-pve #1 SMP PVE 5.11.21-1~bpo10 (Wed, 02 Jun 2021 11:34:45 +0200) x86_64 GNU/Linux



Energy usage is important to me, so I tried to verify that my system uses C-States to save as much power as possible. While investigating, I found that my system does not use any C-States deeper that C3.

I wanted to find out why my system does not use deeper C-Sates, such as C6, C7 and so on.

Querying sysfs for the max_cstate shows a value of 9.


root@server:~# cat /sys/module/intel_idle/parameters/max_cstate



Using the cpupower utility, I got some additional information on the available C-States.


root@server:~# cpupower idle-info
CPUidle driver: intel_idle
CPUidle governor: menu
analysiere CPU 0:

Number of idle states: 4
Available idle states: POLL C1_ACPI C2_ACPI C3_ACPI
Latency: 0
Usage: 1012041
Duration: 3293515
Flags/Description: ACPI FFH MWAIT 0x0
Latency: 1
Usage: 1340146
Duration: 215843217
Flags/Description: ACPI FFH MWAIT 0x33
Latency: 151
Usage: 949495
Duration: 949112994
Flags/Description: ACPI FFH MWAIT 0x60
Latency: 1034
Usage: 315636
Duration: 1552349782


Running cpupower idle-info clearly shows, that intel_idle is used as the idle driver. Strangely, it also shows that my system only supports 4 idle states, and they are named C1_ACPI, C2_ACPI, ... instead of C1, C2 and so on.


I also verified that my system uses intel_pstate as the scaling driver.


root@server:~# cpupower frequency-info
analysiere CPU 0:
driver: intel_pstate
Folgende CPUs laufen mit der gleichen Hardware-Taktfrequenz: 0
Die Taktfrequenz folgender CPUs werden per Software koordiniert: 0
Maximale Dauer eines Taktfrequenzwechsels: Cannot determine or is not supported.
Hardwarebedingte Grenzen der Taktfrequenz: 800 MHz - 5.30 GHz
mögliche Regler: performance powersave
momentane Taktik: die Frequenz soll innerhalb 800 MHz und 5.30 GHz.
liegen. Der Regler "powersave" kann frei entscheiden,
welche Taktfrequenz innerhalb dieser Grenze verwendet wird.
current CPU frequency: Unable to call hardware
current CPU frequency: 4.90 GHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: yes



Why is my system not supporting deeper C-States, like C6? Is there anything I can do to change this? Why are the C-States named C3_ACPI instead of C3 on my system?

Labels (1)
0 Kudos
0 Replies