# [SOLVED]CPU Stuck at slowest speed as reported by cpufreq-in

## Tatsh

I have a laptop (HP G60t-243cl) which has an AMD Turion 64 RM-72 processor clocked at 2.1 GHz (dual-core). For some reason, shortly after boot, it goes into the slowest mode possible, 525 MHz. Of course, the machine is then completely sluggish and just horrible to use.

Attempting to set the frequency almost always fails with cpufreq-set.

Here is EVERYTHING I got that might be helpful:

/proc/cpuinfo

```

processor       : 0                         

vendor_id       : AuthenticAMD              

cpu family      : 17                        

model           : 3                         

model name      : AMD Turion Dual-Core RM-72

stepping        : 1                         

cpu MHz         : 525.000                   

cache size      : 512 KB                    

physical id     : 0                         

siblings        : 2                         

core id         : 0                         

cpu cores       : 2                         

apicid          : 0                         

initial apicid  : 0                         

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 constant_tsc rep_good nonstop_tsc extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch osvw skinit                                     

bogomips        : 4202.41                                                                                     

TLB size        : 1024 4K pages                                                                               

clflush size    : 64                                                                                          

cache_alignment : 64                                                                                          

address sizes   : 40 bits physical, 48 bits virtual                                                           

power management: ts ttp tm stc 100mhzsteps hwpstate                                                          

processor       : 1

vendor_id       : AuthenticAMD

cpu family      : 17

model           : 3

model name      : AMD Turion Dual-Core RM-72

stepping        : 1

cpu MHz         : 525.000

cache size      : 512 KB

physical id     : 0

siblings        : 2

core id         : 1

cpu cores       : 2

apicid          : 1

initial apicid  : 1

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 constant_tsc rep_good nonstop_tsc extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch osvw skinit

bogomips        : 4201.18

TLB size        : 1024 4K pages

clflush size    : 64

cache_alignment : 64

address sizes   : 40 bits physical, 48 bits virtual

power management: ts ttp tm stc 100mhzsteps hwpstate

```

On both cores, that 525 MHz never changes.

Kernel configuration (relevant lines):

```
CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y

CONFIG_ARCH_HAS_CPU_RELAX=y

CONFIG_HAVE_SETUP_PER_CPU_AREA=y

CONFIG_HAVE_DYNAMIC_PER_CPU_AREA=y

CONFIG_HAVE_CPUMASK_OF_CPU_MAP=y

# CONFIG_GENERIC_CPU is not set

CONFIG_X86_CPU=y

CONFIG_X86_MINIMUM_CPU_FAMILY=64

CONFIG_CPU_SUP_INTEL=y

CONFIG_CPU_SUP_AMD=y

CONFIG_CPU_SUP_CENTAUR=y

CONFIG_NR_CPUS=2

CONFIG_X86_CPUID=y

# CONFIG_X86_CPU_DEBUG is not set

CONFIG_SPLIT_PTLOCK_CPUS=4

CONFIG_HOTPLUG_CPU=y

CONFIG_ACPI_HOTPLUG_CPU=y

# CPU Frequency scaling

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_DEBUG=y

CONFIG_CPU_FREQ_STAT=y

CONFIG_CPU_FREQ_STAT_DETAILS=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set

# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set

# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set

CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_POWERSAVE=y

CONFIG_CPU_FREQ_GOV_USERSPACE=y

CONFIG_CPU_FREQ_GOV_ONDEMAND=y

CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

# CPUFreq processor drivers

CONFIG_X86_ACPI_CPUFREQ=y

CONFIG_CPU_IDLE=y

CONFIG_CPU_IDLE_GOV_LADDER=y

CONFIG_CPU_IDLE_GOV_MENU=y

# on-CPU RTC drivers

# CONFIG_RCU_CPU_STALL_DETECTOR is not set

# CONFIG_DEBUG_PER_CPU_MAPS is not set
```

If anyone else knows anything else I should look I can post that setting too.

Then /etc/conf.d/cpufrequtils

