Difference between revisions of "Problem with CPU frequency scaling"
Fredigundis (Talk | contribs) (â†Created page with '{{stub}} ==Symptom== If the battery pack is removed and the laptop is powered by AC only, the CPU frequency remains locked in low speed. This happens irrespective of the ...') |
(→Nothing else works and you know what you are doing?) |
||
(26 intermediate revisions by 13 users not shown) | |||
Line 1: | Line 1: | ||
{{stub}} | {{stub}} | ||
+ | |||
+ | {{WARN|CPU frequency limitation is a safety feature of your ThinkPad, do not work around it! If you have set the BIOS to performance mode and it is still limiting maximum CPU frequency, there is almost always a good reason for it.}} | ||
==Symptom== | ==Symptom== | ||
− | If the battery pack is removed and the laptop is powered by AC only, the CPU | + | If the battery pack is removed and the laptop is powered by a 65W AC adapter only, the CPU downclocks to the lowest multiplier and remains locked in low speed. This happens irrespective of the scaling method in use (kernelspace or userspace) and of the frequency governor selected (ondemand, performance, etc.). |
− | Output of | + | Output of {{cmduser|cpupower frequency-info}} (on AC power without battery): |
analyzing CPU 0: | analyzing CPU 0: | ||
Line 28: | Line 30: | ||
current CPU frequency is 1000 MHz (asserted by call to hardware). | current CPU frequency is 1000 MHz (asserted by call to hardware). | ||
− | Output of | + | Output of {{cmduser|cpupower frequency-info}} (on AC power with battery plugged in): |
analyzing CPU 0: | analyzing CPU 0: | ||
Line 51: | Line 53: | ||
within this range. | within this range. | ||
current CPU frequency is 1000 MHz (asserted by call to hardware). | current CPU frequency is 1000 MHz (asserted by call to hardware). | ||
− | + | ||
+ | ==Explanation== | ||
+ | |||
+ | The 65W AC adaptor does not supply enough power to handle peak power draws from the CPU/disk/GPU on the later ThinkPads. The battery is required to supply the peak demand and ensure correct system operation. | ||
+ | |||
+ | Messing with this can cause data loss, data corruption, and hardware damage. | ||
+ | |||
==Solution== | ==Solution== | ||
− | + | ||
+ | === Is thermal mangament limiting the speed? === | ||
+ | * Make sure no BIOS setting is limiting the CPU frequency range (e.g., thermal management = "BALANCED"). | ||
+ | |||
+ | === Is the ThinkPad running on a 65W power adapter? === | ||
+ | * Either replace the 65W AC adapter with a 90W AC adapter, or | ||
+ | * Install a battery | ||
+ | |||
+ | === Nothing else works and you know what you are doing? === | ||
+ | * Add "processor.ignore_ppc=1" to kernel boot command line or run {{cmduser|echo 1 | sudo tee /sys/module/processor/parameters/ignore_ppc}}. This allows to disable BIOS frequency limit, but can be cause the computer to malfunction if its power consumption is higher than 65W and you are running off a 65W AC power adapter with no battery installed. | ||
+ | |||
+ | == Affected Models == | ||
+ | |||
+ | Confirmed for these models | ||
+ | * {{T410}} | ||
+ | * {{T410s}} | ||
+ | * {{T43p}} | ||
+ | * {{T60p}} | ||
+ | * {{T61}} | ||
+ | * {{X201}} | ||
+ | * {{X61}} | ||
+ | * {{Z61m}} | ||
+ | |||
+ | but it is probably true of all Lenovo ThinkPads. One can actually track this through the DSDT, but it is not worth the effort. |
Latest revision as of 12:28, 21 September 2016
This page is a stub |
---|
You can help ThinkWiki by expanding it. |
Contents
Symptom
If the battery pack is removed and the laptop is powered by a 65W AC adapter only, the CPU downclocks to the lowest multiplier and remains locked in low speed. This happens irrespective of the scaling method in use (kernelspace or userspace) and of the frequency governor selected (ondemand, performance, etc.).
Output of $ cpupower frequency-info
(on AC power without battery):
analyzing CPU 0: driver: centrino CPUs which need to switch frequency at the same time: 0 1 hardware limits: 1000 MHz - 1.83 GHz available frequency steps: 1.83 GHz, 1.33 GHz, 1000 MHz available cpufreq governors: ondemand, userspace, powersave, performance current policy: frequency should be within 1000 MHz and 1000 MHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1000 MHz (asserted by call to hardware). analyzing CPU 1: driver: centrino CPUs which need to switch frequency at the same time: 0 1 hardware limits: 1000 MHz - 1.83 GHz available frequency steps: 1.83 GHz, 1.33 GHz, 1000 MHz available cpufreq governors: ondemand, userspace, powersave, performance current policy: frequency should be within 1000 MHz and 1000 MHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1000 MHz (asserted by call to hardware).
Output of $ cpupower frequency-info
(on AC power with battery plugged in):
analyzing CPU 0: driver: centrino CPUs which need to switch frequency at the same time: 0 1 hardware limits: 1000 MHz - 1.83 GHz available frequency steps: 1.83 GHz, 1.33 GHz, 1000 MHz available cpufreq governors: ondemand, userspace, powersave, performance current policy: frequency should be within 1000 MHz and 1.83 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1000 MHz (asserted by call to hardware). analyzing CPU 1: driver: centrino CPUs which need to switch frequency at the same time: 0 1 hardware limits: 1000 MHz - 1.83 GHz available frequency steps: 1.83 GHz, 1.33 GHz, 1000 MHz available cpufreq governors: ondemand, userspace, powersave, performance current policy: frequency should be within 1000 MHz and 1.83 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1000 MHz (asserted by call to hardware).
Explanation
The 65W AC adaptor does not supply enough power to handle peak power draws from the CPU/disk/GPU on the later ThinkPads. The battery is required to supply the peak demand and ensure correct system operation.
Messing with this can cause data loss, data corruption, and hardware damage.
Solution
Is thermal mangament limiting the speed?
- Make sure no BIOS setting is limiting the CPU frequency range (e.g., thermal management = "BALANCED").
Is the ThinkPad running on a 65W power adapter?
- Either replace the 65W AC adapter with a 90W AC adapter, or
- Install a battery
Nothing else works and you know what you are doing?
- Add "processor.ignore_ppc=1" to kernel boot command line or run
$ echo 1 | sudo tee /sys/module/processor/parameters/ignore_ppc
. This allows to disable BIOS frequency limit, but can be cause the computer to malfunction if its power consumption is higher than 65W and you are running off a 65W AC power adapter with no battery installed.
Affected Models
Confirmed for these models
but it is probably true of all Lenovo ThinkPads. One can actually track this through the DSDT, but it is not worth the effort.