Eu tentei no desktop Ubuntu 22.04.3, 23.10, regular e lowlatency
versões. Tenho que aumentar a frequência mínima de um núcleo, que executa um processo de captura de imagem que exige alto clock da CPU. Aqui está um exemplo:
paul@box4x4:~$ sudo cpupower -c 5 frequency-set -d 3000MHz
Setting cpu: 5
que define a frequência mínima para o núcleo 5, mas a frequência real não muda:
paul@box4x4:~/profiler$ cpupower -c 5 frequency-info
analyzing CPU 5:
driver: amd-pstate-epp
CPUs which run at the same hardware frequency: 5
CPUs which need to have their frequency coordinated by software: 5
maximum transition latency: Cannot determine or is not supported.
hardware limits: 400 MHz - 5.58 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 3.00 GHz and 5.58 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 400 MHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: no
e permanece e glacial 400MHz. Estou fazendo errado? Existe outra maneira e ferramenta, espero que não muito complicada, para realizá-lo?
Uma bandeira vermelha que vejo aqui é uma frequência máxima falsa de 5,58 GHz. Não é possível. 4,9 GHz é a frequência turbo máxima para CPU AMD Ryzen 5 7640U que estou usando.
Fiz um teste de sanidade no PC Intel N100 e parece funcionar lá:
paul@cube:~$ sudo cpupower -c 3 frequency-info
analyzing CPU 3:
driver: intel_pstate
CPUs which run at the same hardware frequency: 3
CPUs which need to have their frequency coordinated by software: 3
maximum transition latency: Cannot determine or is not supported.
hardware limits: 700 MHz - 3.40 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 3.40 GHz and 3.40 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 3.30 GHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: yes
A frequência do núcleo nº 3 atinge os 3,4 GHz solicitados, mas às vezes é menor quando monitorado com watch grep \"cpu MHz\" /proc/cpuinfo
. Ainda assim, muito melhor do que os resultados da CPU AMD.
O problema aqui é o
driver: amd-pstate-epp
. Ele está tentando ser muito inteligente, então vamos desativá-lo:sudo vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT=
amd_pstate=disable
dentro das aspas duplas. Se houver outros itens, adicione-os ao final e separe-os dos itens anteriores com um espaço.sudo update-grub
reboot
sudo cpupower -c 5 frequency-set -d 3000MHz
O EPP em
amd-pstate-epp
significaenergy_performance_preference
. Também pode ter algum tipo de interação com as "CPUs que rodam na mesma frequência de hardware [...e...] precisam ter sua frequência coordenada por software". De acordo com os documentos, oe os outros modos são semelhantes. O
amd-pstate
atributo controla qual estratégia ele usará, se for o caso.O
acpi-cpufreq
motorista é o antigo. Geralmente apenas faz o que você manda. Nesse caso, você realmente deseja "aumentar a frequência mínima de um núcleo", com base no seu conhecimento especializado de que ele será usado para "um processo de captura de imagem", portanto, você precisa deste driver.