Estou usando o Ubuntu 14.04 (kernel 3.13.0-24-genérico) no laptop AMD A8-4500m, e notei recentemente que o AMD Turbo Core não está funcionando. Tudo funciona no Windows, no entanto, a frequência da CPU do Linux não pode ultrapassar 1,9 GHz (marcada com cpufreq-aperf
).
Aqui está a saída de cpupower frequency-info
, observe 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
Mais testes (executados com um agendador ondemand e 3 instâncias de decodificação ffmpeg 1920x1080 H.264 de vídeo em segundo plano):
[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: Parece que os processadores da série Trinity têm seu próprio switch BAPM na fonte. Ele está localizado em drivers / gpu / drm / radeon / trinity_dpm.c e (no momento da redação) está ativado apenas para placas MSI, devido a problemas de estabilidade. Para habilitá-lo, abra este arquivo, localize esta linha:
pi->enable_bapm = false;
Altere false para true e compile e instale o novo kernel. Você deve obter um impulso de pânico do kernel funcionando agora. Lembre-se de que a energia da CPU também é compartilhada com a GPU; portanto, você quase nunca obterá a frequência mais alta disponível se a GPU também estiver em uso.
fonte
cpufreq-aperf
às vezes relata frequência de 2 GHz, mas ainda não muda para 2,3 GHz ou 2,8 GHz, como no Windows.nomodeset
na linha de comando do kernel)? Isso corrigiu esse problema para mim.Active: yes
, mas presumo que essas informações estejam erradas, porque não há Pstates mostrados ecpufreq-aperf
ainda não informa frequência superior a 1,9 GHz. Também forçou o uso do software OpenGL renderer para mim.turbostat
oucpupower monitor
? Eles mostram turbo sendo usado?Respostas:
[Atualização 2015]
Começando com o Linux 3.16:
O valor para
bapm
pode ser fornecido como um parâmetro do módulo (veja aqui ).O valor de
bapm
é definido como 1 por padrão para os sistemas Kaveri, Kabini e desktop Trinity, Richland (veja aqui ), resultando na ativação do Turbo Core.O que significa que, com o Kernel 3.16 ou posterior, o Turbo Core deve funcionar imediatamente
radeon
em muitos casos.Se você executa o Debian, ou se o Ubuntu e o anterior não são verdadeiros, consulte Como configurar um sistema Debian (foco em 2D ou console / servidor) com uma APU AMD Turbo Core para obter o máximo de eficiência energética e computacional ?
[Atualização 2014-agosto-07]
Publiquei uma análise detalhada sobre a
unix-stackexchange.com
qual contém (pelo menos para mim) algumas surpresas. Como oondemand
governador potencialmente sendo pior do queperformance
(pelo menos com o Richland A10-6700) efglrx
aparentemente usando alguns truques questionáveis para melhorar os aumentos de curto prazo, tendo que compensar abruptamente isso a longo prazo. Estou feliz por ter examinado mais de perto isso.[Resposta original]
Estou no processo de configurar um sistema com um A10-6700 usando o Ubuntu 14.04 Server.
cat /proc/cpuinfo
não reflete e não refletirá nenhum aumento no processador. O impulso é uma decisão autônoma no chip com base em critérios potencialmente complexos. Leia aqui .cpufreq-info
não mostrará as frequências de impulso disponíveis, mas a saída dacpupower frequency-info
vontade. Para o A10-6700, ele deve mostrar 4300 MHz (Pb0), 4200 MHz (Pb1) e 3900 MHz (Pb2), além dos 3700, 3400, 2700, 2300 e 1800 MHz regulares.cpufreq-aperf
(depoismodprobe msr
) é comparável à saída decpupower monitor
. As frequências mostradas por essas ferramentas devem refletir os aumentos.radeon
módulo no kernel, não consegui que o A10-6700 usasse uma frequência de aumento (usandostress --cpu 2
).fglrx
módulo ATI / AMD carregado no kernel, o processador aumentará dois núcleos permanentemente (e aparentemente também os núcleos restantes temporariamente). Isso foi testado sem o X ser usado ou mesmo configurado.Lembre-se, a decisão a favor ou contra o aumento é tomada pela APU autonomamente. Meu palpite neste momento é que a APU não pode decidir se sua dissipação de energia atual deixa espaço para um impulso, a menos que a unidade gráfica integrada seja adequadamente inicializada.
A saída de vídeo com o módulo padrão difere da saída quando o fglrx é carregado. Portanto, podemos apenas adivinhar se o kernel pode colocar a APU no modo presumivelmente necessário "inteligente" (reconhecimento de perda de energia) por si só, enquanto ainda usa o módulo VGA.
Até que isso seja resolvido, simplesmente carregarei
fglrx
. A desvantagem é que, para construí-lo, são necessárias muitas coisas que você não deseja em um servidor e que precisam ser excluídas após a compilação.Além disso,
fglrx
tem quase 9 MB de tamanho. Não é um problema, mas saber que, na maioria das vezes, é frete morto, não me deixa muito feliz.[Editar 2014-Jul-24]
Eu agora relatei esse bug .
Percebi que outro bug também foi relatado: Se, de fato, você usa
fglrx
e tenta usar o modo Gerenciamento Dinâmico de Energia .fonte
Eu tenho o mesmo problema com o meu Thinkpad executando o mesmo AMD A8-4500m no Ubuntu 13.10. Encontrei isso hoje, mas meu inglês não é tão bom, então não entendi.
https://www.kernel.org/doc/Documentation/cpu-freq/boost.txt
Que possa ser útil para você.
O começo principal que encontrei é que o Turbo Core não é suportado desde a 11.10. Foi tudo o que encontrei. Por favor, prove que estou errado.
fonte