博客 / 詳情

返回

Alibaba Dragonwell 21 AI 增強版:引爆 Java 在 AI 時代的性能潛能

2025 年,Java 迎來了它的 30 歲生日。在這 30 年間,Java 一步步成為了企業級應用中最穩固的基石;而在如今這個 AI 的時代,Java 也開始承擔越來越多 AI 相關的重型負載,例如基於 Elasticsearch 的 RAG 引擎、基於 Spark 的大規模數據分析與特徵工程等。

然而,面對大規模、計算密集的 AI 應用場景,傳統 JVM 往往顯得力不從心:Java 層面的向量化能力仍有不足,難以高效實現複雜的並行計算;若轉而依賴 native 代碼進行向量化改造,則又不得不承受 JNI 帶來的調用開銷與開發複雜性。與此同時,JVM 在 GC、JIT 編譯和運行時等核心模塊雖提供了大量可調參數,具備高度的可定製潛力,但參數組合繁多、調優門檻高,使得性能優化成為一項耗時耗力的任務。這些困境凸顯了傳統 JVM 在 AI 時代所面臨的關鍵矛盾——開發效率與系統性能難以兼得。如何在保持 Java 高生產力優勢的同時,突破性能瓶頸,已成為 JVM 技術演進的重要課題。

為了應對這些挑戰,JVM 自身也必須進化。隨着大語言模型(LLM)等新一代 AI 技術的崛起,AIOps(智能運維)正成為企業 IT 運維的未來。然而,傳統 JVM 對 AI 和運維繫統來説仍是一個黑盒,其內部狀態難以觀測,複雜的參數更讓自動化調優無從談起。企業亟需一個更懂 AI、更適應 AIOps 的智能 JVM,它應當具備更強的原生計算加速能力、更深度的運行時洞察力和更高程度的自適應優化能力。只有這樣,JVM 才能與 AIOps 平台深度融合,實現智能容量評估、異常根因診斷、性能瓶頸自愈等過去難以想象的運維能力,最終幫助企業在 AI 時代實現開發效率與系統性能的統一。

洞悉於此,阿里雲重磅推出 Alibaba Dragonwell 21 AI 增強版,基於Dragonwell 21 Extended Edition 開發。作為 OpenJDK 的生產級下游發行版,Dragonwell 21 集成了豐富的優化,綜合性能領先 OpenJDK 21 一個身位。在此基礎上,AI 增強版專為 AI 應用深度優化,致力於解決上述問題,幫助企業客户最大化 Java 應用在 AI 場景下的投資回報率。

三大利器,助力 AI 業務全面提速

Native 加速:為核心 AI 組件注入原生執行效率

傳統 JVM 中,頻繁執行的 Java 方法會被 JIT 編譯成高度優化的機器碼,以提升程序性能。但是,JVM 的 JIT 編譯器對 CPU 的最新特性(如 AVX-512、AMX 等)缺乏支持,因此在許多計算密集的 AI 場景下無法生成足夠高效的代碼。另一個致命的問題是 JIT 編譯器無法利用 GPU 資源,這在 AI 時代尤為關鍵。

Alibaba Dragonwell 21 AI 增強版提供了 Native 加速功能,它可將常見 AI 負載中的熱點方法,替換為預編譯的、極致優化的本地代碼實現。這就相當於給 Java 應用的“發動機”換上了 F1 賽車的核心部件,讓 JVM 得以在關鍵鏈路上發揮出 CPU/GPU 資源的最大潛力。

在當前的大模型浪潮中,檢索增強生成(RAG)已成為企業構建智能問答、知識庫等應用的核心技術。這類應用通常依賴 Elasticsearch 等向量數據庫進行高效檢索,其性能直接決定了用户體驗。Native 加速功能針對性優化了向量檢索中的核心計算環節,能夠大幅降低檢索延遲,提升 RAG 系統的響應速度。在 GIST 數據集上的測試表明,Elasticsearch 的 max_inner_product 和 BBQ 向量檢索端到端性能分別提升了 29.2% 和 18.5%,如下圖所示。
image.png

同樣,在海量數據處理領域,企業需要利用 Spark 等分佈式計算框架進行復雜的數據清洗、特徵工程和模型訓練。這些任務涉及密集的計算和數據交換,每一分性能提升都意味着成本的節約和效率的飛躍。Native 加速功能為 Spark 的核心實現提供了原生代碼級別的優化,讓 Java 應用也能享受到極致的執行效率,從而加速整個數據處理流程。開啓加速後,在 TPC-DS 基準評測中,Spark 4.0 總體性能提升 5.2%,部分關鍵查詢的性能提升甚至超過了 60%,如下圖所示。
image.png

熱代碼重排:讓 Code Cache 擁有智能

JVM 在運行時,會將 Java 方法 JIT 編譯後的代碼存放在 Code Cache(代碼緩存)中。然而,傳統 JVM 只是簡單地將編譯後的代碼按時間順序緊密放置,因此,熱點方法的代碼在緩存中很可能是分散的。CPU 在執行代碼時,會在 JVM 代碼緩存的不同位置反覆跳躍,導致 CPU I-Cache(指令緩存)的局部性變差,從而影響性能。

