その他のLinuxリソース
- Linuxコマンドのチートシート
- 高度なLinuxコマンドのチートシート
- 無料のオンラインコース:RHELの技術概要
- Linuxネットワーキングのチートシート
- SELinuxチートシート
- Linuxの一般的なコマンドのチートシート
- Linuxコンテナとは何ですか?
- 最新のLinux記事
私のプログラミング作業では、Webアプリケーションで使用されるメモリを知る必要があることがよくあります。詳細やブラウザプロファイリングツールに取り掛かる前に、通常は大まかな見積もりで十分です。
LinuxまたはmacOSでのメモリ使用量を調べるには、通常、topまたはhtopを使用します。プロセスに必要なRAMの量という1つの数値を確認したいと思います。しかし、これらのユーティリティによって示される統計は理解するのが難しい場合があります。 Webブラウザーでは、多くの場合、多くの個別のプロセスを実行するため、さらに複雑になります。それらはすべて長いリストとして上位の出力に表示され、それぞれに独自の指標があります。
smemコマンドを入力
幸い、メモリ使用統計を表示するための別のコマンドラインユーティリティであるsmemがあります。選択したパッケージマネージャーでインストールします。例:
sudo apt install smem
Firefoxによる総メモリ使用量を取得するには、次の手順を実行します。
smem -c pss -P firefox -k -t | tail -n 1
ここで何が起こりますか?
-
-c
スイッチは表示する列を指定します。興味があるのはpss 列。プロセスによって割り当てられたメモリを示します。 -
-P
フィルタプロセスを切り替えて、 firefoxのプロセスのみを含める 名前で -
-k
スイッチは、メモリ使用量をプレーンバイトではなくメガ/ギガバイトで表示するように指示します -
-t
スイッチは合計を表示します -
tail -n 1
フィルタは、合計が存在する最後の行のみを出力します
出力はそれが得るのと同じくらい簡単です:
$ smem -t -k -c pss -P firefox | tail -n 1
4.9G
要点をまっすぐに!そして、50以上のタブが開かれ、忙しい一日を過ごした後でも、Firefoxはまだ5GBしか使用していません。それを取る、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
次のようなものを表示します:
詳細については、smemのmanページを調べることをお勧めします。
https://linoxide.com/memory-usage-reporting-smem/で別の優れたチュートリアルを見つけることができます。
お楽しみください!
この記事は元々著者のブログに掲載されており、許可を得て再公開されています。