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ぐらいの時間で終わるようになれば良いかなと思ってました。
結果は以下の通りです。
プロセッサ名 | ビルド時間(分) | 比率(%) |
---|---|---|
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を積んでみてください。