その1では紹介したtimeコマンドの他にperfコマンドを使う方法がある。
※perfはシステムにデフォルトでは入っていないかもしれない。
perfはいくつかのサブコマンドから成り立っているけど、起動したプロセスの情報を単純に取得するにはstatを使うといい。
また、下記のように-rオプションで実行回数を指定することもできる。
※perfはシステムにデフォルトでは入っていないかもしれない。
perfはいくつかのサブコマンドから成り立っているけど、起動したプロセスの情報を単純に取得するにはstatを使うといい。
$ perf stat sort -r foo.txt Performance counter stats for 'sort -r foo.txt': 1.880898 task-clock # 0.569 CPUs utilized 104 context-switches # 0.055 M/sec 1 cpu-migrations # 0.532 K/sec 284 page-faults # 0.151 M/sec 2,905,110 cycles # 1.545 GHzstalled-cycles-frontend stalled-cycles-backend 2,624,591 instructions # 0.90 insns per cycle 559,006 branches # 297.202 M/sec 17,821 branch-misses # 3.19% of all branches 0.003305801 seconds time elapsed
また、下記のように-rオプションで実行回数を指定することもできる。
$ perf stat -r 5 sleep 1 Performance counter stats for 'sleep 1' (5 runs): 1.657008 task-clock # 0.002 CPUs utilized ( +- 3.25% ) 2 context-switches # 0.001 M/sec ( +- 20.79% ) 0 cpu-migrations # 0.121 K/sec ( +-100.00% ) 199 page-faults # 0.120 M/sec 1,338,609 cycles # 0.808 GHz ( +- 1.99% )stalled-cycles-frontend stalled-cycles-backend 1,150,478 instructions # 0.86 insns per cycle ( +- 0.37% ) 233,825 branches # 141.113 M/sec ( +- 0.36% ) 9,804 branch-misses # 4.19% of all branches ( +- 1.32% ) 1.003059076 seconds time elapsed ( +- 0.03% )
0 件のコメント:
コメントを投稿