```

# /etc/conf.d/cpufrequtils: config file for /etc/init.d/cpufrequtils

# Options when starting cpufreq (given to the `cpufreq-set` program)

START_OPTS="--governor ondemand"

# Options when stopping cpufreq (given to the `cpufreq-set` program)

STOP_OPTS="--governor performance"

# Extra settings to write to sysfs cpufreq values.

#SYSFS_EXTRA="ondemand/ignore_nice_load=1 ondemand/up_threshold=70"

```

Example cpufreq-info (during a VERY slow emerge):

```

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: 525 MHz - 2.10 GHz

  available frequency steps: 2.10 GHz, 1.05 GHz, 525 MHz

  available cpufreq governors: conservative, userspace, powersave, ondemand, performance

  current policy: frequency should be within 525 MHz and 525 MHz.

                  The governor "performance" may decide which speed to use

                  within this range.

  current CPU frequency is 525 MHz.

  cpufreq stats: 2.10 GHz:14.94%, 1.05 GHz:0.02%, 525 MHz:85.04%  (563)

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: 525 MHz - 2.10 GHz

  available frequency steps: 2.10 GHz, 1.05 GHz, 525 MHz

  available cpufreq governors: conservative, userspace, powersave, ondemand, performance

  current policy: frequency should be within 525 MHz and 525 MHz.

                  The governor "performance" may decide which speed to use

                  within this range.

  current CPU frequency is 525 MHz.

  cpufreq stats: 2.10 GHz:14.41%, 1.05 GHz:0.03%, 525 MHz:85.56%  (717)

```

SOME random times, a command like cpufreq-set -f 2100MHz works, then it goes back to 525 MHz seconds later.

Sometimes see changes if I watch /proc/cpuinfo. Does Portage send a call to slow down my CPU for some reason? There is a lot of stuff running on my system. I did get rid of PowerDevil. I just don't know what is making this hardware call to put my CPU to the slowest speed.

Any help would be appreciated.Last edited by Tatsh on Thu Feb 04, 2010 10:21 pm; edited 1 time in total

----------

## USTruck

Hello

In your kernel change  default governer to userspace

 CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE 

otherwise cpufrequtils can't be able to change cpu speed.

----------

## Tatsh

Thanks for the tip. It has not worked completely but has improved things.

Now what happens is CPU 0 (core 1) can go from 525-840 MHz (random) and CPU 1 (core 2) can go from 525MHz-2.10GHz (desired result for BOTH).

cpufreq-info output:

```

cpufrequtils 007: 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: 525 MHz - 2.10 GHz

  available frequency steps: 2.10 GHz, 1.05 GHz, 525 MHz

  available cpufreq governors: conservative, ondemand, powersave, userspace, performance

  current policy: frequency should be within 525 MHz and 840 MHz.

                  The governor "userspace" may decide which speed to use

                  within this range.

  current CPU frequency is 525 MHz.

  cpufreq stats: 2.10 GHz:1.14%, 1.05 GHz:6.33%, 525 MHz:92.53%  (2)

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: 525 MHz - 2.10 GHz

  available frequency steps: 2.10 GHz, 1.05 GHz, 525 MHz

  available cpufreq governors: conservative, ondemand, powersave, userspace, performance

  current policy: frequency should be within 525 MHz and 2.10 GHz.

                  The governor "userspace" may decide which speed to use

                  within this range.

  current CPU frequency is 525 MHz.

  cpufreq stats: 2.10 GHz:62.56%, 1.05 GHz:7.11%, 525 MHz:30.33%  (402)

```

Just to prove I've set the right setting in kernel config:

zcat /proc/config.gz | grep CPU output:

