LINUX.ORG.RU

что показывает top в колонке %CPU? )

 ,


0

1

в чем суть: есть два ядра и некоторое заведомо большее количество процессов. да из которых (анпример alfa и betta) показывают загрузку 80% и еще десяток по незначительный от 1.5% до 0.2%… а LA при это-м равен 2. а загрузка cpu 100%

так вот какой из этих процессов грузит проц? 80% - на против процесса, это одно ядро или два? а если пороцес многопоточный?

хотелось бы конструктивной аргументации, с указанием на матерьялы для изучения.


так вот какой из этих процессов грузит проц? 80% - на против процесса, это одно ядро или два? а если пороцес многопоточный?

Скриншот top показать не вариант? Лучше htop.

хотелось бы конструктивной аргументации, с указанием на матерьялы для изучения.

Что именно ты собрался изучать? Как понимать что показывает top?

TDrive ★★★★★
()

LA кстати не про загрузку процессора, если что. И вообще он на разных ОС по разному может считаться и даже алгоритм менялся за время существования линукса. Если тебя это смущает то гугли что такое LA.

TDrive ★★★★★
()

LA - Load Average ну как его посчитать могеш в исходники самого top глянуть ну а там чистая математика ну скажем 4 класса. Все что показывает top есть в /proc и все что нужно это 4 класс образования умножить поделить ну и т.д. все что нужно в top смотреть, нечего и говорить тут не очем. Вспомни проек top кагого года когда у тебя был всего один проц и один поток. Ну это я к чему вся логика там и осталась на один проц. Ну а теперь итог если у тебя проц 8 ядер и 16 потоков то LA=16 это все что ты могеш выжять из проца при работе на отзывчивость 100% если больше то все приплыли. Начинаются задержки io точно не помню как там в top этот параметр кличится top не пользуюсь уже как лет сто ну почти.

pvvking ★★
()
Последнее исправление: pvvking (всего исправлений: 2)
Ответ на: комментарий от TDrive

man7.org/linux/man-pages/man1/top.1.html

%CPU – CPU Usage The task’s share of the elapsed CPU time since the last screen update, expressed as a percentage of total CPU time.

не понятна формулировка особенно в сравнении с следующим абзацем

In a true SMP environment, if a process is multi-threaded and top is not operating in Threads mode, amounts greater than 100% may be reported.

кстати, htop ссылается на документацию top, и толком ничего не обьясняет.

так что показывает %CPU - одно ядро, а более 100% в многопоточном приложении будет?

xoy
() автор топика
Последнее исправление: xoy (всего исправлений: 1)
Ответ на: комментарий от TDrive

спасибо, со статьей Brendan Gregg-a (https://www.brendangregg.com/blog/2017-08-08/linux-load-averages.html) знаком потому и задаю вопрос. а то получается смотришь в top(htop) и насамом деле фидишь фиг… Хочу разобраться что же там все-же

xoy
() автор топика
Ответ на: комментарий от xoy

так что показывает %CPU - одно ядро, а более 100% в многопоточном приложении будет?

Ты же сам процитировал что может, значит может. Вопрос то в чем? Почему он за 100% берет одно ядро, а не все сразу? Не удивлюсь если это поведение вообще как нибудь переключается.

TDrive ★★★★★
()
Ответ на: комментарий от xoy

la это про доступность ресурсов, процессор это не единственный ресурс.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

https://askubuntu.com/questions/707203/top-command-on-ubuntu-multicore-cpu-shows-cpu-usage-100

By default, top displays CPU usage as a percentage of a single CPU. On multi-core systems, you can see percentages of CPU usage are greater than 100%. You can toggle this behavior by hitting Shift + i while top is running to show the overall percentage of available CPUs in use.

htop is a better alternative of top. In htop, you can see how your programs consuming all of the 32 cores.

Я не удивлен.

TDrive ★★★★★
()

это одно ядро или два

Одно.

а более 100% в многопоточном приложении будет?

Да.

no-such-file ★★★★★
()
Ответ на: комментарий от TDrive

Еще раз спасибо, без шуток, дали отправную точку для изучения.

Дело действительно в режиме отображения. (Раньше, top/htop показывали более 100% - видел лично. но не последнее время.)

И дело действительно в ручке Shif-i точнее в том, что она дергает: режим называется Solaris/Irix mode.

Так вот по дефолту принят Irix mode - который предоставляет один поток и в многопоточном режиме может привышать 100%.

но переключив можно наблюдать другой режим.

https://logic.edchen.org/irix-mode-vs-solaris-mode-in-top-command/

xoy
() автор топика
Ответ на: комментарий от pvvking

LA - Load Average ну как его посчитать могеш в исходники самого top глянуть ну а там чистая математика ну скажем 4 класса.

Открыть /proc/loadavg, прочитать три числа, отобразить на экране эти самые три числа. Нет там математики.

i-rinat ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.