用 smem 命令获取内存使用统计信息

smem 命令允许你快速查看你的网页应用的内存使用情况。

smem 命令允许你快速查看你的网页应用的内存使用情况。

用 smem 命令获取内存使用统计信息

在我的编程工作中,我经常需要了解网页应用的内存使用情况。在深入研究细节和浏览器剖析工具之前,一个粗略的估计通常就足够了。

为了了解 Linux 或 macOS 上的内存使用情况,人们通常使用 tophtop。我很想看到一个单一的数字:一个进程占用了多少内存。但这些工具所显示的统计数据可能很难理解。对于网页浏览器来说,它甚至更加复杂,因为它们经常运行许多独立的进程。它们在 top 输出中显示为一个长长的列表,每一个都有自己的单独指标。

Memory usage using htop

smem 命令

幸运的是有 smem,另一个用于查看内存使用统计的命令行工具。用你选择的包管理器安装它,例如:

“`
sudo apt install smem

“`

要获得 Firefox 的总内存使用量,请执行:

“`
smem -c pss -P firefox -k -t | tail -n 1

“`

这些开关做了什么?

  • -c 开关指定要显示的列。我只对 pss 列感兴趣,它显示一个进程分配的内存。
  • -P 开关过滤进程,只包括那些名字里有 firefox 的进程。
  • -k 开关显示以 MB/GB 为单位的内存使用情况,而不是单纯的字节数。
  • -t 开关显示总数。
  • tail -n 1 过滤器只输出最后一行,也就是总数的地方。

输出是非常简单的:

“`
$ smem -t -k -c pss -P firefox | tail -n 1
4.9G

“`

开门见山!而且,经过又一天忙碌的工作,打开了 50 多个选项卡,Firefox 仍然只使用 5 GB。看看吧,Google Chrome。

用一个脚本更容易

为了方便起见,我创建一个名为 memory-use 的小脚本,它将进程名称作为参数。我把所有的脚本都放在 ~/bin 里,所以:

“`
echo ‘smem -c pss -P “$1” -k -t | tail -n 1’ > ~/bin/memory-use && chmod +x ~/bin/memory-use

“`

现在我可以很容易地测量任何应用的内存使用:

“`
memory-use firefox
memory-use chrome
memory-use slack

“`

还有更多!

该工具不仅可以显示总的内存使用情况。它甚至可以生成图形输出。

比如:

“`
smem –pie name -c pss

“`

显示类似这样的内容:

Pie chart output from smem

关于更多的细节,我建议查看 smem 手册页

你可以在 https://linoxide.com/memory-usage-reporting-smem/ 上找到另一个很棒的教程。

希望你喜欢!

本文最初发表在作者的博客上,并经许可转载。


via: https://opensource.com/article/21/10/memory-stats-linux-smem

作者:Tomasz Waraksa 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

主题测试文章,只做测试使用。发布者:eason,转转请注明出处:https://aicodev.cn/2021/10/25/%e7%94%a8-smem-%e5%91%bd%e4%bb%a4%e8%8e%b7%e5%8f%96%e5%86%85%e5%ad%98%e4%bd%bf%e7%94%a8%e7%bb%9f%e8%ae%a1%e4%bf%a1%e6%81%af/

(0)
eason的头像eason
上一篇 2021年10月24日
下一篇 2021年10月25日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信