Skip to contentSkip to conversation

CPU throttled down to 800 after 15-30mins

DISCUSSION J Webster 4 participants 12 messages Feb 5, 2011 – Feb 9, 2011

lore
Share & tools
lore

J Webster

author
#0 lore raw

My laptop is an Inpsiron 9300, which should be able to go up to 1.73GHz.
I am having an issue whereby when I first turn the computer on, ondemand is selected and the speed moves between 800 and 1.73 successfully. For no apparent reason, after 15mins it is throttled back to 800 and I cannot change it back.
I tired manually editing the scaling_max_freq file to 1733000 but when I go back to view it it has changed to 800000 again! I thought it might be this issue:
##
# Special Rules
##
# CPU Too hot!
[Rule]
name=CPU Too Hot
acpi_temperature=55-100
cpu_interval=50-100
profile=Performance Low
[/Rule]

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Any ideas what I can do solve this issue?
I have tried everything on this post here and no luck: http://ubuntuforums.org/showthread.php?p=10430797#post10430797

#1 lore raw

Note that this is a kernel development related list, if your problem is specific to cpufreqd (note the "d" for deamon, a userspace application) please write/reply to me only or to cpufreqd related mailing lists.

Quoted 20 lines · J Webster

My laptop is an Inpsiron 9300, which should be able to go up to 1.73GHz. I am having an issue whereby when I first turn the computer on, ondemand is selected and the speed moves between 800 and 1.73 successfully.
For no apparent reason, after 15mins it is throttled back to 800 and I cannot change it back.
I tired manually editing the scaling_max_freq file to 1733000 but when I go back to view it it has changed to 800000 again!
I thought it might be this issue:
##
# Special Rules
##
# CPU Too hot!
[Rule]
name=CPU Too Hot
acpi_temperature=55-100
cpu_interval=50-100
profile=Performance Low
[/Rule]

Quoted 2 lines

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Try to increase cpufreqd verbosity, it will tell you which and why a specific rule was selected. From there you can work on modifying your rules to better match your usage.

Regards,

Signature · 2 lines
mattia
:wq!
#2 lore raw
Quoted 25 lines · On Sunday 06 February 2011 05:41:23 Mattia Dongili wrote:

Note that this is a kernel development related list, if your problem is specific to cpufreqd (note the "d" for deamon, a userspace application) please write/reply to me only or to cpufreqd related mailing lists.

Quoted 20 lines · J Webster

My laptop is an Inpsiron 9300, which should be able to go up to 1.73GHz. I am having an issue whereby when I first turn the computer on, ondemand is selected and the speed moves between 800 and 1.73 successfully.
For no apparent reason, after 15mins it is throttled back to 800 and I cannot change it back.
I tired manually editing the scaling_max_freq file to 1733000 but when I go back to view it it has changed to 800000 again!
I thought it might be this issue:
##
# Special Rules
##
# CPU Too hot!
[Rule]
name=CPU Too Hot
acpi_temperature=55-100
cpu_interval=50-100
profile=Performance Low
[/Rule]

Quoted 6 lines
Quoted 2 lines

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Try to increase cpufreqd verbosity, it will tell you which and why a specific rule was selected. From there you can work on modifying your rules to better match your usage.

Also check whether your BIOS is the reason, if you get 800000 here:
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
you should check your BIOS settings.

Thomas

#3 lore raw
Quoted 1 line · Thomas Renninger

On Sunday 06 February 2011 05:41:23 Mattia Dongili wrote:

...

Quoted 9 lines
Quoted 6 lines
Quoted 2 lines

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Try to increase cpufreqd verbosity, it will tell you which and why a specific rule was selected. From there you can work on modifying your rules to better match your usage.

Also check whether your BIOS is the reason, if you get 800000 here:
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
you should check your BIOS settings.

Good catch, after a bit of private chatting it turns out that the BIOS may be the reason why frequency is locked at 800MHz

Signature · 2 lines
mattia
:wq!
author
#4 lore raw
In reply to Thomas Renninger

The BIOS is BIOS revision A05, which has not been updated since 2005.
The BIOS only has settings to turn speedstep on or off. If it is turned off then the computer will not run higher than 800MHz so that won't solve the issue. I have attached the results below when it throttles down to 800 and the cpu limit says: 80000 but it starts off at 1733000.

