4

I rent a server which should have "2 Cores x 2,2 GHz". When in run the command cat /proc/cpuinfo I get the following result:

processor   : 0
vendor_id   : AuthenticAMD
cpu family  : 15
model       : 67
model name  : Dual-Core AMD Opteron(tm) Processor 1218 HE
stepping    : 3
cpu MHz     : 1000.000
cache size  : 1024 KB
physical id : 0
siblings    : 2
core id     : 0
cpu cores   : 2
apicid      : 0
initial apicid  : 0
fdiv_bug    : no
hlt_bug     : no
f00f_bug    : no
coma_bug    : no
fpu     : yes
fpu_exception   : yes
cpuid level : 1
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips    : 2009.48
clflush size    : 64
power management: ts fid vid ttp tm stc

processor   : 1
vendor_id   : AuthenticAMD
cpu family  : 15
model       : 67
model name  : Dual-Core AMD Opteron(tm) Processor 1218 HE
stepping    : 3
cpu MHz     : 1000.000
cache size  : 1024 KB
physical id : 0
siblings    : 2
core id     : 1
cpu cores   : 2
apicid      : 1
initial apicid  : 1
fdiv_bug    : no
hlt_bug     : no
f00f_bug    : no
coma_bug    : no
fpu     : yes
fpu_exception   : yes
cpuid level : 1
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips    : 2009.48
clflush size    : 64
power management: ts fid vid ttp tm stc

There it says 2* 1000 MHz. I called my provider and they said that the 2.2 GHz are not shown, but they are installed. How can that be?

2 Answers 2

4

As bandito wrote, the information in /proc/cpuinfo is real-time and will be updated to show the current CPU frequency. Most modern systems scale the CPU frequency according to the current need. On Linux systems, this is controlled by the "cpu governor". If that is set to "ondemand", then the CPU frequency will be scaled up/down in response to the current load of the server.

You can check which governor is set with this command:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

Available options are:

  • Performance
  • Powersave
  • Userspace
  • Ondemand
  • Conservative

You can find more information about each of them here.

To check the actual maximum frequency available to your CPU, you can use the cpufreq-info program if installed:

cpufreq-info | grep "available frequency steps"

On my system this shows:

available frequency steps: 2.67 GHz, 2.67 GHz, 2.53 GHz, 2.40 GHz, 2.27 GHz, 2.13 GHz, 2.00 GHz, 1.87 GHz, 1.73 GHz, 1.60 GHz, 1.47 GHz, 1.33 GHz, 1.20 GHz

You can also see the frequency limit set by the hardware like this:

cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit 

Alternatively, you can start a cpu-intensive process and check /proc/cpuinfo again, if all is well, the frequency should now be different.

2
  • Do you have an example for an easy to start cpu-intensive process? (e.g. a mathematical operation in the terminal that runs for while)
    – Sven
    Aug 16, 2013 at 7:15
  • @Sven there is a program called stress that is designed to do exactly that. It should be in the repositories of your distribution.
    – terdon
    Aug 20, 2013 at 9:32
1

The system may be set up to scale the CPU speed depending on load. If the CPU is getting used heavily, it should increase to the max speed.

You must log in to answer this question.

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