Linuxのtimeコマンドで、プログラムの実行時間を計測することができます。
timeコマンドの書式
timeコマンドの書式は以下の通りです。
1 |
$ time [オプション][プログラム] |
実行時間を計測する
sleepコマンドの実行時間を計測してみます。sleepコマンドは指定した秒数の間、処理を停止するコマンドです。
1 2 3 4 5 |
$ time sleep 1 real 0m1.003s user 0m0.001s sys 0m0.002s |
上の例では、プログラムの開始から終了までに1.003秒かかったのが確認できます。
各項目の見方
各項目の意味は以下の通りです。
real | プログラムの実行開始から終了までにかかった実時間 |
user | プログラム自体の処理にかかったCPUの処理時間 |
sys | プログラムを処理するためにかかったOSの処理時間 |
sleepコマンドの実行結果を確認すると、CPUの処理時間やOSの処理時間はほとんどかかっていないことがわかります。
sleepコマンド指定する秒数を3に変更してもrealの値以外はあまり変化がありません。
1 2 3 4 5 |
$ time sleep 3 real 0m3.004s user 0m0.001s sys 0m0.002s |
計測結果をリダイレクト
計測結果をリダイレクトしてファイルなどに書き込む場合は、以下のようにtimeコマンドと指定したプログラム名を括弧で囲む必要があります。
1 2 3 4 5 6 |
$ (time sleep 1) 2> time.log $ cat time.log real 0m1.007s user 0m0.001s sys 0m0.002s |