smem
。smem
是Linux系统上的一款可以生成多种内存耗用报告的命令行工具。与现有工具不一样的是 smem
可以报告 PSS【Proportional Set Size(按比例占用大小)】,这是一种更有意义的指标。可以衡量虚拟内存系统的库和应用程序所占用的内存数量。1. 安装 smem 工具
smem
默认在存储库中,因此你可以使用 yum
来安装它:$ sudo yum install smem
apt-get
命令来安装 smem
:$ sudo apt-get install smem
2. smem 工具常见用法
smem
将显示每个正在运行的进程及所使用的内存。在这里,你可以留意 RSS 相对于 USS 和 PSS 的大小,可以看到它明显高于另外二者。$ smem
smem
还可显示每个库所使用的内存。这个结果比较长,可能需要耗费一些时间,取决于你的系统。$ smem -m
grep
命令使用,同时使用 -p
选项以百分比形式查看内存使用情况。$ smem -m -p | grep firefox
smem
命令还可以显示每个用户的内存使用情况,需要使用 -u
选项:$ smem -u -p
-w
选项查看系统内存使用情况:$ smem -w -p
3. 结果可视化输出
smem
生成图形图表来显示内存使用情况,一目了然。要达到这个目的,我们需要使用到除了不能生孩子啥都可以干的 Python 。matplotlib
库。$ sudo yum install python-matplotlib
$ sudo apt-get install python-matplotlib
3.1 饼形图
smem
以饼图的形式查看内存使用情况,需要加上 --pie
选项,如下所示:$ smem --pie name -s pss
-s pss
,意思是显示 PSS 的内存使用情况。要获取 USS 和 RSS 的饼图,只需将命令中的 pss 替换为 uss 或 rss 即可。3.2 柱状图
smem
的另一个很酷的特性是以柱状图的形式生成输出。有了这个功能,你可以一次性查看 USS、PSS 和 RSS 报告的内存使用情况。--bar
选项:$ smem --bar pid -c "pss uss rss"
pid
替换为 name
即可。推荐阅读:
5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「1024」,即可免费获取!
文章评论