【发布时间】:2018-02-19 13:02:49
【问题描述】:
我想要一个运行Scalabench 的不同基准的java 应用程序。我想确保在开始测量基准测试运行多长时间之前预热 JVM。我应该如何从我的 java 应用程序运行这些基准测试?
我首先想到的是在 for 循环中执行 Scalabench 的 jar
Process proc = Runtime.getRuntime().exec("java -jar scalabench.jar testname");
但我不认为它是否有助于 JVM 预热,因为我认为 JVM 会在 for 循环的每次迭代中加载 jar。
下一种可能性是将scalabench.jar 作为依赖项添加到我的项目中,并在for 循环中调用其main() 方法来运行测试。我认为在这种情况下,预热 JVM 应该不是问题,因为它在我的应用程序中运行,并且在每次迭代后不会被杀死。
奖励:我可以使用JMH 来测量来自 Scalabench 的测试吗?
【问题讨论】: