Cómo leer los datos de uso de la CPU de stock


En Ice Cream Sandwich, una opción en las Opciones de desarrollador es "Mostrar uso de CPU", que agrega una superposición en la pantalla (imagen siguiente).

Mi pregunta es, ¿cómo leo los datos ? He adivinado que los nombres de los paquetes son los procesos actualmente activos, pero ¿qué significan las barras rojas y verdes detrás ? También cuáles son los 3 números en la parte superior de los paquetes ?

introduzca la descripción de la imagen aquí

Author: sashoalm, 2012-05-31

4 answers

Este debería ser el promedio de carga de Unix. Wikipedia tiene un buen artículo sobre esto.

Los números muestran la carga promedio de la CPU en diferentes intervalos de tiempo. De izquierda a derecha: último minuto/últimos cinco minutos / últimos quince minutos

 72
Author: nkr,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-05-31 08:01:32

Hasta ahora esta ha sido la fuente más útil de información sobre esto que pude encontrar. Al parecer, los números NO reperesent carga promedio en %: http://forum.xda-developers.com/showthread.php?t=1495763

 9
Author: Vaiden,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-06-05 13:58:29

Como han señalado otras respuestas, en sistemas UNIX los números representan promedios de carga de CPU durante períodos de 1/5/15 minutos. Pero en Linux (y consecuentemente en Android), lo que representa es algo diferente.

Después de un parche del kernel que se remonta a 1993 (un gran artículo en profundidad sobre el tema), en Linux los números medios de carga ya no representan estrictamente la carga CPU : como las cuentas de cálculo no solo para los procesos vinculados a la CPU, sino también para estado de espera ininterrumpido - el objetivo original era dar cuenta de los procesos enlazados de E/S de esta manera, para representar más de una "carga del sistema" que solo la carga de la CPU. El problema es que desde 1993 el uso del estado ininterrumpido ha crecido en el kernel de Linux, y ya no representa típicamente un proceso enlazado de E / S. El problema se agrava aún más por algunos desarrolladores de Linux que usan esperas ininterrumpidas como una espera fácil para evitar acomodar señales en sus implementaciones. Como resultado, en Linux (y Android) puede ver números de promedio de carga alta sesgados que no representan objetivamente la carga real. Hay informes de usuarios de Android sobre promedios irrazonables de carga alta que contrastan con la baja utilización de la CPU. Por ejemplo, mi viejo teléfono Android (con 2 núcleos de CPU) normalmente mostraba una carga promedio de ~12 cuando el sistema y las CPU estaban inactivas. Por lo tanto, los números de carga promedio en Linux (Android) no resultan ser una métrica de rendimiento confiable.

 1
Author: Slider2k,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-21 19:39:05

Desde Aplicaciones Android de alto Rendimiento libro (página 157):

  • lo que vemos es equivalente a adb shell dumpsys cpuinfo command
  • Los números muestran Carga de CPU durante 1 minuto, 5 minutos y 15 minutos (desde la izquierda)
  • Los colores muestran el tiempo empleado por la CPU en el espacio de usuario (verde), el núcleo (rojo) y la interrupción de IO (azul)
 0
Author: SeeR,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-23 13:10:43