Як прочитати дані використання запасу процесора


113

У сендвіч-морозиві опція в параметрах розробника - "Показати використання процесора", яка додає накладку на екрані (див. Скріншот нижче).

Моє запитання: як я читаю дані? Я здогадувався, що назви пакетів - це зараз активний процес, але що означає червона та зелена смуга позаду? Також які 3 номери на вершині пакетів?

введіть тут опис зображення


1
Чи є у нас щось подібне для оперативної пам'яті?
Бенам

2
Мої 3 "середні показники навантаження" приблизно 9,0. Зелена та червона смуги майже непомітні, досягаючи приблизно 5% ширини екрана в графічно інтенсивних іграх, після чого "середнє значення завантаження" досягає приблизно 10,0. Мій телефон є чотирикореневим, а акумулятор триває віком. Я думаю, що відповіді тут неповні.
Джон

1
@Campiador На це пізніше одного року, але для оперативної пам'яті ви можете запустити c: \> adb shell vmstat <ENTER>, щоб вивчити інформацію про пам'ять. Компакт-диск перейти на ваш android-sdk-windows \ platform-tools \ для adb.
raddevus

Відповіді:


77

Це має бути середнє навантаження Unix. У Вікіпедії є приємна стаття про це.

Цифри показують середнє завантаження процесора в різні часові інтервали. Зліва направо: остання хвилина / останні п’ять хвилин / останні п'ятнадцять хвилин


2
З сайту розробників: Показати використання процесора Відображає метри процесора у верхній частині екрана, показуючи, скільки CPU використовується. У верхній червоній смузі відображається загальна витрата процесора, а під зеленою смугою - час процесора, витрачений на композицію екрана. Примітка: Ви не можете вимкнути цю функцію після її ввімкнення, не перезавантажуючи емулятор. developer.android.com/tools/debugging/debugging-devtools.html
Рольф ツ

44
"Зелений час у просторі користувачів, червоний - час у ядрі, синій - це час переривання." - Dianne Hackborn groups.google.com/forum/?fromgroups=#!topic/android-platform/…
Бо.

1
Чи є одна смужка на ядро? Я бачу лише 2 бари, але у мене є чотирикольоровий пристрій. Це означає, що я не використовую всі свої сердечники?
Кен

4
@Ken: Бари - це середнє навантаження всього процесора, а не ядра. У верхній смузі відображається використання процесора ОС та всіх програм, а інші рядки показують використання процесора для конкретної програми. Тому не хвилюйтеся, Android використовує всі ядра.
nkr

1
Я трохи розгубився. Діанна Хакборн каже: Зелений = область користувача, Червоний = Ядро, Синій = переривання, але на сайті розробника написано: червоний = загальне використання процесора, Зелений = компонування екрана. Не звучить точно так, правда?
Тобіас Райх


2

Як вказували інші відповіді, у системах UNIX цифри представляють середні показники завантаження процесора протягом 1/5/15 хвилин. Але для Linux (і, отже, для Android) те, що він представляє, є дещо іншим.

Після виправлення ядра 1993 року ( чудова поглиблена стаття на цю тему ), в Linux середні показники завантаження більше не суворо представляють процесорНавантаження: як обчислення обчислень не тільки для процесорів, пов'язаних з процесором, але й для процесів у режимі безперебійного очікування - первісна мета полягала в тому, щоб таким чином враховувати процеси, пов'язані з входом / виводом, щоб представляти більше "завантаження системи", ніж просто завантаження процесора . Проблема полягає в тому, що з 1993 року в ядрі Linux зросло використання безперебійного стану, і воно більше не представляє собою процес, пов'язаний з входом / виводом. Проблема ще більше посилюється деякими Linux-розробниками, які використовують безперебійне очікування як легке очікування, щоб уникнути розміщення сигналів у їх реалізації. Як результат, в Linux (та Android) ми можемо побачити перекоси середніх цифр з високим навантаженням, які об'єктивно не представляють реального навантаження. Існують звіти користувачів Android про необґрунтовані середні показники високого навантаження, контрастні з низьким рівнем використання процесора. Наприклад, мій старий телефон Android (з 2 ядрами процесора), як правило, показував середнє навантаження ~ 12, коли система та процесори простоювали. Отже, середнє число завантажень в Linux (Android) не виявляється надійним показником продуктивності.


1

Докладніше про "середнє завантаження", що показує завантаження процесора протягом 1 хвилини, 5 хвилин та 15 хвилин

Linux, Mac та інші системи, схожі на Unix, відображають «середнє завантаження». Ці цифри показують, наскільки зайняті процесор, диск та інші ресурси вашої системи. Спочатку вони не пояснюють себе, але з ними легко ознайомитись.

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

Напевно, у вас є система з декількома процесорами або багатоядерний процесор. Середні показники навантаження в такій системі працюють трохи інакше. Наприклад, якщо у вас система середнього процесора складає 2, це означає, що ваша система була перевантажена на 100 відсотків - протягом усього періоду часу один процес використовував процесор, а інший процес чекав. У системі з двома процесорами це було б повним використанням - два різні процеси весь час використовували два різних процесора. У системі з чотирма процесорами це було б наполовину використання - два процеси використовували два процесори, а два процесори сиділи в режимі очікування.

Щоб зрозуміти середню кількість завантаженості, потрібно знати, скільки CPU має ваша система. Середня завантаженість 6,03 вказувала б на те, що система з одним процесором була масово перевантажена, але це було б добре на комп'ютері з 8 процесорами.

Більше інформації: Посилання


0

З книги високої продуктивності Android Apps (стор. 157):

  • те, що ми бачимо, еквівалентно команді adb shell dumpsys cpuinfo
  • Цифри показують завантаження процесора протягом 1 хвилини, 5 хвилин та 15 хвилин (зліва)
  • Кольори показують час, витрачений процесором у просторі користувача (зелений), ядро ​​(червоний) та переривання вводу-виводу (синій)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.