Contents

GNU timeでプロセスのメモリ使用量を取得する

Contents

TD;LR

1
/usr/bin/time -f "%M KB" command

GNU time

GNU timeには、プロセスが使用したユーザ/システム時間だけでなく、最大メモリ使用量(Resident Set Size)を取得することができる。例えば、 git --versionを実行したときの最大メモリ使用量を表示するには、次のコマンドを実行する。

1
2
3
$ /usr/bin/time -f "RSS: %M KB" git --version
git version 2.17.1
RSS: 1312 KB

-fオプションで出力フォーマットを指定し、引数に%Mを指定することで最大メモリ使用量を表示する。

1
2
3
4
5
6
7
OPTIONS
       -f FORMAT, --format FORMAT
              Use FORMAT as the format string that controls the output of time.  See the below more information.
......
The resource specifiers, which are a superset of those recognized by the tcsh(1) builtin `time' command, are:
......
              M      Maximum resident set size of the process during its lifetime, in Kilobytes.