Come leggere i dati di utilizzo della CPU di riserva


113

Su Ice Cream Sandwich, un'opzione nelle Opzioni sviluppatore è "Mostra utilizzo CPU", che aggiunge una sovrapposizione sullo schermo (vedi screenshot sotto).

La mia domanda è: come leggo i dati? Ho immaginato che i nomi dei pacchetti siano il processo attualmente attivo, ma cosa significano le barre rosse e verdi dietro? Inoltre quali sono i 3 numeri in cima ai pacchetti?

inserisci qui la descrizione dell'immagine


1
Abbiamo qualcosa di simile a questo per la RAM?
Behnam

2
Le mie 3 "medie di carico" sono circa 9,0. Le barre verde e rossa sono quasi invisibili, raggiungendo circa il 5% della larghezza dello schermo nei giochi graficamente intensi, dopodiché le "medie di carico" hanno raggiunto circa 10,0. Il mio telefono è un quadcore e la batteria dura anni. Penso che le risposte qui siano incomplete.
Giovanni

1
@Campiador Questo è in ritardo di circa 1 anno, ma per la RAM puoi eseguire c: \> adb shell vmstat <ENTER> per esaminare le informazioni sulla memoria. CD sul tuo android-sdk-windows \ platform-tools \ per adb.
raddevus

Risposte:


77

Questa dovrebbe essere la media di carico di Unix. Wikipedia ha un bell'articolo su questo.

I numeri mostrano il carico medio della CPU in diversi intervalli di tempo. Da sinistra a destra: ultimo minuto / ultimi cinque minuti / ultimi quindici minuti


2
Dal sito per sviluppatori: Mostra utilizzo CPU Visualizza i misuratori della CPU nella parte superiore dello schermo, mostrando quanto viene utilizzata la CPU. La barra rossa in alto mostra l'utilizzo complessivo della CPU e la barra verde sotto mostra il tempo della CPU impiegato per comporre lo schermo. Nota: non è possibile disattivare questa funzione una volta attivata, senza riavviare l'emulatore. developer.android.com/tools/debugging/debugging-devtools.html
Rolf ツ

44
"Il verde è il tempo nello spazio utente, il rosso è il tempo nel kernel, il blu è il tempo di interruzione io." - Dianne Hackborn groups.google.com/forum/?fromgroups=#!topic/android-platform/…
Bo.

1
C'è una barra per core? Vedo solo 2 barre, ma ho un dispositivo quadcore. Significa che non sto usando tutti i miei core?
Ken

4
@Ken: Le barre sono il carico medio dell'intera CPU, non i core. La barra in alto mostra l'utilizzo della CPU del sistema operativo e di tutti i programmi e le altre barre mostrano l'utilizzo della CPU del programma specifico. Quindi non preoccuparti, Android utilizza tutti i core.
nkr

1
Sono un po 'confuso. Dianne Hackborn dice: Verde = spazio utente, Rosso = Kernel, Blu = interruzione ma sul sito dello sviluppatore dice: rosso = utilizzo complessivo della CPU, Verde = composizione dello schermo. Non suona esattamente lo stesso, giusto?
Tobias Reich


2

Come altre risposte hanno indicato, sui sistemi UNIX i numeri rappresentano le medie di carico della CPU su periodi di 1/5/15 minuti. Ma su Linux (e di conseguenza su Android), ciò che rappresenta è qualcosa di diverso.

Dopo una patch del kernel risalente al 1993 (un ottimo articolo di approfondimento sull'argomento ), in Linux i numeri medi di carico non rappresentano più strettamente la CPUcarico: poiché il calcolo tiene conto non solo dei processi legati alla CPU, ma anche dei processi in uno stato di attesa ininterrotta - l'obiettivo originale era di tenere conto dei processi legati all'I / O in questo modo, per rappresentare più di un "carico di sistema" del solo carico della CPU . Il problema è che dal 1993 l'utilizzo dello stato uninterruptible è cresciuto nel kernel Linux e non rappresenta più tipicamente un processo legato all'I / O. Il problema è ulteriormente aggravato da alcuni sviluppatori Linux che utilizzano attese ininterrotte come una facile attesa per evitare di accogliere i segnali nelle loro implementazioni. Di conseguenza, in Linux (e Android) possiamo vedere numeri medi di carico elevato distorti che non rappresentano oggettivamente il carico reale. Ci sono rapporti degli utenti Android su medie di carico elevato irragionevoli che contrastano con il basso utilizzo della CPU. Per esempio, il mio vecchio telefono Android (con 2 core della CPU) normalmente mostrava un carico medio di ~ 12 quando il sistema e le CPU erano inattivi. Pertanto, i numeri di carico medio in Linux (Android) non risultano essere una metrica affidabile delle prestazioni.


1

Ulteriori informazioni sul "carico medio" che mostra il carico della CPU su 1 minuto, 5 minuti e 15 minuti

Linux, Mac e altri sistemi simili a Unix visualizzano numeri di "carico medio". Questi numeri indicano quanto sono occupate la CPU, il disco e le altre risorse del sistema. All'inizio non sono autoesplicativi, ma è facile familiarizzarsi con loro.

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%. 

Probabilmente hai un sistema con più CPU o una CPU multi-core. I numeri medi di carico funzionano in modo leggermente diverso su un tale sistema. Ad esempio, se hai una media di carico di 2 su un sistema a CPU singola, significa che il tuo sistema è stato sovraccaricato del 100 percento: per l'intero periodo di tempo, un processo utilizzava la CPU mentre un altro processo era in attesa. Su un sistema con due CPU, questo sarebbe un utilizzo completo: due processi diversi utilizzavano due CPU diverse per tutto il tempo. Su un sistema con quattro CPU, questo sarebbe metà dell'utilizzo: due processi utilizzavano due CPU, mentre due CPU erano inattive.

Per capire il numero medio di carico, è necessario sapere quante CPU ha il sistema. Una media di carico di 6.03 indicherebbe che un sistema con una singola CPU è stato sovraccaricato in modo massiccio, ma andrebbe bene su un computer con 8 CPU.

maggiori informazioni: Link


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.