java - 如何找出运行 java 程序时使用的 JIT 的名称

标签 java jit

是否有任何命令或类似的东西可以知道运行 java 程序时使用的 JIT 名称?

最佳答案

(此答案适用于 OpenJDK 热点)

您应该能够使用-XX:+LogCompilation 来获取包含以下行的日志文件(hotspot_pid< PID>.log,在启动目录中)

<nmethod compile_id='2' compiler='C1' level='3' ...

注意:LogCompilation 是一个诊断 VM 选项。所以你需要通过在它前面加上 -XX:+UnlockDiagnosticVMOptions。运行类文件的脚本行如下所示:

java -XX:+UnlockDiagnosticVMOptions -XX:LogCompilation MyClass

请注意,在一次执行期间可能有多个不同的 JIT 在运行。

关于java - 如何找出运行 java 程序时使用的 JIT 的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29207160/

相关文章:

java - Java Math.abs(int)优化,为什么此代码慢6倍?

java - JIT 优化版本的 Eclipse?

java - 访问一个java文件中的另一个java文件

java - 输入长文本后,具有自定义 View 的 AlertDialog 消失在软键盘后面

ejb - 不支持的类版本错误

java - thymeleaf :class condition

com.mysql.jdbc.ConnectionImpl.getServerCharset 处的 java.lang.NullPointerException(ConnectionImpl.java :3005)

optimization - C++CLI 是否优化?

cuda - 是否可以对 CUDA 内核进行即时 (jit) 编译?

assemblies - CLR 4.0 内联策略? (可能是 MethodImplOptions.NoInlining 的错误)