The only thing it could be is a temperature sensor that has gone faulty. NHC in windows seems to be able to bypass this issue and ramp it up to 1.73 but there doesn't seem to be an equivalent in Ubuntu that I know of.

when running at 1.73Ghz correctly:

j@j-Inspiron-9300:~$ date
Mon Feb  7 22:44:49 CET 2011
j@j-Inspiron-9300:~$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit
1733000
j@j-Inspiron-9300:~$ cpufreq-info
cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 10.0 us.
  hardware limits: 800 MHz - 1.73 GHz
  available frequency steps: 1.73 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, 
powersave, performance
  current policy: frequency should be within 1.73 GHz and 1.73 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.73 GHz.
  cpufreq stats: 1.73 GHz:99.46%, 1.33 GHz:0.00%, 1.07 GHz:0.00%, 800 
MHz:0.54%  (16)

when limited to 800MHz:

j@j-Inspiron-9300:~$ date
Mon Feb  7 23:54:45 CET 2011
j@j-Inspiron-9300:~$ cpufreq-info
cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 10.0 us.
  hardware limits: 800 MHz - 1.73 GHz
  available frequency steps: 1.73 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, 
powersave, performance
  current policy: frequency should be within 800 MHz and 800 MHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz.
  cpufreq stats: 1.73 GHz:69.73%, 1.33 GHz:0.00%, 1.07 GHz:0.00%, 800 
MHz:30.27%  (17)
j@j-Inspiron-9300:~$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit
800000
Quoted 36 lines · Thomas Renninger
Quoted 25 lines · On Sunday 06 February 2011 05:41:23 Mattia Dongili wrote:

Note that this is a kernel development related list, if your problem is specific to cpufreqd (note the "d" for deamon, a userspace application) please write/reply to me only or to cpufreqd related mailing lists.

Quoted 20 lines · J Webster

My laptop is an Inpsiron 9300, which should be able to go up to 1.73GHz. I am having an issue whereby when I first turn the computer on, ondemand is selected and the speed moves between 800 and 1.73 successfully.
For no apparent reason, after 15mins it is throttled back to 800 and I cannot change it back.
I tired manually editing the scaling_max_freq file to 1733000 but when I go back to view it it has changed to 800000 again!
I thought it might be this issue:
##
# Special Rules
##
# CPU Too hot!
[Rule]
name=CPU Too Hot
acpi_temperature=55-100
cpu_interval=50-100
profile=Performance Low
[/Rule]

Quoted 5 lines
Quoted 2 lines

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Try to increase cpufreqd verbosity, it will tell you which and why a specific rule was selected. From there you can work on modifying your rules to better match your usage.

Also check whether your BIOS is the reason, if you get 800000 here:
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
you should check your BIOS settings.

Thomas

#5 lore raw

I had a similar problem back in 2007: https://bugzilla.kernel.org/show_bug.cgi?id=9488 In my case a broken BIOS was the reason. As I could not get a newer (fixed) BIOS, I found two workarounds: a) using the processor.ignore_ppc flag, and b) (the "final" solution): using a kernel parameter acpi_osi="!Windows 2006"

Am 2011-02-07 23:56, schrieb J Webster:

Quoted 109 lines

The BIOS is BIOS revision A05, which has not been updated since 2005. The BIOS only has settings to turn speedstep on or off. If it is turned off then the computer will not run higher than 800MHz so that won't solve the issue.
I have attached the results below when it throttles down to 800 and the cpu limit says: 80000 but it starts off at 1733000.

The only thing it could be is a temperature sensor that has gone faulty. NHC in windows seems to be able to bypass this issue and ramp it up to 1.73 but there doesn't seem to be an equivalent in Ubuntu that I know of.

when running at 1.73Ghz correctly:

j@j-Inspiron-9300:~$ date
Mon Feb 7 22:44:49 CET 2011
j@j-Inspiron-9300:~$ sudo cat
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
1733000
j@j-Inspiron-9300:~$ cpufreq-info
cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.73 GHz
available frequency steps: 1.73 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace,
powersave, performance
current policy: frequency should be within 1.73 GHz and 1.73 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 1.73 GHz.
cpufreq stats: 1.73 GHz:99.46%, 1.33 GHz:0.00%, 1.07 GHz:0.00%, 800
MHz:0.54% (16)

