I'm using Ubuntu 14.04 (3.13.0-24-generic kernel) on AMD A8-4500m based laptop, and I've recently noticed, that AMD Turbo Core is not working at all. Everything works on Windows, however, on Linux CPU frequency can't get past 1.9 GHz (checked with cpufreq-aperf
).
Here is output of cpupower frequency-info
, notice Active: no under boost state support:
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: 4.0 us.
hardware limits: 1.40 GHz - 1.90 GHz
available frequency steps: 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.40 GHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 1.90 GHz and 1.90 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 1.90 GHz (asserted by call to hardware).
cpufreq stats: 1.90 GHz:32,63%, 1.80 GHz:0,74%, 1.70 GHz:0,50%, 1.60 GHz:1,20%, 1.40 GHz:64,93% (9287)
boost state support:
Supported: yes
Active: no
Boost States: 2
Total States: 8
Pstate-Pb0: 2800MHz (boost state)
Pstate-Pb1: 2300MHz (boost state)
Pstate-P0: 1900MHz
Pstate-P1: 1800MHz
Pstate-P2: 1700MHz
Pstate-P3: 1600MHz
Pstate-P4: 1400MHz
Pstate-P5: 900MHz
More tests (ran with ondemand scheduler and 3 instances of ffmpeg decoding 1920x1080 H.264 video in background):
[m132@m132 turbostat]$ sudo cpupower monitor
[sudo] password for m132:
|Mperf || Idle_Stats
CPU | C0 | Cx | Freq || POLL | C1 | C2
0| 97,78| 2,22| 1821|| 0,00| 0,00| 0,00
1| 97,84| 2,16| 1821|| 0,00| 0,00| 0,00
2| 99,22| 0,78| 1807|| 0,00| 0,00| 0,00
3| 99,18| 0,82| 1808|| 0,00| 0,00| 0,00
[m132@m132 turbostat]$ sudo ./turbostat
cor CPU GHz TSC time
1.81 1.90 5**
0 0 1.81 1.90 5**
1 1 1.81 1.90
2 2 1.80 1.90
3 3 1.81 1.90
EDIT: It seems like Trinity series processors have it's own BAPM switch in source. It's located in drivers/gpu/drm/radeon/trinity_dpm.c and it's (at the time of writing) enabled only for MSI boards, because of stability issues. To enable it, open this file, find this line:
pi->enable_bapm = false;
Change false to true, then compile and install new kernel. You should get a kernel panic boost working now. Keep in mind that CPU power is also shared with GPU, so you'll almost never get the highest frequency available if GPU is also in use.
cpufreq-aperf
sometimes reports 2GHz frequency, but it still doesn't switch to 2,3 GHz or 2,8 GHz, like on Windows.nomodeset
on kernel command line)? This fixed this issue for me.Active: yes
, but I assume that this info is wrong, because there are no Pstates shown andcpufreq-aperf
still doesn't report frequency higher than 1,9 GHz. Also it forced use of software OpenGL renderer for me.turbostat
orcpupower monitor
? Do they show turbo being used?