已知 0<=x<=1 的 square_root(x) 的快速近似

Fast approximation of square_root(x) with known 0<=x<=1

本文关键字:lt 已知 square root      更新时间:2023-10-16

如果我知道x<=1,如何近似sqrt(float32bit x)

必须有一些技巧来利用范围x<=1.

返回结果不必精确,最大误差可能<0.001
0.001只是一个神奇的数字,你可以改变它。

我不介意语言,但我更喜欢C++,在 CPU(不是 GPU)中。
我认为显式公式比表查找更好。

它对我的3D游戏中的粒子很有用(VS 2015 + Ogre3D + Bullet),我找不到任何关于它的线索。
我怀疑反对票风暴的原因是它看起来像是任务/面试?
...还是解决方案已经众所周知?

平方根通常通过FSQRT计算,FSQRT越来越快。这是一个你几乎无法击败的单一指令。例如,快速平方根反比将无济于事,除非您可以直接使用其结果。如果您必须再次反转它,仅 FDIV 就花费的时间与 FSQRT 大致相同。