Intro
我计划用Java编写一个算法(这样我就可以学习这种语言),运行时应该在几秒钟左右。这个小算法将被称为bash的大约10,000倍。
问题
发布于 2017-05-11 20:43:14
很难预测在运行时会发生什么优化,但是如果进程是在每次调用中新启动的,并且只运行几秒钟,那么几乎没有什么区别。编译样式的优化不会受到影响,但运行时优化可能会受到影响。但是,JVM本身的启动时间将使无法获得任何好处。
此外,如果程序本身很小,而且算法是正确的,运行时优化器可能几乎什么也做不了。
现阶段的微观优化是没有成效的。您是否有任何测量,在整个过程的每一个部分需要多长时间?如果没有,您如何知道是否有任何帮助,甚至有任何瓶颈?
在这种情况下,最好的选择是消除JVM启动时间作为一个因素。例如,将Java程序设置为服务器,并通过服务调用从shell脚本调用它。程序中最慢的部分消失了,JVM可以通过多次使用积累统计信息。
https://stackoverflow.com/questions/43924963
复制相似问题