![]() |
1
21
在速度方面,GPU针对浮动进行了优化。我更熟悉NVIDIA硬件,但在当前的一代硬件中,每8个SP FPU就有1个DP FPU。在下一代硬件中,预计它们将有更多的1比2的比率。 我的建议是看看你的算法是否需要双精度。许多算法实际上并不需要额外的位。运行一些测试来确定通过单一精度得到的平均错误,并找出它是否重要。如果没有的话,就用单人房。 如果您的算法纯粹是用于图形,那么您可能不需要双精度。如果您正在进行通用计算,请考虑使用opencl或cuda。 |
![]() |
2
5
现代图形卡可以进行许多优化,例如:它们甚至可以在24位浮点上操作。据我所知,内部图形卡不使用双打,因为它们是为速度而设计的,不一定是精确的。 从进入 GPGPU 在维基百科上:
|
![]() |
3
4
大多数GPU根本不支持双浮点数。最近(这一代)增加了支持,但并非无处不在:
其他的一切,你只是没有双重支持。 所以…如果你不需要的话,你绝对不应该用双倍的。 |
![]() |
4
3
在dx11之前不支持双精度渲染:(ie shader model 5) http://msdn.microsoft.com/en-us/library/ee418354(VS.85).aspx 我怀疑OpenGL会是一样的。 |