```

CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y

CONFIG_ARCH_HAS_CPU_RELAX=y

CONFIG_HAVE_SETUP_PER_CPU_AREA=y

CONFIG_HAVE_DYNAMIC_PER_CPU_AREA=y

CONFIG_HAVE_CPUMASK_OF_CPU_MAP=y

# CONFIG_GENERIC_CPU is not set

CONFIG_X86_CPU=y

CONFIG_X86_MINIMUM_CPU_FAMILY=64

CONFIG_CPU_SUP_INTEL=y

CONFIG_CPU_SUP_AMD=y

CONFIG_CPU_SUP_CENTAUR=y

CONFIG_NR_CPUS=2

CONFIG_X86_CPUID=y

# CONFIG_X86_CPU_DEBUG is not set

CONFIG_SPLIT_PTLOCK_CPUS=4

CONFIG_HOTPLUG_CPU=y

CONFIG_ACPI_HOTPLUG_CPU=y

# CPU Frequency scaling

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_DEBUG=y

CONFIG_CPU_FREQ_STAT=y

CONFIG_CPU_FREQ_STAT_DETAILS=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set

# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set

CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set

# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_POWERSAVE=y

CONFIG_CPU_FREQ_GOV_USERSPACE=y

CONFIG_CPU_FREQ_GOV_ONDEMAND=y

CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

# CPUFreq processor drivers

CONFIG_X86_ACPI_CPUFREQ=y

CONFIG_CPU_IDLE=y

CONFIG_CPU_IDLE_GOV_LADDER=y

CONFIG_CPU_IDLE_GOV_MENU=y

# on-CPU RTC drivers

# CONFIG_RCU_CPU_STALL_DETECTOR is not set

# CONFIG_DEBUG_PER_CPU_MAPS is not set

```

cpufreq-set -g performance doesn't seem to change this and also cpufreq-set -f 2100MHz doesn't seem to change it either. Also, do I need to be part of a certain group to make changes not as root?

----------

## USTruck

How .....

What about kernel processor config ? CONFIG_SCHED_MC=y

Scheduler for  multicore, do you specify number of processor (2) .......

Except that, I don't know why your k8 have no same speed.

About group's, I don't now. But use 'sudo' permissions to that

----------

## DaggyStyle

check cpu temps, your hsf might be fried. happened to me

----------

## Tatsh

 *DaggyStyle wrote:*   

> check cpu temps, your hsf might be fried. happened to me

 

I solved this I guess. I checked CPU-z in Windows, I checked cpufreq-info A LOT.

So a bad design might be the problem. The feet give less than a cm off the table for the laptop to breathe through seemingly it's most important vent: the one with a significant temperature sensor responsible for setting speeds.

I lifted the laptop off the table by about an inch by putting the battery in at an angle. With this little bit of extra breathing room, the CPU is not crippling itself anymore and performance mode works great.

cpufreq-info:

```

cpufrequtils 007: 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: 525 MHz - 2.10 GHz

  available frequency steps: 2.10 GHz, 1.05 GHz, 525 MHz

  available cpufreq governors: conservative, userspace, powersave, ondemand, performance

  current policy: frequency should be within 525 MHz and 2.10 GHz.

                  The governor "performance" may decide which speed to use

                  within this range.

  current CPU frequency is 2.10 GHz.

  cpufreq stats: 2.10 GHz:24.76%, 1.05 GHz:1.62%, 525 MHz:73.62%  (489)

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: 525 MHz - 2.10 GHz

  available frequency steps: 2.10 GHz, 1.05 GHz, 525 MHz

  available cpufreq governors: conservative, userspace, powersave, ondemand, performance

  current policy: frequency should be within 525 MHz and 2.10 GHz.

                  The governor "performance" may decide which speed to use

                  within this range.

  current CPU frequency is 2.10 GHz.

  cpufreq stats: 2.10 GHz:24.54%, 1.05 GHz:2.20%, 525 MHz:73.26%  (637)

```

I tried a billion things. But ultimately the solution is mechanical. Not the best either. The 12-cell battery also gives breathing room as it lifts the laptop up a bit (and I plan on buying it) but I'm not sure it gives as much room as I'm giving right now (about an inch).

----------

## energyman76b

don't use governor userspace or conservative. You only need performance, ondemand and powersave. cpufreq can change frequs just fine with ondemand.

Second - check for temps.

----------

