我正在编写一个程序,无论如何都需要进行大量的数字处理。
通常,我可以选择通过{3-4加法或乘法和if-else检查或两个,也许是大约五个数字}计算一个值,或者从查找中读取值表。一切都是int。
与这种简单的操作相比,内存读取的速度有多快,粗略?
答案 0 :(得分:3)
这是不可能以任何有意义的方式回答的。这取决于实际代码,以及您正在使用的平台。作为一般规则,如果存在可能有效的简单本地优化,JIT编译器将为您执行这些优化。
您最好执行以下操作:
查找表的问题在于您正在缩短空间时间,空间使用量取决于应用程序使用的输入组合的数量。查找表方法只在有限的情况下得到回报。
答案 1 :(得分:3)
性能调优的基本原理; “别猜,测量它”