Comment lire les données d'utilisation du processeur en stock

113

Sur Ice Cream Sandwich, une option dans les options du développeur est "Afficher l'utilisation du processeur", qui ajoute une superposition à l'écran (voir capture d'écran ci-dessous).

Ma question est la suivante: comment lire les données? J'ai deviné que les noms des packages sont le processus actuellement actif, mais que signifient les barres rouges et vertes derrière? Quels sont également les 3 numéros en haut des paquets?

entrez la description de l'image ici

XGouchet
la source
1
Avons-nous quelque chose de similaire pour la RAM?
Behnam
2
Mes 3 "moyennes de charge" sont d'environ 9,0. Les barres vertes et rouges sont presque invisibles, atteignant environ 5% de largeur d'écran dans les jeux graphiquement intensifs, après quoi les "moyennes de charge" atteignent environ 10,0. Mon téléphone est un quadricœur et la batterie dure longtemps. Je pense que les réponses ici sont incomplètes.
John
1
@Campiador C'est environ 1 an de retard, mais pour la RAM, vous pouvez exécuter c: \> adb shell vmstat <ENTER> pour examiner les informations sur la mémoire. CD sur votre android-sdk-windows \ platform-tools \ pour adb.
raddevus

Réponses:

77

Cela devrait être la moyenne de charge Unix. Wikipedia a un bel article à ce sujet.

Les chiffres indiquent la charge moyenne du processeur à différents intervalles de temps. De gauche à droite: dernière minute / cinq dernières minutes / quinze dernières minutes

nkr
la source
2
Depuis le site des développeurs: Afficher l'utilisation du processeur Affiche les compteurs de processeur en haut de l'écran, indiquant combien le processeur est utilisé. La barre rouge supérieure montre l'utilisation globale du processeur, et la barre verte en dessous montre le temps processeur passé à composer l'écran. Remarque: vous ne pouvez pas désactiver cette fonctionnalité une fois qu'elle est activée, sans redémarrer l'émulateur. developer.android.com/tools/debugging/debugging-devtools.html
Rolf ツ
44
"Le vert est le temps dans l'espace utilisateur, le rouge est le temps dans le noyau, le bleu est le temps d'interruption." - Dianne Hackborn groups.google.com/forum/?fromgroups=#!topic/android-platform/…
Bo.
1
Y a-t-il une barre par cœur? Je ne vois que 2 barres, mais j'ai un appareil quadcore. Cela signifie-t-il que je n'utilise pas tous mes cœurs?
Ken
4
@Ken: Les barres représentent la charge moyenne de l'ensemble du processeur et non les cœurs. La barre supérieure montre l'utilisation du processeur du système d'exploitation et de tous les programmes et les autres barres montrent l'utilisation du processeur du programme spécifique. Alors ne vous inquiétez pas, Android utilise tous les cœurs.
nkr
1
Je suis un peu confus. Dianne Hackborn dit: Vert = espace utilisateur, Rouge = Kernel, Bleu = interruption mais sur le site du développeur, il est dit: rouge = utilisation globale du processeur, Vert = composition de l'écran. Ça ne sonne pas exactement la même chose, non?
Tobias Reich
9

Jusqu'à présent, c'est la source d'information la plus utile que j'ai pu trouver à ce sujet. Apparemment, les chiffres ne représentent PAS la moyenne de charge en%: http://forum.xda-developers.com/showthread.php?t=1495763

Vaiden
la source
3
la moyenne de la charge n'est jamais en%
Sparr
2

Comme d'autres réponses l'ont souligné, sur les systèmes UNIX, les chiffres représentent les moyennes de charge du processeur sur des périodes de 1/5/15 minutes. Mais sur Linux (et par conséquent Android), ce qu'il représente est quelque chose de différent.

Après un patch du noyau datant de 1993 (un excellent article en profondeur sur le sujet ), sous Linux, les nombres moyens de charge ne représentent plus strictement le CPUcharge: comme le calcul tient compte non seulement des processus liés au processeur, mais également des processus en état d'attente ininterrompu - l'objectif initial était de prendre en compte les processus liés aux E / S de cette façon, pour représenter davantage une "charge système" que la simple charge du processeur . Le problème est que depuis 1993, l'utilisation de l'état ininterrompu a augmenté dans le noyau Linux, et il ne représente généralement plus un processus lié aux E / S. Le problème est encore exacerbé par certains développeurs Linux utilisant des attentes ininterrompues comme une attente facile pour éviter d'accommoder des signaux dans leurs implémentations. En conséquence, sous Linux (et Android), nous pouvons voir des nombres moyens de charge élevés asymétriques qui ne représentent pas objectivement la charge réelle. Il existe des rapports d'utilisateurs Android sur des moyennes de charge élevées déraisonnables contrastant avec une faible utilisation du processeur. Par exemple, mon ancien téléphone Android (avec 2 cœurs de processeur) affichait normalement une charge moyenne de ~ 12 lorsque le système et les processeurs étaient inactifs. Par conséquent, les nombres de charge moyens sous Linux (Android) ne se révèlent pas être une mesure de performance fiable.

Slider2k
la source
1

En savoir plus sur la "charge moyenne" indiquant la charge du processeur sur 1 minute, 5 minutes et 15 minutes

Linux, Mac et autres systèmes de type Unix affichent des nombres de «moyenne de charge». Ces chiffres vous indiquent à quel point le processeur, le disque et les autres ressources de votre système sont occupés. Au début, ils ne sont pas explicites, mais il est facile de se familiariser avec eux.

WIKI: example, one can interpret a load average of "1.73 0.60 7.98" on a single-CPU system as:

during the last minute, the system was overloaded by 73% on average (1.73 runnable processes, so that 0.73 processes had to wait for a turn for a single CPU system on average).
during the last 5 minutes, the CPU was idling 40% of the time on average.
during the last 15 minutes, the system was overloaded 698% on average (7.98 runnable processes, so that 6.98 processes had to wait for a turn for a single CPU system on average) if dual core mean: 798% - 200% = 598%. 

Vous avez probablement un système avec plusieurs processeurs ou un processeur multicœur. Les nombres moyens de charge fonctionnent un peu différemment sur un tel système. Par exemple, si vous avez une charge moyenne de 2 sur un système à processeur unique, cela signifie que votre système a été surchargé de 100% - pendant toute la période, un processus utilisait le processeur pendant qu'un autre processus était en attente. Sur un système avec deux processeurs, ce serait une utilisation complète - deux processus différents utilisaient deux processeurs différents tout le temps. Sur un système à quatre processeurs, cela représenterait la moitié de l'utilisation - deux processus utilisaient deux processeurs, tandis que deux processeurs étaient inactifs.

Pour comprendre le nombre moyen de charge, vous devez connaître le nombre de processeurs de votre système. Une charge moyenne de 6,03 indiquerait qu'un système avec un seul processeur a été massivement surchargé, mais ce serait bien sur un ordinateur avec 8 processeurs.

plus d'infos: Lien

j-shan huang
la source