Memory 绘制流程图';内存使用率

Memory 绘制流程图';内存使用率,memory,ubuntu,process,monitoring,metrics,Memory,Ubuntu,Process,Monitoring,Metrics,有人知道一个工具可以直观地显示Ubuntu上所选进程的内存使用情况吗 ps aux将显示一个数字快照,但我真的想要一行,我可以在敲打过程中观察变化,希望看到意外的行为 有人有什么建议吗?试着在命令行中运行命令“top”。这将显示一个与windows任务管理器类似的进程列表。Top将完成此任务 top -b | grep {name of process} top -b -p {PID} top -b -u {userid} 我真的很喜欢用“htop”而不是“top”。它非常丰富多彩,有很多选项

有人知道一个工具可以直观地显示Ubuntu上所选进程的内存使用情况吗

ps aux
将显示一个数字快照,但我真的想要一行,我可以在敲打过程中观察变化,希望看到意外的行为

有人有什么建议吗?

试着在命令行中运行命令“top”。这将显示一个与windows任务管理器类似的进程列表。

Top将完成此任务

top -b | grep {name of process}
top -b -p {PID}
top -b -u {userid}
我真的很喜欢用“htop”而不是“top”。它非常丰富多彩,有很多选项,如设置、搜索、反转、树、排序方式、尼斯、杀死。试一试:

$ sudo apt-get install htop

我找不到任何真正的工具来做这件事

但是我发现了一套简洁的脚本可以做到这一点

使用这个小bash循环进行日志记录:

while true; do
ps -C <ProgramName> -o pid=,%mem=,vsz= >> /tmp/mem.log
gnuplot /tmp/show_mem.plt
sleep 1
done &
然后使用默认的GNOME图像查看器打开图像,当图像发生更改时,它会继续重新加载图像。因此,如果以上所有循环都是以背景为基础的,那么您似乎在图像查看器中运行了一个惊人的内存使用率图形工具:)

我现在跟踪的过程如下所示:

看起来我确实有一些内存问题:(


大部分内容都是从信用卡中盗取的。

公认的答案对我来说很有效,但我有点厌倦了在任何时候做这些事情,我想测量内存,所以我为此创建了一个小工具:

Python包也适用于非Python可执行二进制文件

使用
mprof
生成可执行文件的完整内存使用情况报告并对其进行绘图:

mprof运行
mprof图
情节是这样的:

它在PyPI上可用,因此可以安装:

pip安装-U内存\U分析器

为César干杯,但我希望有一个GUI界面…一些漂亮的线条在时间-内存轴上上上下移动。我真的不想写一些东西来提取数据并自己绘制它。关于这一点有什么想法吗?大多数电子表格程序都可以导入列中的数据,然后绘制它。虽然我是htop的忠实粉丝,但它非常有用更好地显示即时内存使用情况,而不是随时间变化的内存使用情况。htop有一个图形模式来显示随时间变化的内存/CPU使用情况:干杯,被认为是“顶级”,但我正在寻找一个图形表示。谢谢,这太棒了!我也在寻找。我爱你的贡献人!只是一句忠告,在我的机器1s延迟中太快了,cpu使用率飙升到50%左右,将其改为5s,这对我来说仍然足够好,一切都很好:)我想知道我是否在使用这个gnuplot,我必须在我的linux机器上安装它才能看到图形,还是应该在我的windows机器上安装它并使用它生成的脚本?谢谢我建议您在linux机器上完成所有操作,如果必须的话,可以从windows查看生成的映像。我对其进行了一些改进,使其完全自动化。我的版本是非常好的工具!一个非常可爱和非常容易使用的工具!
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"