為解決這一問題,Alibaba Dragonwell 21 AI 增強版引入了熱代碼重排,它的工作模式分為兩個階段:

  1. 分析階段(Training Run):在試運行或灰度環境中,收集 Java 應用中熱點方法的執行情況,並通過算法智能分析方法之間的關聯。
  2. 優化階段(Production Run):正式部署時,JIT 編譯器利用分析階段的熱點信息,將關聯性高的方法編譯到物理上連續的內存區域,大幅提升 I-Cache 和 I-TLB 的命中率。

image.png

傳統 JVM 執行大型負載時,CPU 會花費大量時間等待代碼和數據。而熱代碼重排能極大減少 CPU 的“空轉”,讓算力真正用在刀刃上。如上圖所示,啓用熱代碼重排後,JVM 即可自動整理 Code Cache 內存,實現更好的性能表現,尤其是在 Code Cache 使用量較大、業務代碼複雜但熱點集中的場景下,熱代碼重排的優化效果更為顯著。

在阿里巴巴某大型電商應用測試中,開啓熱代碼重排特性後,在灰度環境中進行 Training Run 採集熱點信息,並在正式生產環境中啓用 Production Run 實現熱代碼的集中排布,最終實現 CPU 利用率下降 6.1%、請求 RT(響應時間)下降 8.9% 的優化效果,在降低服務成本的同時提升了用户體驗,如下圖所示。

image.png

JTune:您的專屬 JVM 參數調優大師

JVM 參數調優一直都是讓人頭疼的問題,尤其是 GC 相關的參數。對於一個 Java 應用,往往需要結合應用多次運行的狀態,耗費數位精通 JVM 的資深工程師的精力,才能找出一套相對合適的 JVM 參數——這對很多中小型企業而言,幾乎是不可能完成的任務。

Alibaba Dragonwell 21 AI 增強版包含了一個重磅工具:JTune。區別於傳統的固定規則調優,JTune 內置機器學習模型,可以自動探索 JVM 龐大的參數組合空間,通過“採樣-調整-驗證”的閉環反饋,為您的特定應用和硬件環境尋找最優的參數配置。

image.png

從此,JVM 調優這門“玄學”徹底變成了科學,您不再需要 JVM 專家花費數週進行手動調優,只需執行幾行命令,JTune 就能自動完成這項工作。這樣不僅省時省力,還往往能找到超越人類專家經驗的更優解。

JTune 目前支持智能調整 G1 GC 的 G1NewSizePercent 和 G1MaxNewSizePercent 兩項參數,通過控制年輕代比例,在儘可能保持 RT 的情況下,提升吞吐量。除此之外,JTune 還支持根據 GC 行為智能推薦 Java 堆大小,即 -Xmx 參數的值——這一舉解決了困擾很多 Java 運維的難題。有了 JTune,您的業務既能運行如飛,也完全不會浪費內存,從而實現了硬件資源的最大化。
image.png

在行業權威的 SPECjbb 2015 基準評測中,JTune 展現了其強大實力。如上圖所示,啓用 AI 調優後,JTune 自動為 JVM 推薦了 G1NewSizePercent=21 和 G1MaxNewSizePercent=51 的最佳組合。最終,關鍵業務吞吐量(critical-jOPS)提升了 5.0%,最大吞吐量(max-jOPS)提升了 2.3%。這意味着您的應用能夠以更低的延遲處理更多的業務請求,直接轉化為更高的系統容量和更好的用户體驗。

快速上手,生態兼容

適用場景

Alibaba Dragonwell 21 AI 增強版適用於以下場景:

  • AI 向量檢索與 RAG 場景:對於構建企業級智能知識庫、文檔助手、智能問答等 RAG 應用的客户,AI 增強版可組合多種技術,全面提升底層 Elasticsearch 等組件的運行效率。在顯著降低檢索延遲的同時,提升系統在高併發下的穩定性,確保流暢的用户體驗。
  • 大數據分析與特徵工程:對於需要處理海量數據、進行復雜特徵工程和數據分析的客户,AI 增強版可系統性優化 Spark 等大數據框架的性能瓶頸,幫助您在不改變業務代碼的前提下,有效縮短數據處理週期、降低硬件資源消耗。
  • 智駕等大型複雜系統:對於代碼庫龐大、運行時熱點分散的智能駕駛、高清地圖等核心系統,AI 增強版能有效優化 Code Cache 效率,降低系統 CPU 開銷與響應時間,提升系統整體穩定性。
  • 追求極致運維效率的場景:對於希望降低 JVM 調優成本、提升運維自動化水平的企業,AI 增強版能與 AIOps 體系結合,將 JVM 從一個需要被動調優的黑盒,轉變為一個能夠主動自省並與外部系統智能交互的運行時,為實現更深層次的自動化性能優化和容量管理提供堅實基礎。

