2009-01-20
_ [Comp] 最近の MAME をビルドしてみる
MAME のビルド環境を頂いたので、約5年ぶりに MAME ビルドに挑戦してみる。
頂いた環境のおかげで、各ファイルを GET してきて適切な場所に展開しバッチファイルを叩くだけだったりします。以前やったときは cygwin や mingw のインストールが色々面倒くさかった記憶があるのですが、あの苦労は何だったのかという感じですw
とりあえず何も考えずに make してみましたが、30分ほどでビルドできました。以前は MAME 0.63 を AthlonXP 1700+ で1時間ぐらいかかっていたはずなので、マシンスペックの向上がそれなりに寄与しているということか? MAME 本体も肥大化しているはずなので、このマシンで0.63をコンパイルするともっと短くなるかも。
でも30分は時間として考えると長いよなあ。タスクマネージャ見てたら CPU 使用率は20〜40%程度だったので、マシンの全力を出し切れていないのかな。
_ [Comp] make -j で高速化
最近はてブのホッテントリにあがってたのを思い出したので、make -j で高速化してみる。
ちょっとググッてみた感じでは、MAME 界隈では CPU コア数 +1 を指定するのがよいとされているようなので、make -j 5 で開始してみる。ううむ、さっきとコンソールの流れる速さが全然違う…。CPU 使用率履歴のグラフも上限の100%にべったり張り付きっぱなしです。結果、約9分に短縮されました。UPX 圧縮をするならさらに+1分かな。-j 指定なしの結果から単純計算すると、CPU使用率100%時で約9分というのは妥当なところですね。
念のため試しにタスク数上限を制限しない make -j でコンパイルしてみましたが、時間的には make -j 5 とほぼ同じ約9分と、誤差程度しか変わりませんでした。タスクマネージャで見るとプロセス一覧リストがえらいことになって楽しいのですが、ジョブ数を制限なしにすることについてはあまり恩恵はなさそうです。
そんなわけで、普段使用する分には make -j {CPU コア数 +1} がコストパフォーマンスがよくていいのではないかと思います。