ツイート
シェア
LINEで送る
B! はてぶでブックマーク
Pocketでブックマーク
RSSフィード

Linux time プログラム全体の実行時間を計測する

programing image

ベンチマークテストでプログラムの実行時間が知りたいことがありますよね?

かんたんな方法としてtimeコマンドがあります。そのシンプルな使い方を説明します。

time command
commandプログラムの実行コマンド。
シェルコマンドでもよい。

timeコマンドのパラメータにプログラムの実行コマンドを入力するだけです。

たとえば、test.phpの実行時間を計測します。

time php test.php

すると、結果が標準出力されます。

timeコマンドの結果
real    0m1.758s
user    0m0.020s
sys     0m0.022s
realプログラムの実行時間
user実行プログラムのユーザーCPU時間。
CPUがユーザーモードのとき。
sysシステムCPU時間
CPUがカーネルモードのとき。

プログラムの開始から終了までのトータルの時間はrealです。user, sysの時間も含まれます。

user, sysは、CPUが処理した時間で、

user + sys = プログラムを実行するのに使ったCPUの処理時間

プログラムのCPU負荷が見れます。

timeコマンドにはオプション-pがありますが、計測結果の時間の書式を変えるだけなので、そこまで必要ありません。

ここでは説明を省略します。

realはuser + sysにならない

user, sysはファイルの読み込み・書き込みなどの時間は含まれません。ファイル操作にはCPUが関係ないHDDへのアクセスがあります。

メモリまわりも同じ。

だから、realはuser + sysよりも大きくなることがあります。

標準入出力も、ファイル操作ほどではないですがCPU以外の処理時間があります。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください