通过 .sh 脚本对 java jar 进行基准测试
Benchmarking a java jar by .sh script
我有一个 Java Fork/Join 应用程序,我想对其进行 30 次基准测试。程序的执行 returns 作为输出需要计算一些东西的时间。但是,我阅读了有关预热 JVM 的信息,但不确定如何执行此操作。我通过以下 .sh 脚本执行此操作:
for iteration in {1..30}
do
java -jar program.jar >> data.csv
done
现在我的问题是,第一个 X 运行s 会预热 JVM 还是它不能优化程序,因为我为每个 运行 创建了一个新进程?如果是这样,我是否需要将 for 循环放入程序本身,还是有其他方法?
节目中需要热身。标准 JVM 不会记住它在调用之间所做的任何 JIT 优化。
我有一个 Java Fork/Join 应用程序,我想对其进行 30 次基准测试。程序的执行 returns 作为输出需要计算一些东西的时间。但是,我阅读了有关预热 JVM 的信息,但不确定如何执行此操作。我通过以下 .sh 脚本执行此操作:
for iteration in {1..30}
do
java -jar program.jar >> data.csv
done
现在我的问题是,第一个 X 运行s 会预热 JVM 还是它不能优化程序,因为我为每个 运行 创建了一个新进程?如果是这样,我是否需要将 for 循环放入程序本身,还是有其他方法?
节目中需要热身。标准 JVM 不会记住它在调用之间所做的任何 JIT 优化。