Edd Barrett asked:
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:
<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@example.com, 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.
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 to hand, so I can’t say exactly which option might fix the problem.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.