#chiroito ’s blog

Java を中心とした趣味の技術について

CPUによるOpenJDKのビルド時間の推移

OpenJDK の開発環境を E3-1265 V2 から i9-9900K へ変えてみたのでビルド時間を計ってみました。

※i5-9400H のCPUもゲットしたので表でだけ性能を追加しました。

それぞれの性能はこんな感じです。

プロセッサ名 物理コア数 ベース動作周波数 ターボブースト時の周波数
E3-1265 v2 4コア 2.5GHz 3.5GHz
i9-9900K 8コア 3.6GHz 5GHz
i5-9400H 4コア 2.5GHz 4.3GHz

どちらも IOPS が 10万近いSSD上にHyper-Vで仮想マシンを構築して、割り当てのCPU数はHT分も含めた全論理コアを割り当ててます。

OpenJDKのビルドはコア数に合わせて並列に処理をするようにできています。個人的には、コア数が倍で動作周波数がおよそ1.5倍なので掛け合わせて1/3ぐらいの時間で終わるようになれば良いかなと思ってました。

f:id:chiroito:20191105173625p:plain

結果は以下の通りです。

プロセッサ名 ビルド時間(分) 比率(%)
E3-1265 v2 25分 100%
i9-9900K 7分 28%
i5-9400H 10分20秒 41.3%

結果としては、E3-1265 V2では25分かかっていたビルドが、i9-9900K では7分で終わるようになり、28%の時間で終わるようになり予想よりも速くなりました。

また、OpenJDKではテストも並列で処理をするようにできてます。そのため、途方もなく時間がかかっていたTier1テストの時間も52分で終わるようになったり、よくやる JFR のテストも7分半で終わるようになったのでかなりの時短につながりました。

CPUの性能を上げると開発に必要な時間がグッと短くなるので、みなさんもぜひ良いCPUを積んでみてください。