¿Cómo afecta el paso de velocidad de la CPU a los porcentajes de uso de la CPU informados en (por ejemplo) htop?

¿Cómo afecta el paso de velocidad de la CPU a los porcentajes de uso de la CPU informados en (por ejemplo) htop?

¿Cómo afecta el paso de velocidad de la CPU a los porcentajes de uso de la CPU informados en (por ejemplo) htop? ¿Qué tal el top normal?

Entonces, si mi CPU se reduce a 800 MHz con una velocidad máxima de 2 GHz, ¿un 5 % de uso significa que la CPU funcionó durante 0,05 * 800 = 40 millones de ciclos utilizados, o 0,05 * 2000 = 100 millones de ciclos utilizados?

Respuesta1

Me cuesta encontrar una explicación razonable para las diferencias de enfoque, pero esto es lo que veo:

Enlinux, utilizando htop, los porcentajes de utilización de la CPU son relativos alvelocidad de reloj actual. Cuando su CPU está completamente reducida, sus procesos en segundo plano casi inactivos pueden parecer mucho más ocupados de lo que realmente están, si los compara con procesos más "activos" que podrían ejecutarse 10 segundos más tarde y hacer que su CPU se intensifique.

Hay una muy buena respuesta aquí (https://unix.stackexchange.com/a/58541/9854) que explica cómo funciona esto: básicamente, el sistema rastrea los "tictacs del reloj" y htop, durante un lapso de tiempo determinado, lo convierte en un porcentaje al observar la velocidad del reloj (instantánea/en ese momento). Parece que esta metodología a veces arrojaría cifras superiores al 100%, pero supongo que deben normalizarla/limitarla.

Esto hacenoparece ser cómo el administrador de tareas enventanasinforma la utilización de la CPU: parece centrarse en el uso relativo a una capacidad "estándar" del 100% para su CPU (no estoy seguro de cómo deciden qué es el 100%, en un mundo de overclocking y turbo boost).

Un ejemplo de consecuencia de esta diferencia es que bajo circunstancias exactamente idénticas, cuando mi CPU ha bajado patológicamente a 200 MHz en lugar de los 900 MHz inactivos normales y los 3600 Mhz ocupados, Linux htop informa "La capacidad de la CPU está al máximo, pánico" mientras que Windows dice "Oye, todo está bien, la CPU está totalmente infrautilizada" a pesar de que no hay suficiente rendimiento de la CPU para realizar un seguimiento del cursor del mouse...

En ambos lugares, puedes "darle sentido" a estas situaciones, si sabes lo que estás haciendo:

  • En Windows (10), con "Más detalles" abierto, puede cambiar a la pestaña Rendimiento, sección CPU, para ver la frecuencia actual de la CPU.
  • En Linux con htop, configure con F2y en "Opciones de visualización", marque la casilla "Mostrar también la frecuencia de la CPU". Esto colocará las cifras de utilización en contexto.

Respuesta2

El paso es irrelevante. El 5% significa que los núcleos de la CPU realizaron un trabajo útil el 5% del tiempo.

No multipliques las velocidades por fracciones de esa manera. Los números que obtienes al hacer eso básicamente no tienen sentido. Los "40Mhz" que obtienes son un número sin sentido: no pasó nada a 40MHz.

información relacionada