1

如何设置 jmh 参数以便在不同的虚拟机上运行测试?

我试图将 -jvm //path 更改为虚拟机。

我收到此错误:

Error parsing command line:
 'X' is not a recognized option
<forked VM failed with exit code 1>
<stdout last='20 lines'>
</stdout>
<stderr last='20 lines'>
Error parsing command line:
'X' is not a recognized option
</stderr>
4

1 回答 1

5

JMH 依赖非标准的 JVM 设置来获得对 VM 的显式控制(请参阅带有 的确切命令行-v EXTRA)。值得注意的是,-XX:CompileCommand用于强制编译器内联/不内联特定方法。这些非标准选项仅在基于 HotSpot 的 JDK 中可用。

虽然您可以破解 JMH 以使用非 HotSpot 虚拟机,但没有人会测试基准基础架构的关键部分是否可靠地执行。换句话说,您正在进入灰色区域,您必须在基准测试中寻求非 HotSpot VM 供应商的帮助(如果许可证允许,还可能为他们的 VM 改造 JMH)。

于 2015-03-24T06:45:32.010 回答