web-dev-qa-db-ja.com

プロセスが消費するメモリを監視する方法は?

実行中に消費するメモリ量を確認したいプロセスがあります。

今私はこれをします:

ps faux | grep casper

しかし、それは私にその瞬間の情報を与えるだけです。スクリプトが進むにつれてその値が変化するのを見るのはいいことです。

私はこれを行うことができますか?

16
Hommer Smith

方法1

実行:

top

プログラムのPID(最初の列)を確認し、実行します:

top -p PID

方法2

これを端末に貼り付けるか、mem_usage.shとして保存して、端末から実行します。

#! /bin/bash
while :
do
    clear
    ps faux | grep casper
    sleep 1s
done
14
Julian Stirling

プロセスのみを監視するには、/ proc/PID/statusまたは/ proc/PID/statmを確認できます。

/ proc/PID/statmについて:

cat /proc/PID/statmを実行すると、次のように表示されます。

611450 185001 883 18 0 593431 0

説明 :

  1. サイズ:-プログラムの合計サイズ(611450 X 4096/1024 = 2445800kB = 2388M)
  2. 常駐:-常駐セットサイズ(185001 X 4096/1024 = 740004kB = 722M)
  3. 共有:-共有ページ(883 X 4096 = 3532)
  4. trs:-テキスト(コード)(18 X 4096/1024 = 72kB = VmExe)
  5. drs:-データ/スタック
  6. lrs:-ライブラリ(593431 X 4096/1024 = 2373724kB = VmData + VmStk)
  7. dt:-ダーティページ

また、dateとcatを使用してループを実行しているプロセスのメモリアクティビティを記録できます。

6
yilmi

「top」を使用して使用できます

man top

このプログラムを使用すると、リソースの使用状況をRSS、VSZ、CPUなどで並べ替えることができます。非常に便利です。

または、メモリ使用量のより詳細な内訳については、「pmap」を試してください

man pmap

使用例:

pmap -x 1234

乾杯

sc。

3
swisscheese

システムモニターを開き、 Processes タブ:

2
Wilf

試してみてください:

watch 'ps faux | grep -v grep | grep casper'

--interval <seconds>パラメーターを使用して更新間隔を変更することもできます。

1
Martin Dvorak