linux--reducción de frecuencia del servidor

pregunta

        En los últimos dos días, estuve investigando un problema: el rendimiento de la misma pieza de código en el servidor es inestable, el tiempo de ejecución es largo y la diferencia es muy grande;

        El primer paso de la investigación es optimizar el código inestable y que consume mucho tiempo (utilizando subprocesos múltiples), pero el tiempo de ejecución aún fluctúa;

        El segundo paso de la investigación es ejecutar el código inestable y que consume mucho tiempo N veces continuamente al llamarlo, y observar el fenómeno.El tiempo es muy estable y la operación es muy corta;

        El tercer paso de la investigación es iniciar N tareas después de que el servicio reciba la solicitud y el código de cada tarea se ejecute de manera estable en poco tiempo;

        En el cuarto paso de la investigación, sleep(200) se mezcla en N tareas y el tiempo de ejecución sigue siendo largo y corto;

        Se sospecha que es un problema con la frecuencia principal del servidor.Después de modificar el modo de frecuencia principal del servidor, puede funcionar de manera estable;

Modificar la frecuencia del servidor

        Instalar cpufrequtils

root@ubuntu:~# apt-get install cpufrequtils

         Establezca el modo de CPU del servicio de acuerdo con el blog linux cpu para abrir el modo de rendimiento Se encontró que fue causado por la reducción de frecuencia de la CPU. Compruebe que el sistema está configurado en modo de rendimiento no alto. Debe configurarse en modo de alto rendimiento. Los registros relevantes son los siguientes: perf: la interrupción tomó demasiado tiempo (166702> 165147), reduciendo kernel.perf_event_max_samp https://blog.csdn.net/wangy_abcsdf2/article/details/106611935

         Ver la frecuencia principal actual de la CPU

root@ubuntu:~# cat /proc/cpuinfo | grep MHz|uniq

        Cree un archivo cpufrequtils y configúrelo en modo de rendimiento;

        En el archivo cpufrequtils, ingrese "GOBERNADOR="rendimiento""

root@ubuntu:~# vim /etc/default/cpufrequtils
root@ubuntu:~# systemctl restart cpufrequtils

powersave Gobernador de ahorro de energía, la CPU funciona a la frecuencia más baja
userspace Gobernador del espacio de usuario. Ejecutar a la frecuencia de la CPU establecida por el usuario
conservative  Gobernador conservador. Subida/bajada de frecuencia según demanda
ondemand  Gobernador bajo demanda. El modo predeterminado es aumentar/disminuir automáticamente la frecuencia según la demanda.
performance

Regulador de rendimiento, la CPU funciona a la máxima frecuencia

         

cpufrequtils | Blog Tanky Woo Blog de Tanky Woo, centrado en Python, Linux, Gentoo, Mac OS, Vim, código abierto, etc. https://blog.tankywoo.com/2014/05/26/cpufrequtils.htmlVer         información de la CPU

root@ubuntu:~# cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 5.00 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 5.00 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).

        Usar la configuración de potencia de la cpu

cpupower ajusta la frecuencia principal de la CPU - Naked Sleeping Pig - Blog Garden https://www.cnblogs.com/ggzhangxiaochao/p/13948483.html

        Agregue tareas de tiempo, active el modo de rendimiento después de las 7:30, active el modo de ahorro de energía después de las 17:30;

        En el archivo /etc/crontab, agregue lo siguiente:

30 17 * * * root cpupower -c all frequency-set -g powersave
30 7 * * * root cpupower -c all frequency-set -g performance

         Para el uso de tareas de temporización crontab específicas, consulte a continuación:

Un comando de linux por día (50): comando crontab - peida - una tarea rutinaria programada que se ejecuta cíclicamente en el blog garden , y el sistema linux está controlado por el servicio del sistema cron (crond). Hay mucho trabajo planificado en el sistema Linux, por lo que este servicio del sistema se inicia de forma predeterminada. Además, ya que los propios usuarios pueden https://www.cnblogs.com/peida/archive/2013/01/08/2850483.html

Supongo que te gusta

Origin blog.csdn.net/liushao1031177/article/details/123652365
Recomendado
Clasificación