
Estoy intentando utilizar el regulador en modo de rendimiento, pero cada vez que reviso los valores de frecuencia veo una frecuencia menor que la frecuencia de la CPU. Estoy usando una 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
...
En primer lugar, configuré el gobernador en modo de rendimiento en /etc/default/cpufrequtils
. Además, me deshice de los servicios bajo demanda. Además, lo he configurado energy_perf_bias
en 0 para todos los núcleos.
for cpu in /sys/devices/system/cpu/cpu{0..47}; do
echo 0 > "$cpu/power/energy_perf_bias"
done
y he configurado el min_perf_pct
controlador intel_pstate en 100
echo 100 > /sys/devices/system/cpu/intel_pstate/min_perf_pct
También desde la configuración del kernel que he configuradoCONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
He utilizado las siguientes opciones de grub para iniciar el kernel
intel_pstate=no_hwp intel_idle.max_cstate=0 processor.max_cstate=1 idle=halt
Pero aún así los núcleos no funcionan todos a la misma frecuencia máxima.
Sospecho que el problema aquí es que el gobernador intenta superar la frecuencia base de 2,20 GHz, ya que sus límites están entre 1,2 Ghz y 2,9 Ghz. Por tanto, probablemente el gobernador baje la frecuencia de algunos núcleos para estar dentro del TDP (potencia de diseño térmico).
Por eso, para intentar evitarlo, he desactivado la frecuencia turbo.
echo -n 1 > /sys/devices/system/cpu/intel_pstate/no_turbo
y establezca la frecuencia de escala mínima en 2,2 GHz, /sys/devices/system/cpu/cpu*/cpufreq/scaling_min_freq
pero aún hay núcleos que no funcionan 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.
...
¿Cómo puedo hacer que todos los núcleos funcionen a 2,2 GHz?
Gracias