when limited to 800MHz:

j@j-Inspiron-9300:~$ date
Mon Feb 7 23:54:45 CET 2011
j@j-Inspiron-9300:~$ cpufreq-info
cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.73 GHz
available frequency steps: 1.73 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace,
powersave, performance
current policy: frequency should be within 800 MHz and 800 MHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
cpufreq stats: 1.73 GHz:69.73%, 1.33 GHz:0.00%, 1.07 GHz:0.00%, 800
MHz:30.27% (17)
j@j-Inspiron-9300:~$ sudo cat
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
800000
Quoted 29 lines · Thomas Renninger
Quoted 28 lines · On Sunday 06 February 2011 05:41:23 Mattia Dongili wrote:

Note that this is a kernel development related list, if your problem is specific to cpufreqd (note the "d" for deamon, a userspace application) please write/reply to me only or to cpufreqd related mailing lists.

Quoted 23 lines · J Webster

My laptop is an Inpsiron 9300, which should be able to go up to 1.73GHz.
I am having an issue whereby when I first turn the computer on, ondemand is selected and the speed moves between 800 and 1.73 successfully.
For no apparent reason, after 15mins it is throttled back to 800 and I cannot change it back.
I tired manually editing the scaling_max_freq file to 1733000 but when I go back to view it it has changed to 800000 again! I thought it might be this issue:
##
# Special Rules
##
# CPU Too hot!
[Rule]
name=CPU Too Hot
acpi_temperature=55-100
cpu_interval=50-100
profile=Performance Low
[/Rule]

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Quoted 8 lines
Quoted 3 lines

Try to increase cpufreqd verbosity, it will tell you which and why a specific rule was selected. From there you can work on modifying your rules to better match your usage.

Also check whether your BIOS is the reason, if you get 800000 here:
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
you should check your BIOS settings.

Thomas

--
To unsubscribe from this list: send the line "unsubscribe cpufreq" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

Signature · 4 lines
Michael Reinelt <[email protected]>
http://home.pages.at/reinelt
GPG-Key 0xDF13BA50
ICQ #288386781
author
#6 lore raw

Can I do option 1 like this:
Please try creating the file /etc/modprobe.d/processor-ppc.conf containing the text:

options processor ignore_ppc=1

and then reboot.

How will the boot up options know to use that modprobe?

Is option b a kernel change?

Quoted 1 line · Michael Reinelt

processor.ignore_ppc flag

author
#7 lore raw
In reply to Michael Reinelt

Thanks.
I have tried both of those options and it is still limited to 800 on restarting. I edited grub 2 as this is the maverick meerkat update.

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="acpi_osi=\"!Windows 2006\""

So, is it acpi or the BIOS or speedstep?
If the above line worked then it would be a BIOS problem but the fact it doesn't work, means it must be something else other than the BIOS?

author
#8 lore raw
In reply to Michael Reinelt

I have partially solved this by turning off speedstep in the BIOS.
Now the computer runs at 1.73 permanently.
Is there a way to get cpufreqd to control the speed after that and flip between 800 and 1.73 as needed or is that a function completely controlled by the BIOS? ie now that I have max speed, I guess I have to leave it on max?

Quoted 114 lines · Michael Reinelt

I had a similar problem back in 2007: https://bugzilla.kernel.org/show_bug.cgi?id=9488 In my case a broken BIOS was the reason. As I could not get a newer (fixed) BIOS, I found two workarounds: a) using the processor.ignore_ppc flag, and b) (the "final" solution): using a kernel parameter acpi_osi="!Windows 2006"

Am 2011-02-07 23:56, schrieb J Webster:

Quoted 109 lines

The BIOS is BIOS revision A05, which has not been updated since 2005. The BIOS only has settings to turn speedstep on or off. If it is turned off then the computer will not run higher than 800MHz so that won't solve the issue.
I have attached the results below when it throttles down to 800 and the cpu limit says: 80000 but it starts off at 1733000.

The only thing it could be is a temperature sensor that has gone faulty. NHC in windows seems to be able to bypass this issue and ramp it up to 1.73 but there doesn't seem to be an equivalent in Ubuntu that I know of.

when running at 1.73Ghz correctly:

