0

I am trying to reduce the idle power usage of a dual-Haswell-EP server made by Intel. If I enable the C-states in the UEFI-Bios, the minimum power consumption is about 80W. However, if I disable C-states in the Bios and boot the system, the minimum power usage never drops below 100W. (everything else same, same microcode, same frequencies, same Bios version)

This is surprising, because in both cases, after booting Debian, the intel_idle driver takes over the control as reported by /sys/devices/system/cpu/cpuidle/current_driver. I do not see any reason, why the power consumption should be different? powertop and turbostat report the same 99.9% C6 state for all cores.

The power draw is measured via sensors or the inbuilt BMC console.

For reasons irrelevant to this question, I would like to boot with the C-states disabled and then let the intel_idledriver take over. Is there any other implied difference from disabling the C-states in the Bios and a way how I could achive the same minimal power consumption?

Martin
  • 316
  • 2
  • 13

1 Answers1

1

When changing C-states via BIOS, some other parameters can be automatically set to lower performance/power. For example:

  • CPU performance bias can be changed
  • PCI-E Active State Power Management (ASPM) can be disabled;
  • other integrated component can be set at increased efficiency / lower performance.

I often saw BIOS configurig too aggressive power management settings; I generally enable any C states in the BIOS and set it to "Balanced/Optimized" or "Performance" profiles, but leaving any C/P states/transitions choice to the Linux kernel.

shodanshok
  • 44,038
  • 6
  • 98
  • 162
  • Thank you, the reason I tried booting without the c-states were problems with the initialization of PCI-E devices when a certain microcodes were used. So that is quite consistent with your suggestion. However it seems to be something else than ASPM, but thank you for pointing me in this direction. – Martin Sep 19 '19 at 17:59