我有一个提供GFLOPS峰值规格的设备,我想测量我的程序远离它的程度。由于我使用的所有数据都是双精度,我应该将操作数乘以2得到GLOPS值并进行比较吗?
答案 0 :(得分:2)
没有。 1个双精度浮点运算仍然是一个浮点运算。
大多数GPU处理双精度数据的速度比单精度慢,因此峰值GFLOPS应该有两种规格。一个峰值单精度GFLOPS规格,一个峰值双精度GFLOPS规格。有时它会进一步破碎,因此(例如)峰值分割性能与峰值添加性能分开列出。
答案 1 :(得分:0)
“......,我应该将操作数乘以2得到GLOPS值并进行比较吗?”
不,不是这些卡中的任何一张(只有一张):http://www.geeks3d.com/20140305/amd-radeon-and-nvidia-geforce-fp32-fp64-gflops-table-computing/。
请注意,在大多数情况下,比例从1/24到1/3不等,同时请注意“工作站图形卡”的比率为1/2 - 它是专门为改善DP性能而设计的。
您需要阅读卡中硬件的规格,并确定从SP切换到DP时应该达到的性能。将额外的精度加载到寄存器(硬件将在其中执行操作的存储器)以及在每次操作之后检索额外的精度将有一小部分额外的开销。