java - 如何禁用 JIT 编译器的内部函数使用?

标签 java jvm jit

我正在 JVM 上做一些性能测试,我想衡量内在函数使用的影响。

我想在不进入解释模式的情况下为某些方法禁用内部函数的 JIT 使用。有没有办法做到这一点 ?谢谢

最佳答案

使用

java -XX:+UnlockDiagnosticVMOptions -XX:DisableIntrinsic=_<method_name>[,...]

例如

java -XX:+UnlockDiagnosticVMOptions -XX:DisableIntrinsic=_equals,_hashCode

正如@apangin 所注意到的,您可以首先使用 -XX:+PrintIntrinsics 来查看哪些方法实际上在您的测试中被内化并禁用它们。

关于java - 如何禁用 JIT 编译器的内部函数使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30370959/

相关文章:

java - SQL Server与spring的连接

java - 在 if 语句中运行

java - java.lang.Void 和 void 有什么区别?

java - 多重继承和类对象

python-3.x - numba jitclass 中的对象比较

java - JPanel 上的 JLabel 定位

Java在try-catch-finally机制中的返回值

java - 缺少内存 : size of young generation includes only one survivor space

ios - MonoTouch 链接器无法解析 System.Void System.Console::set_ForegroundColor(System.ConsoleColor)

python - 当 python 类 jitclass 包含自身 jitclass 类时,如何使其兼容?