使用指南

Alibaba Dragonwell 21 AI 增強版將使用 RPM 包的形式發佈,在 Alibaba Cloud Linux 中,您可使用 yum install 命令輕鬆完成安裝操作。

安裝後,在 Java 的啓動命令行中添加 AI 增強相關的參數,即可開啓對應的 AI 增強功能。例如,您希望使用 AI 增強加速 Elasticsearch 8.17,則可添加如下命令行參數:

java -XX:+UnlockExperimentalVMOptions -XX:+UseAIExtension \
     -XX:AIExtensionUnit=es_8.17 ...

-XX:AIExtensionUnit= 參數可添加多個,以同時開啓多個 AI 增強功能。例如,您可以在此基礎上繼續啓用 Spark 4.0 的加速:

java -XX:+UnlockExperimentalVMOptions -XX:+UseAIExtension \
     -XX:AIExtensionUnit=es_8.17 -XX:AIExtensionUnit=spark_4.0 ...

目前,Dragonwell 21 AI 增強版支持的增強功能如下:

  • es_8.17 :使用 AI 增強加速 Elasticsearch 8.17.x。
  • spark_4.0 :使用 AI 增強加速 Spark 4.0。
  • hotcode_1.0 :開啓熱代碼重排,優化 Code Cache 性能。

JTune 功能為獨立的命令行工具,支持在線和離線採集 Java 應用的性能數據並智能分析。因為機器學習算法會佔用部分 CPU 資源,我們推薦使用離線方式:

1.通過設置 Java 應用啓動參數開啓 JFR,或在應用執行過程中使用 jcmd 命令採樣。

2.獲得 JFR 文件後,執行 jtune output.jfr --feature=G1GC 命令,耐心等待幾分鐘,即可得到推薦的 GC 參數。

上述 AI 增強功能的詳細使用文檔、注意事項等,將在 Alibaba Dragonwell 21 AI 增強版正式發佈後公開,敬請關注。

兼容性與支持

Alibaba Dragonwell 21 AI 增強版基於 Dragonwell 21 Extended Edition 開發。Dragonwell 21 Extended Edition 為 OpenJDK 21 下游,您可直接使用 AI 增強版運行現有的 JDK 21 應用,無需進行任何代碼適配或遷移。

Alibaba Dragonwell 21 AI 增強版提供長期支持(LTS),維護週期和 OpenJDK 保持同步:我們將在每個季度發佈更新版本,並保證至少更新至 2029 年 11 月。在此期間阿里雲將持續為 Dragonwell 21 提供性能優化和安全性維護服務,您可放心使用。

立足 AI,展望未來

Alibaba Dragonwell 21 AI 增強版通過三大技術利器,為企業客户在 AI 時代提供了極致性能與極致易用的完美結合:Native 加速、熱代碼重排與 JTune 智能調優,分別從原生算力、執行效率和運行時配置三個層面協同發力,將複雜的性能優化過程化繁為簡。您無需深入 JVM 底層,也能輕鬆駕馭 AI 負載,獲得開箱即用的性能躍升。

這些優化能力,均源自阿里巴巴內部海量業務場景的長期技術沉澱與驗證。我們將這些經過嚴苛生產環境考驗的技術成果,轉化為標準、易用的產品功能對外輸出,希望能幫助更多企業客户從容應對 AI 時代的挑戰。這僅僅是一個開始,未來,我們計劃將 Native 加速擴展至更多主流的 AI 計算框架與核心組件、進一步簡化 Code Cache 佈局優化的使用流程、引入更先進的 AI 算法來驅動參數自適應調優、輸出更多內部優化,持續提升產品的智能化水平與性能表現。

未來,AI 增強版 JVM 將是 AIOps 體系中不可或缺的一環。我們設想的下一代 Java 運行時,將不再是一個被動執行代碼的虛擬機,而是一個具備自主感知、決策和優化能力的智能體。Native 加速將不斷擴展,覆蓋更多主流 AI 框架,為上層應用提供源源不斷的算力;熱代碼重排與 JTune 等技術將深度融合,讓 JVM 具備更強的自適應能力,根據實時業務負載自動調整運行時狀態,實現“無人駕駛”式的性能優化。最終,一個高度智能化的 JVM 由此誕生:它將能夠主動向 AIOps 平台暴露更豐富的運行時信息,協同實現更精準的異常檢測、故障定位和容量預測,讓 Java 技術棧在 AI 時代持續保有強大的生命力。

Alibaba Dragonwell 21 AI 增強版的首個版本,很快將以“嚐鮮版”的形式與大家見面,並在此後隨 Dragonwell 正式版同步發佈。我們誠邀廣大 Java 與 AI 領域的開發者和企業客户下載試用,親身體驗新一代 JVM 為 AI 應用帶來的澎湃動力。最後,歡迎釘釘搜索羣號 35434688 加入 Dragonwell 客户支持羣。期待您的寶貴反饋,讓我們共同推動 Java 在 AI 時代持續進化、再創輝煌!

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.