作者:六道轮回2602906501 | 来源:互联网 | 2023-05-26 15:38
我基本上是在制作一个Java程序,它必须非常快速地运行大量计算(每帧,目标是至少30 f/s).这些将主要是三角函数和幂函数.我问的问题是:哪个更快:使用已经提供的Java Math函数?或者编写我自己的函数来运行?
1> Louis Wasser..:
内置Math
函数将极难被击败,因为它们中的大多数具有特殊的JVM魔法,使得它们使用硬件内在函数.你可以想象通过大量的工作来消除准确性,从而击败其中的一些,但你不太可能打败其他公用事业.Math
虽然我同意一般评估,但创建自定义函数实现可能不一定需要大量工作,这取决于程序员的技能和对函数的限制.较低的准确度只是一种可能的折衷,其他只支持有限的参数范围[在三角函数的情况下特别有用]而不必处理特殊情况[对于产生批次的`pow()`非常有用特殊情况].