makeでジョブ数を増やしてビルドの高速化
はじめに
makeコマンドでは
$ make -j2
ジョブ数を2個に増やすことができ、ビルド時間を短くすることができる。-jNでジョブ数Nとして設定できる。
実験
どれくらい速くなるかベンチマークをとってみた。
環境
まず、ベンチマーク用に程よい大きさのソースを用意。今回はnginx-1.1.15を使った。
以下、ベンチマークの環境。
- MacBook Air
- OS: Mac OS X 10.6.8
- CPU: 1.86 GHz Intel Core 2 Duo
- メモリ: 4GB 1067 MHz DDR3
nginxで普通に./configureするとrewriteモジュールが足りないとエラーをはくので、今回は
$ ./configure --without-http_rewrite_module
とした。
計測
計測にはtimeコマンドを使い、realの値をベンチマークの結果とした。
ジョブ数1-6個で計測した。
計測回数はそれぞれ1回。
まとめ
ジョブ数1個じゃさすがに遅いけど、2個以上だと速い。2個以上のベンチマークは各環境ごとに多く取らないといけない。今回は1回しか取っていないことに注意。
-jNオプションは積極的に使うべき。
コーヒータイムを長くしたいときは-jNオプションを外すべき。