pidstatとは

pidstatはプロセス単位でCPU使用率を表示するコマンドである。 topと異なり、指定したプロセスの推移をログのように出力できる。

sysstatパッケージに含まれており、Debian/Ubuntu系では以下でインストールする。

$ sudo apt install sysstat

基本的な使い方

引数なしで実行すると、その時点でCPUを使用しているプロセスを1回だけ表示する。 以下はほぼ待機状態の環境で実行した例であり、CPUを使用しているプロセスがないため一覧は空である。

$ pidstat
Linux 6.8.0-50-generic (host) 	08/19/26 	_x86_64_	(4 CPU)

13:18:22      UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command

intervalcountを指定すると、一定間隔でCPU使用率を繰り返し表示する。 以下は1秒間隔で2回表示する例である。

$ pidstat 1 2
Linux 6.8.0-50-generic (host) 	08/19/26 	_x86_64_	(4 CPU)

13:18:58      UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
13:18:59        0       630   21.00   79.00    0.00    0.00  100.00     3  yes
13:19:00        0       630   24.75   74.26    0.00    0.00   99.01     3  yes
Average:        0       630   22.89   76.62    0.00    0.00   99.50     -  yes

%CPU列に合計CPU使用率が表示される。 Average行には指定回数分の平均値が表示される。

特定のプロセスを指定する(-p)

-pにPIDを指定すると、そのプロセスだけを対象に表示する。

$ pidstat -p 630 1 2

複数のPIDをカンマ区切りで指定できる。

$ pidstat -p 630,631 1 2

参考