IBM 開源了它開發(fā)的 J9 Java 虛擬機(jī) (JVM),并將其貢獻(xiàn)給了 Eclipse 基金會,重命名為 Eclipse OpenJ9。J9 是一個(gè)高性能可伸縮的 Java 虛擬機(jī),是許多 IBM 企業(yè)級軟件產(chǎn)品的核心,OpenJ9 可作為 Hotspot 的替代者用于 OpenJDK,比如需要高性能的企業(yè)級運(yùn)行時(shí)環(huán)境。
那么,這個(gè) Eclipse OpenJ9 Java 虛擬機(jī)的性能到底如何?日前,有開發(fā)者運(yùn)行了一些快速的 Benchmark 測試來和 Java 虛擬機(jī) Hotspot 進(jìn)行比較,以了解其性能。
測試者在兩臺 Linux 設(shè)備上進(jìn)行測試,他將 OpenJ9 與 OpenJDK 9 打包在一起,將其性能與現(xiàn)有的 OpenJDK 9 Hotspot 構(gòu)建版本進(jìn)行比較。另外,還有一個(gè)參考的標(biāo)準(zhǔn)是 OpenJDK 8 Hotspot 的構(gòu)建版本。這三個(gè)構(gòu)建文件都是從它們的預(yù)構(gòu)建二進(jìn)制包頁面獲得的。
用于本次快速 Benchmark 測試的系統(tǒng)之一是基于 Intel Core i9 7900X,采用 Linux Kernel 4.13,運(yùn)行 Ubuntu 17.04 的系統(tǒng)。
而另一個(gè)系統(tǒng)是使用有 Xeon Gold 6138 處理器并運(yùn)行 Debian GNU/Linux 9.1 的雙插槽 Tyan 服務(wù)器。
分別在兩個(gè)系統(tǒng)上,測試了三個(gè) OpenJDK 版本,并通過 Phoronix 測試套件運(yùn)行了一些可用的 Java Benchmark 測試。
先來看看在 Core i9 7900X 上,本次 Hotspot/OpenJ9 測試的結(jié)果:
首先是使用 j2dbench 進(jìn)行一些圖形方面的基準(zhǔn)測試。使用 OpenJ9 時(shí),文本渲染速度明顯較慢,而 Hotspot 在其他兩次測試中表現(xiàn)相似。在 OpenJDK 8 和 9 之間也不是有很大的區(qū)別。J2dbench 是 Sun Microsystems 為 Phoronix 測試套件貢獻(xiàn)的 Java 圖形基準(zhǔn)測試工具之一。
使用 Java 版的 SciMark2 進(jìn)行一些數(shù)學(xué)運(yùn)算基準(zhǔn)測試
可以看到,至少到目前為止,OpenJ9 的性能大部分是落后于 Hotspot 的。
基于 Java 的 Bork 文件加密工具測試,可以看到 Hotspot 依然更快
JMH 測試中,它們之間的表現(xiàn)不相上下
Sunflow 基準(zhǔn)測試中,Hotspot 依然更快
來自另一個(gè)系統(tǒng)的 Hotspot/OpenJ9 Benchmark 測試結(jié)果與 Core i9 測試的大致相似:
作為一個(gè)開源的 JVM 項(xiàng)目,OpenJ9 還處于初期階段,應(yīng)該在幾個(gè)月后再運(yùn)行一次測試,看看性能比較如何,請保持關(guān)注。