如何将LLVM集成到JVM运行时

时间:2018-07-08 12:11:20

标签: java jvm llvm jvm-hotspot

是否可以将LLVM与JVM Runtime集成。 我对这种性能优化感兴趣 Azul Zing已经做到了,但是可以使用Oracle的JVM或OpenJDK吗?

2 个答案:

答案 0 :(得分:1)

您只需开始学习/使用vm格言。

  

用于多语言世界的通用VM。我们的使命:提高开发效率并在任何地方更快地运行程序。

(不要与graal compiler(一种Java到本地的编译器,自Java 9起已经随JDK一起使用)混在一起)

换句话说:我们已经在前进。

答案 1 :(得分:1)

将LLVM与OpenJDK或Oracle JDK集成不太可能。 (从技术角度来看,OpenJDK或Oracle JDK几乎都是同一件事。)

您需要重复Azul团队所做的所有开发工作,以使其基于LLVM的编译器与JVM一起使用。这对您来说不太现实。

  

我对这种性能优化感兴趣,Azul Zing已经做到了,但是可以使用Oracle的JVM或OpenJDK吗?

1 可能通过修改现有的OpenJDK代码库来实现这些优化。

GraalVM看起来像另一个选择。 (GhostCat在他的answer中没有提到GraalVM支持基于LLVM的编译器。因此,如果您有针对Java的基于LLVM的编译器,则可以将其用作优化器工作的基础。)


1-尚不清楚Azul是出于技术原因还是出于许可原因,还是同时出于这两种原因而采用LLVM方法。如果他们采用修改OpenJDK JIT编译器的方法,则必须发布其源代码。