O governador de desempenho não define a frequência máxima

O governador de desempenho não define a frequência máxima

Estou tentando usar o governador no modo de desempenho, mas sempre que verifico os valores de frequência vejo uma frequência menor que a frequência da CPU. Estou usando uma CPU Intel(R) Xeon(R) E5-2650 v4 a 2,20 GHz

$ grep -E '^model name|^cpu MHz' /proc/cpuinfo
...
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 2502.455
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 2510.818
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 2510.623
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 1200.373
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 1200.297
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 1201.526
model name      : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
cpu MHz         : 1200.133
...

Primeiro de tudo, coloquei o governador no modo de desempenho no /etc/default/cpufrequtils. Além disso, me livrei dos serviços sob demanda. Além disso, defini energy_perf_biascomo 0 para todos os núcleos

for cpu in /sys/devices/system/cpu/cpu{0..47}; do
    echo 0 > "$cpu/power/energy_perf_bias"
done

e eu configurei o min_perf_pctdriver intel_pstate para 100

echo 100 > /sys/devices/system/cpu/intel_pstate/min_perf_pct

Também da configuração do kernel que eu configureiCONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y

Eu usei as seguintes opções do grub para inicializar o kernel

intel_pstate=no_hwp intel_idle.max_cstate=0 processor.max_cstate=1 idle=halt

Mas ainda assim os núcleos não funcionam todos na mesma frequência máxima.

Suspeito que o problema aqui é que o governador tenta ultrapassar a frequência base de 2,20 GHz, pois seus limites estão entre 1,2 GHz e 2,9 GHz. Portanto, provavelmente o governador reduz a frequência de alguns núcleos para ficar dentro do TDP (Thermal design power).

Assim, para tentar evitar isso, desativei a frequência turbo

echo -n 1 > /sys/devices/system/cpu/intel_pstate/no_turbo

e defina a frequência mínima de escala para 2,2 GHz, /sys/devices/system/cpu/cpu*/cpufreq/scaling_min_freqmas ainda existem núcleos que não funcionam a 2,2 GHz

$ cpufreq-info
...
analyzing CPU 12:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 12
  CPUs which need to have their frequency coordinated by software: 12
  maximum transition latency: 4294.55 ms.
  hardware limits: 1.20 GHz - 2.90 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 2.20 GHz and 2.20 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.20 GHz.
...

Como posso fazer com que todos os núcleos funcionem a 2,2 GHz?

Obrigado

informação relacionada