График использования памяти процессом - PullRequest
40 голосов
/ 03 ноября 2011

Кто-нибудь знает инструмент для визуального отображения использования памяти выбранным процессом в Ubuntu?

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

У кого-нибудь есть предложения?

Ответы [ 5 ]

97 голосов
/ 26 сентября 2012

Я не смог найти никаких реальных инструментов для этого.

Но я нашел небольшой набор скриптов, которые это сделают.

Использование этой маленькой петли bash для ведения журнала:

while true; do
ps -C <ProgramName> -o pid=,%mem=,vsz= >> /tmp/mem.log
gnuplot /tmp/show_mem.plt
sleep 1
done &

Это создаст приятный небольшой файл журнала использования памяти с именем /tmp/mem.log. Затем он генерирует изображение данных с помощью gnuplot, используя следующий скрипт (поместите это в /tmp/show_mem.plt):

set term png small size 800,600
set output "mem-graph.png"

set ylabel "VSZ"
set y2label "%MEM"

set ytics nomirror
set y2tics nomirror in

set yrange [0:*]
set y2range [0:*]

plot "/tmp/mem.log" using 3 with lines axes x1y1 title "VSZ", \
     "/tmp/mem.log" using 2 with lines axes x1y2 title "%MEM"

Затем, открывая изображение с помощью программы просмотра изображений GNOME по умолчанию, оно продолжает перезагружать изображение при его изменении. Так что, если весь вышеописанный цикл является фоновым, может показаться, что в средстве просмотра изображений работает удивительный инструмент построения графиков использования памяти:)

Процесс, который я сейчас отслеживаю, выглядит следующим образом: Graph of rising memory usage

Похоже, у меня проблемы с памятью: (

Большая часть этого была взята из http://brunogirin.blogspot.com.au/2010/09/memory-usage-graphs-with-ps-and-gnuplot.html, кредита, где это необходимо.

15 голосов
/ 03 ноября 2011

Мне действительно нравится использовать "htop" вместо "top". Он очень красочный и имеет много опций, таких как настройка, поиск, инвертирование, дерево, сортировка, хорошо, убить. Попробуйте:

$ sudo apt-get install htop

htop

4 голосов
/ 07 января 2019

Принятый ответ сработал для меня, но я немного устал делать все это, когда захочу измерить память, поэтому я создал для этого небольшой инструмент:

https://github.com/parikls/mem_usage_ui

3 голосов
/ 03 ноября 2011

Топ сделает свое дело

top -b | grep {name of process}
top -b -p {PID}
top -b -u {userid}
0 голосов
/ 03 ноября 2011

Попробуйте запустить команду «top» в командной строке. Появится список процессов, похожих на диспетчер задач Windows.

...