j@j-Inspiron-9300:~$ date
Mon Feb 7 22:44:49 CET 2011
j@j-Inspiron-9300:~$ sudo cat
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
1733000
j@j-Inspiron-9300:~$ cpufreq-info
cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.73 GHz
available frequency steps: 1.73 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace,
powersave, performance
current policy: frequency should be within 1.73 GHz and 1.73 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 1.73 GHz.
cpufreq stats: 1.73 GHz:99.46%, 1.33 GHz:0.00%, 1.07 GHz:0.00%, 800
MHz:0.54% (16)

when limited to 800MHz:

j@j-Inspiron-9300:~$ date
Mon Feb 7 23:54:45 CET 2011
j@j-Inspiron-9300:~$ cpufreq-info
cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 1.73 GHz
available frequency steps: 1.73 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace,
powersave, performance
current policy: frequency should be within 800 MHz and 800 MHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
cpufreq stats: 1.73 GHz:69.73%, 1.33 GHz:0.00%, 1.07 GHz:0.00%, 800
MHz:30.27% (17)
j@j-Inspiron-9300:~$ sudo cat
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
800000
Quoted 37 lines · Thomas Renninger
Quoted 26 lines · On Sunday 06 February 2011 05:41:23 Mattia Dongili wrote:

Note that this is a kernel development related list, if your problem is specific to cpufreqd (note the "d" for deamon, a userspace application) please write/reply to me only or to cpufreqd related mailing lists.

Quoted 21 lines · J Webster

My laptop is an Inpsiron 9300, which should be able to go up to 1.73GHz.
I am having an issue whereby when I first turn the computer on, ondemand is selected and the speed moves between 800 and 1.73 successfully.
For no apparent reason, after 15mins it is throttled back to 800 and I cannot change it back.
I tired manually editing the scaling_max_freq file to 1733000 but when I go back to view it it has changed to 800000 again! I thought it might be this issue:
##
# Special Rules
##
# CPU Too hot!
[Rule]
name=CPU Too Hot
acpi_temperature=55-100
cpu_interval=50-100
profile=Performance Low
[/Rule]

Quoted 5 lines
Quoted 2 lines

So I changed it from 70-100 but on the last try the cpu did not reach 70 and it still throttled it back to 800.

Try to increase cpufreqd verbosity, it will tell you which and why a specific rule was selected. From there you can work on modifying your rules to better match your usage.

Also check whether your BIOS is the reason, if you get 800000 here:
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
you should check your BIOS settings.

Thomas

Signature · 3 lines
To unsubscribe from this list: send the line "unsubscribe cpufreq" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
#9 lore raw
Quoted 6 lines · On Wednesday 09 February 2011 20:17:06 J Webster wrote:

I have partially solved this by turning off speedstep in the BIOS. Now the computer runs at 1.73 permanently.
Is there a way to get cpufreqd to control the speed after that and flip between 800 and 1.73 as needed or is that a function completely controlled by the BIOS?
ie now that I have max speed, I guess I have to leave it on max?

You might want to use processor.ignore_ppc then.
It ignores BIOS events telling the OS to limit the frequency.

Thomas

author
#10 lore raw

Tried that but it didn;t ignore the BIOS. Either that or something else is limiting it. That's why I had to turn speedstep off in the BIOS.

Quoted 11 lines · Thomas Renninger
Quoted 6 lines · On Wednesday 09 February 2011 20:17:06 J Webster wrote:

I have partially solved this by turning off speedstep in the BIOS. Now the computer runs at 1.73 permanently.
Is there a way to get cpufreqd to control the speed after that and flip between 800 and 1.73 as needed or is that a function completely controlled by the BIOS?
ie now that I have max speed, I guess I have to leave it on max?

You might want to use processor.ignore_ppc then.
It ignores BIOS events telling the OS to limit the frequency.

Thomas

#11 lore raw
Quoted 3 lines · On Wednesday 09 February 2011 20:43:20 J Webster wrote:

Tried that but it didn;t ignore the BIOS. Either that or something else is limiting it.
That's why I had to turn speedstep off in the BIOS.

Interesting, that would mean the BIOS additionally sets some HW registers to limit things or processor.ignore_ppc is broken for you, but as it works for others, I can't see why...

Is /sys/devices/.../bios_limit still showing lower values? This should not be possible anymore with this param.
Then better double check that you've written the parameter correctly or also try a latest vanilla kernel if not done yet.

Thomas