Ich mache eine kleine Android-Anwendung, um die aktuelle Gesamt-CPU-Auslastung wie die Registerkarte Leistung im Windows Task-Manager anzuzeigen. Ich verwende "top -m 1 -n 1 -d 1", um die CPU-Auslastung zu erhalten, aber ich verstehe das Ergebnis von "top" nicht wirklich.
Das Ergebnis wie:
%Vor%CPU-Auslastung = ??? Wie kann ich die gesamte CPU-Auslastung berechnen?
Die akzeptierte Antwort für diese Frage ist falsch. Die zweite Zeile der Ausgabe ist die Anzahl der Threads / Prozesse, die in dieser Gruppierung gestartet werden. Ihre CPU-Auslastung beträgt 20%. 5% davon stammen aus Nutzer-Apps und 15% aus System-Apps. Sie haben 73 Leerlauf-Threads, 14 System-Threads und 5 Benutzer-Threads (gemäß der zweiten Zeile).
zum Beispiel, hier ist ein aktueller Top-Schnappschuss für meinen Droid.
%Vor%Laut der akzeptierten Antwort hätte ich 310% CPU-Auslastung, wenn dies tatsächlich nur die Anzahl der Threads ist. Ich bin mir ziemlich sicher, dass ich nur 11% der CPU nutze, wo die Top 3 Prozesse 9% davon verbrauchen.
Die tatsächliche Antwort auf die Frage ist einfach - kann aus der ersten Zeile von Android Top-Ausgabe berechnet werden
%Vor%Summe = Summe aller Prozentsätze = 5 + 15 = 20%
Die andere Antwort über die zweite Zeile ist so falsch. Die zweite Zeile gibt dem Scheduler die Zeit, die er in diesem bestimmten Zustand verbringt - user / sys / idle / iow in jiffies
(normalerweise 10ms) zwischen einer Ausgabe von top und der nächsten Ausgabe von top - im OP top -d 1
-, die die Benutzung druckt jede Sekunde - die Gesamtzahl der Jiffies pro Kern wäre ~ 100 (unter Annahme von 10 ms pro Jiffy) - was den Prozentwerten ähnlich wäre.
Die Werte wären dagegen größer, wenn -d
höher ist oder wenn mehrere Kerne vorhanden sind
Dies ist wahrscheinlich ohne eine -d
-Option, so dass top
eine Standardverzögerung von 3 Sekunden = 300 jiffies hat.
Verweisen Sie AOSP oberster Quellcode um die vollständige Logik zu erhalten, wie jeder Wert berechnet wird.
top ist ein Linux-Befehl. Sehen Sie sich hier
anDanke Deepak
Der Prozentsatz der CPU-Auslastung wird als (100-idle_percentage)
angegeben, mehr oder weniger. In Ihrem Snippet ist der Idle
-Prozentsatz 73, was Ihre CPU-Auslastung auf 27% reduziert.
Was die CPU-Nutzung pro Prozess betrifft, ist dies Ihre zweite Spalte der letzten zwei Zeilen.
Tags und Links android memory-management cpu-usage top-command