Java 11 究竟比 8 快了多少?看看這個基準測試

jopen 5年前發布 | 12K 次閱讀 JVM

開源規劃調度引擎 OptaPlanner 官網發布了一個 Java 11 GC 性能基準測試報告

Java 11 究竟比 8 快了多少?看看這個基準測試

當前使用量最大的 Java 版本是 8,所以測試者用 Java 8 與 Java 11 進行對比測試。GC 是影響 Java 性能的關鍵因素,所以測試自然也基于 GC,在 G1 GC 和并行 GC 下分別進行了測試,結果如下:

Java 8 vs. Java 11

使用 G1 GC

Java 11 究竟比 8 快了多少?看看這個基準測試

G1 GC 下每秒分值:

Java 11 究竟比 8 快了多少?看看這個基準測試

Java 11 在幾乎所有測試數據集上都有速度上的提升。平均而言,僅通過切換到 Java 11 就有 16% 的改進,這種改進可能是因為 Java 10 中引入了 JEP 307: Parallel Full GC for G1

使用并行 GC

Java 11 究竟比 8 快了多少?看看這個基準測試

并行 GC 下每秒分值:

Java 11 究竟比 8 快了多少?看看這個基準測試

使用并行 GC,結果不如 G1,某些數據集上有所改進,但其它數據集保持不變甚至出現性能下降。平均而言,Java 11 的性能提升了 4% 以上。

測試者還在 Java 11 上對并行 GC 與 G1 GC 進行對比:

Java 11 上并行 GC vs. G1 GC

Java 11 究竟比 8 快了多少?看看這個基準測試

結果表明 G1 GC 整體上不如并行 GC。

OptaPlanner 表示,從 Java 8 到 Java 11,G1 GC 的平均速度改進為 16.1%,并行 GC 為 4.5%。此外雖然并行 GC 面向吞吐量,而 G1 則側重于低延遲 GC,但是 Java 11 中帶來的 G1 顯著改進,使得將兩者進行直接比較是有意義的。此外,基于基準測試中的大多數數據集來看,并行 GC 還是更適合 OptaPlanner 的,因為吞吐量對于解決 OptaPlanner 的優化問題更為重要。

詳細測試基準與過程查看原文:

https://www.optaplanner.org/blog/2019/01/17/HowMuchFasterIsJava11.html

 

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!