今日话题:蚂蚁 Jeandle
8 月 13 日,蚂蚁集团宣布开源基于 LLVM 的 JVM JIT 编译器 Jeandle(意为「筋斗云」,希望它能让 Java 如腾云驾雾般瞬息万里)。
Jeandle 是基于 OpenJDK Hotspot JVM 的全新 Just-In-Time(简称 JIT,即时)编译器,利用 LLVM 进行编译优化与代码生成,将 LLVM 的性能优势和生态优势引入 JVM 中。
https://github.com/jeandle/jeandle-jdk
https://github.com/jeandle/jeandle-llvm
这篇文章是 Jeandle 的「施工日记」,知友@刘陶峰(蚂蚁 JDK 团队)进一步解释了他们为什么要拆掉 Java 世界里的 C2「老爷车」;而 Jeandle 的目标也不是立马取代 C2,是让用户多一个选择;它以后会支持「按需编译」,甚至探索「编译即服务」等新场景。
@刘陶峰
蚂蚁 JDK 团队
大家好,我是蚂蚁 JDK 团队的刘陶峰。
没有想到 Jeandle 项目的开源引发了这么多讨论和关注,首先感谢大家的关注,在这里我对我们的项目做出更进一步的介绍,也可以回答大家的一部分疑惑。
JVM 中的 C2 编译器被用来优化执行频率最高的Java 方法,对 Java 应用的性能影响还是比较大的。但是 C2 经过许多年的演进,遗留代码的维护越来越复杂,@开心的小福 也提到 C2 代码实在是难以阅读。所以近几年 C2 已经几乎没有什么大的特性引入。但是自 C2 诞生以来,编译技术已经发展了很多,对于 Java 的 JIT 编译来说,有很多新东西可以做,最好的例子便是@编译船夫 老师提到的 Partial Escape Analysis、还有更好的 Inline 算法等。同时硬件也在迭代,C2 有很多新硬件特性的支持也不够完善。
我们希望提供一个更为现代、历史负担更小的 JVM的 JIT 编译平台,所以有了 Jeandle。
我们基于 LLVM 编译框架来做这样一个新的编译器,看重的是 LLVM 的可维护性、扩展性,优秀的基础编译优化能力(循环优化等),还有丰富的生态。
Jeandle 除了 LLVM 提供的基础优化能力之外,也会拥有针对 JVM 的比 C2 更新的优化手段;未来新的编译技术可以快速实现并验证,而新的硬件特性会有社区提供支持。我们预期 Jeandle 将会在大多数场景获得比 C2 更好的性能,并且很可能会随着我们的迭代,不断的扩大优势。
但是 LLVM 也有一个不足是它的编译速度比较慢,我们未来会通过 JIT warmup、JIT cache 等手段来尽可能降低编译消耗和应用预热,所以 LLVM 编译速度慢的劣势将被大幅掩盖。
并且我们在很长一段时间内都并不是想让 Jeandle 把 C2 替代掉, Jeandle 会和 C2 做到兼容,具体用哪个、怎么用,可以由用户来决定。我们未来会提供一些分析手段来帮助用户选择 Jeandle 会编译哪些函数,与用户对于峰值性能的追求共同决定他们的 Java 应用如何使用 JIT 编译。同时 Jeandle 的性能优势也比 C2 更适合那些不是很在意编译消耗的场景,比如 JIT as a Service,这个场景也是我们未来想要做的。
LLVM 的生态可以带给我们很多其他的好处,比如我们可以把 JNI 代码、甚至 JVM 本身的代码转为 LLVM IR,和 Jeandle JIT 结合起来做优化。还有比如 Scala、Kotlin 等 bytecode 生态语言、终端场景、WASM 甚至 GPU 后端等我们还没有明确想法的想象空间,也欢迎感兴趣的朋友一起来讨论。
说了这么多,我们当前还是更需要专注于 Jeandle 本身的编译能力。
大家也看到目前 Jeandle 还是比较前期的阶段,还在做 GC 相关的适配工作,计划在今年完成功能支持,在明年聚焦优化能力,逐步建立对于 C2 的优势,并且我们也坚信长期主义。
既然开源了,就得虚心接受大家的建议和意见,保持开放包容,欢迎每个感兴趣的朋友加入。 Jeandle 的所有开发工作都将会在 Github 进行,欢迎大家的关注:
https://github.com/jeandle/jeandle-jdk
https://github.com/jeandle/jeandle-llvm
阅读更多
世界人形机器人运动会有哪些看点?全球首个手机通用 Agent 体验如何?丨知乎 AI 周报🚀 AI 产品扶持计划:
知乎为AI产品提供定制宣发支持,了解/报名请戳:知乎「AI 新品非正式发布现场」扶持计划
🚀 知乎 AI 社群:
如果你是泛 AI 爱好者,对 AI 资讯感兴趣,并愿意认真测评、为开发者反馈真实意见或交流沟通。欢迎扫码加入知乎 AI 社群↓,我们将不定时送上 AI 热点问答和产品测试活动。
知乎AI交流群
让一部分开发者先走起来
🚀 知乎科技账号正式登陆 X:
👉 https://x.com/ZhihuFrontier,聚焦「技术 × 观点」的跨语境对话
🚀「进击的具身智能」圆桌欢迎围观:
👉 在知乎搜索「机器人」或「具身智能」即可围观圆桌,优质回答会有额外流量扶持。

