龍芯JVM團隊介紹
http://www.loongnix.org/index.php?oldid=1015
團隊成員
靳國傑
博士,龍芯公司系統研發部技術總監
敖琪
學習(v.)學習(n.)再學習(v.)
傅傑
目前專注於JIT後端優化
王雪倩
美女一枚,龍芯JDK的測試官與檢察官
鳴謝曾經做出傑出貢獻的小夥伴們:
廖斌(現供職於阿里巴巴),王一光(現供職於百度),李森(現供職於小米),蔡嵩鬆(JVM組前組長,現供職於華泰證券),楊永強(現供職於百度),林傳文,武慧
開展中的工作
效能優化
龍芯JVM團隊長期關注效能優化工作。這部分工作包括通用性優化,比如GC NUMA和編譯策略優化,也包括針對龍芯處理器的深度優化,比如使用龍芯的專有指令。
參與開源社群
目前工作的一項重點,目標是推進OpenJDK MIPS分支的發展,將龍芯的工作回饋給社群。
OpenJDK 9
龍芯將開展OpenJDK 9 MIPS Port的開發。龍芯OpenJDK 9計劃從第一行程式碼起就採用開源方式,並爭取依託於OpenJDK社群來完成整個開發過程。屆時歡迎愛好者的加入。
JVM定製
定製優化:特殊客戶的應用場景進行有針對性的優化;
定製功能:Applet外掛、JavaFX、中文字型等支援
歷史工作
移植 OpenJDK 8
- 包括64位Template Interpreter和C2 Compiler
移植OpenJDK 6
- 包括32位Template Interpreter和C1/C2 Compiler
- 包括64位Template Interpreter和C1 Compiler
優化
- 2015 JVM可靠性研究以及優化
- 2015.05 基於遺傳演算法的龍芯JVM優化
- 2015.01 《龍芯Java與伺服器應用優化案例彙編》
- 2014.07 GC_NUMA優化
論文
Jie Fu, Guojie Jin, Longbing Zhang, and Jian Wang. Caos: combined analysis with online sifting for dynamic compilation systems. In ACM International Conference on Computing Frontiers, 2016.
Qi Ao, Longbing Zhang, Shuai Chen, Jie Fu, and Bin Liao. A Fault-Tolerant Java Virtual Machine Using Fast Rejuvenation for Soft-Error-Prone Systems. In High Performance Computing and Communications. IEEE, 2015.
Qi Ao, Guojie Jin, Wen Su, Songsong Cai, and Shuai Chen. Optimizing Memory Access with Fast Address Computation on a MIPS Architecture. In Networking, Architecture, and Storage (NAS), 2014 9th IEEE International Conference on, pages 143–147. IEEE, 2014.
Songsong Cai, Yongqiang Yang, Chuanwen Lin, and Qi Liu. JVM Virtual Method Invoking Optimization Based on CAM Table. In IEEE Sixth International Conference on Networking, Architecture, and Storage, pages 122–129, 2011.
傅傑, 靳國傑, 章隆兵, and 王劍. 基於軟硬體協同設計的直譯器指令分派方法. 高技術通訊, (3), 2016.
廖彬, 傅傑, 靳國傑, 王一光, 王磊, 章隆兵, and 王劍. NUMA結構的高效實時穩定的垃圾回收演算法. 高技術通訊, 25(2):125-134, 2015.
任彤, 傅傑, and 靳國傑. 基於NUMA架構的直譯器訪存優化設計與實現. 高技術通訊, 25(7):661-668, 2015.
傅傑, 廖彬, 陳新科, 靳國傑, 章隆兵, and 王劍. 編譯佇列監視下的Size-Speed動態編譯排程演算法. 高技術通訊, 24(12):1228-1237, 2014.
敖琪, 蔡嵩鬆, and 王劍. 基於硬體Cache鎖機制的Java虛擬機器即時編譯器優化. 計算機研究與發展, 49(S1), 2012.
學位論文
傅傑. Java虛擬機器效能優化技術研究. PhD thesis, 中國科學院大學, 2016.
廖彬. NUMA架構中高效GC演算法的設計與實現. Master's thesis, 中國科學院大學, 2016.
敖琪. 高可靠高效能的Java虛擬機器研究. PhD thesis, 中國科學院大學, 2015.
王一光. MIPS64平臺下JVM效能優化研究與實現. Master's thesis, 中國科學院大學, 2015.
武慧. 龍芯MIPS64位Java虛擬機器的實現與優化. Master's thesis, 中國科學院大學, 2013.
楊勇強. 基於四核龍芯3號平臺的Hotspot6移植與優化. Master's thesis, 中國科學院研究生院, 2012.
蔡嵩鬆. 軟硬體協同設計的Java虛擬機器系統實現與效能優化. PhD thesis,中國科學院研究生院, 2011.
專利
敖琪,靳國傑,高翔。64位虛擬機器處理訪存指令的方法及裝置。發明專利,專利號:CN103970507A
傅傑,靳國傑,高翔。禁止已翻譯指令執行的方法、裝置和虛擬機器。發明專利,授權號:CN103744641B
傅傑,靳國傑,高翔,王劍。指令分派方法和直譯器。發明專利,申請號: 201610109699.4
傅傑,靳國傑,高翔,王劍。待編譯程式碼的過濾方法和裝置。發明專利,申請號: 201610317585.9
敖琪。Java虛擬機器中的軟體再生方法及裝置。發明專利,2015
敖琪。Java虛擬機器中的資料校驗方法及裝置。發明專利,2015
傅傑,靳國傑,高翔,王劍。直譯器訪存優化方法及裝置。發明專利,申請號:201510053110.9
傅傑,靳國傑,高翔,王劍。虛擬機器指令的解釋執行方法和裝置。發明專利,申請號:201510368529.3
傅傑,靳國傑,高翔,王劍。自適應動態編譯排程方法及裝置。發明專利,申請號:201510334274.9
傅傑,靳國傑,高翔,王劍。動態編譯排程方法及裝置。發明專利,申請號:201510341035.6
靳國傑。基於機器學習的虛擬機器即時編譯引數優化方法和裝置。發明專利,2014
傅傑,靳國傑,高翔,王劍。動態編譯方法及裝置。發明專利,申請號:201410727430.3
傅傑,靳國傑,高翔,王劍。熱點方法識別方法及裝置。發明專利,申請號:201410812093.8
王一光。基於常量預期的Java類庫優化方法和裝置。發明專利,2014
廖斌。虛擬機器中堆空間比例自適應調整的方法和裝置。發明專利,2014
靳國傑。一種面向龍芯Java虛擬機器的實現方法和裝置。發明專利,2013
靳國傑。64位虛擬機器處理超長分支跳轉的方法和裝置。發明專利,2013
廖斌。一種虛擬機器在NUMA架構中動態負載均衡的方法和裝置。發明專利,2013
歡迎加入
一、 參與開源活動
任何形式的參與都是歡迎的,包括Bug報告、程式碼Patch
二、 我們需要 Java虛擬機器開發和效能優化工程師:
崗位職責:
- 1、承擔龍芯平臺上的Java虛擬機器維護、開發與移植任務;
- 2、解決Java虛擬機器執行中的問題;
- 3、分析Java虛擬機器效能、進行效能測試、分析和優化;
崗位要求:
- 1、本科以上學歷,應屆生碩士以上學歷為佳,計算機相關專業;
- 2、熟悉Linux開發環境和C/C++語言;
- 3、熟悉處理器架構和計算機系統結構,熟悉至少一種指令集的組合語言(X86、MIPS、ARM等);
- 4、有OpenJDK等開源軟體相關開發經驗為佳;
- 5、熟悉編譯原理和編譯器相關技術為佳;
- 6、具有大型開源程式程式碼閱讀和分析能力,具有較強的實踐能力、溝通協調能力和複雜問題解決能力;
- 7、動手能力強,對技術有熱愛。
工作地點:北京
歡迎投簡歷至 [email protected] 或 [email protected]