Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

My Core 2 Duo T7200 (nominal frequency 2 GHz) is constantly running at 1000 MHz. Here's an exerpt from /proc/cpuinfo:

vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz
stepping        : 6
cpu MHz         : 1000.000
cache size      : 4096 KB

It says this for both CPU cores.

I am running Kubuntu 11.04, fully updated. I have looked in the power management settings and, although CPU speed isn't explicitly mentioned, I am running in "performance" mode. I thought this might be a variable-speed setup, but the clock rate doesn't appear to go up during a stress test.

How do I make the CPU run at the full 2 GHz for each core?

share|improve this question
add comment

2 Answers

up vote 3 down vote accepted

Try looking at the output from the 'cpufreq-info' command (You may have to install it, search for cpufreq)

For instance, mine says: (AMD Athlon, dual-core 2GHz laptop)

prompt> cpufreq-info

cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
  driver: powernow-k8
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 1000 ns.
  hardware limits: 1000 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1000 MHz
  available cpufreq governors: powersave, userspace, conservative, ondemand, performance
  current policy: frequency should be within 1000 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 1000 MHz.
  cpufreq stats: 2.00 GHz:4.75%, 1000 MHz:95.25%  (403255)
analyzing CPU 1:
  driver: powernow-k8
  CPUs which run at the same hardware frequency: 1
  CPUs which need to have their frequency coordinated by software: 1
  maximum transition latency: 1000 ns.
  hardware limits: 1000 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1000 MHz
  available cpufreq governors: powersave, userspace, conservative, ondemand, performance
  current policy: frequency should be within 1000 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 2.00 GHz.
  cpufreq stats: 2.00 GHz:3.51%, 1000 MHz:96.49%  (371758)

(You can see here bu the 'current CPU frequency' lines that I seem to have caught them at varying speeds.. cpu0=1GHz, cpu1=2GHz)

If you find the lines with "current policy:", you can see the limits of what your processor is allowed to do. Mine is set to go no lower than 1GHz, nor higher than 2Ghz. It also shows which governor is being used.. mine being "ondemand"... which says that CPU frequency is determined by load... as load increases, so does the frequency.

From the command:

prompt> cpufreq-info -g
powersave userspace conservative ondemand performance

We can see that there are other governors available:

  • powersave - generally throttled all the way down, to conserve power (duh!)
  • userspace - some user defined function determines speed (never seen this in practice)
  • conservative - Allows full range, but REALLY prefers low freqs, resists shifting if it can
  • ondemand - based on 'need', ie, system load.
  • performance - Locked to the max speed, useful if you need to heat your apartment but don't want to run boinc or compile a kernel.

The other command is 'cpufreq-set', which, as you might surmise, allows you to set and tweak the cpu frequency limits.

I have an older laptop that frequently overheats (I need to open it up and clean it's cooling fan heat-sink... it's a pain) ... so I've restricted it's max frequency to keep the temperature down. (It's being used as a server.. no need for blazing speed) (it's like 'anti-topgun' .. I feel the need.. for ... no speed!!)

prompt> sudo cpufreq-set -r -u {max}

The '-r' says to set ALL the related cpu's, and the '-u' (upper?) says that the maximum speed you're allowed is {max}. See the last line output from 'cpufreq-info' to see what freq values are allowed. (In my case, above, only 2GHz and 1GHz)

Hope this helps.

share|improve this answer
    
Thanks. I had to install cpufrequtils first, and the stats say 2Ghz has been reached sometimes. Does this mean that until now there were no governors, so the frequency was stuck? –  spraff Jul 4 '12 at 11:55
    
not necessarily. What governor is active? (see cpufreq-info). You just may never see the 2GHz periods since it's busy (pun intended) –  lornix Jul 4 '12 at 14:27
add comment

According to some forums, this is a normal behavior on the T7200. Through the energy saving technologies of the newer Intel CPUs, this one underclocks itself when it is in idle mode. You can check this by running some software that produces high CPU load and look at the frequency again.
The steps on which the CPU clocks itself up or down may vary from the energy profile you set and on whether or not you are connected to a PSU or running on battery.

share|improve this answer
    
Note the OP said that, quote, "the clock rate doesn't appear to go up during a stress test". –  Indrek Jul 2 '12 at 10:02
    
I wonder how OP checks this, it might be that the /proc/cpuinfo does not change, but the clock does. Also like I said, the behavior changes if the laptop is running on battery power. It might be that the CPU clock does not go up until the CPU load goes over 75% or so. –  Michael K Jul 2 '12 at 10:10
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.