| 会员登录 立即注册

打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
3AAA 发表于 2021-10-26 10:28:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
楼主
3AAA
2021-10-26 10:28:26 5708 3 看楼主

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



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

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



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 14.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 firefoxmemory-use chromememory-use slack

还有更多!


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

比如:
smem --pie name -c pss
显示类似这样的内容:



关于更多的细节,我建议查看 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中国荣誉推出
回复

使用道具 举报

沙发
bcmytpazcw 发表于 2021-10-26 10:29:30 | 只看该作者
沙发
bcmytpazcw
2021-10-26 10:29:30 看楼主
不错
回复 支持 反对

使用道具 举报

板凳
守得云开 发表于 2021-10-26 10:30:13 | 只看该作者
板凳
守得云开
2021-10-26 10:30:13 看楼主
转发了
回复 支持 反对

使用道具 举报

地板
守得云开 发表于 2021-10-26 10:31:26 | 只看该作者
地板
守得云开
2021-10-26 10:31:26 看楼主
哈哈,我也是因为内存的缘故弃用chrome,改用Firefox
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表

3AAA 当前离线
白银会员

查看:5708 | 回复:3

关于我们  |   侵权投诉受理  |   联系我们  |   Archiver  |  
免责声明:邳州信息网所有言论只代表发表者个人观点,与本站无关
Copyright © 2009-2025 pzxxw.com 版权所有:邳州金银杏文化传媒有限公司  

苏公网安备 32038202000401号

快速回复 返回顶部 返回列表