我正在寻找信息,如何在特斯拉gpu中实现双精度硬件。我已经读到,两个流处理器正在研究单双精度值,但我没有找到任何来自nvidia的官方论文。
提前谢谢。PPS为什么大多数图形处理器只进行单精度计算(因为颜色可以存储为RR.GG.BB.TT,其中每个字符都是一个8位的值)?
PS google it for me没有帮助
发布于 2010-08-12 07:51:54
不支持double不是像你说的(RR.GG.BB.TT)那样的存储格式问题,而是有本机内部(以及专用硬件)来处理double上的操作(加法、多路等)。
无论如何,大多数GPU只支持单精度,因为大部分GPU市场都在游戏市场,而玩家不需要双精度。此外,大多数游戏玩家都在寻找良好的性价比。实现DP在晶体管预算(和TDP)方面是昂贵的,如果游戏不使用双精度,这是没有意义的。
这就是为什么您会看到高端ATI GPU支持双倍(HD 59xx和HD 58xx,但不支持HD 57xx或更低的中端和入门级GPU)的原因。
@karlphillip:是的,你是对的,像GTX260这样的GPU的IEEE754 (某种程度上),但是当前的ATI和NVIDIA代在高端部件上支持IEEE 754-2008。
关于硬件实现,这是IHV通常不会透露的秘密:)
发布于 2010-08-12 04:07:02
特斯拉不是GPU,它是一系列以各种高端GPU为特色的协处理器。如果你的特斯拉内部有费米GPU,它应该有很好的双精度性能。
请参阅第9页的Fermi white paper。
单精度对于常规的GPU计算更加重要,因为它对于此类应用程序来说已经足够了。
发布于 2010-08-12 03:58:34
根据Wiki的说法
对于双精度(仅在GTX 26012等较新的GPU中支持),与IEEE754标准有一些偏差:取整到最近的偶数是倒数、除法和平方根的唯一支持舍入模式。在单精度下,不支持去规格化和信令NaNs;仅支持两种IEEE舍入模式(斩波和舍入到最近的偶数),并且这些模式是基于每个指令而不是在控制字中指定的;除法/平方根的精度略低于单精度。
就这样,他们实现了IEEE 754的大部分规范,但实际的实现可能是私有的和秘密的。
https://stackoverflow.com/questions/3459218
复制相似问题