6

We just got a Dell server (PowerEdge R330) with a E3-1240 v5 CPU:

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 94
model name      : Intel(R) Xeon(R) CPU E3-1240 v5 @ 3.50GHz
stepping        : 3
microcode       : 0x9e
cpu MHz         : 3502.916
cache size      : 8192 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 22
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt
bogomips        : 7005.83
clflush size    : 64
cache_alignment : 64
address sizes   : 39 bits physical, 48 bits virtual
power management:

There are four such cores. The machine is running Debian 8 running the default Linux kernel.

One of our in-house tools needs to check/set the CPU governor usually found at: /sys/devices/system/cpu/cpu<N>/cpufreq/scaling_governor, where <N> is the core number. However these files do not exist.

Looking at cpufreq-info:

$ cpufreq-info 
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  no or unknown cpufreq driver is active on this CPU
  maximum transition latency: 4294.55 ms.
analyzing CPU 1:
  no or unknown cpufreq driver is active on this CPU
  maximum transition latency: 4294.55 ms.
analyzing CPU 2:
  no or unknown cpufreq driver is active on this CPU
  maximum transition latency: 4294.55 ms.
analyzing CPU 3:
  no or unknown cpufreq driver is active on this CPU
  maximum transition latency: 4294.55 ms.

Does Linux really not support frequency scaling on this machine, or do I need to install something? Do I need to fiddle some setting in the BIOS? cpufreq normally works out the box.

Thanks

2 Answers 2

7

Modern Intel processors use P-states for CPU frequency control. When Linux is using this driver, it will be visible thus:

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
intel_pstate

The Debian 3.16 kernel is new enough and actually has the intel_pstate driver, so it should be working. My first suspect would be a BIOS setting. Unfortunately Dell doesn't seem to have documented these settings very well, so I can tell you the most likely place is under System Profile Settings in the BIOS, but I don't have one of these servers on hand so I can't say exactly which option might fix the problem.

1
  • You are right. In the "System profile settings" the "CPU power management" option was set to "maximum performance", which seems to prevent the hardware exposing the frequency controls to the linux kernel. If you set it to "OS DBPM" then everything works as expected. Note that whether or not you use intel_pstate or acpi-cpufreq driver appears to be a red herring though. Nov 24, 2016 at 17:12
0

On a dual Xeon Supermicro Centos server to manage frequency scaling with cpupower I needed to:

modprobe acpi-cpufreq

& set the module to load on boot.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .