800SP怒吼!RV770核心HD4850全面评测
第二章/第七节 1TFLOPS轻松达成 双精度更强
NVIDIA怪兽级的GTX200核心有一个最大的遗憾,那就是浮点运算能力未能突破1TFLOPS,这要原因就在于这颗GPU太过复杂,频率提升困难,流处理器频率甚至比当初G80核心还要低一些,最终止步于933GFLOPS。
而AMD想要突破1TFLOPS的浮点运算能力就简单多了,RV770核心本身拥有高达800个流处理器,每个流处理器可以同时执行一条乘加指令(Multiplu-Add,也就是同时执行一条乘法和一条加法指令),这样其理论浮点运算能力就是:
HD4850=625×2×800=1TFLOPS
HD4870=750×2×800=1.2TFLOPS
AMD默认频率,恰好让两款显卡的浮点运算能力都是整数,频率较低的HD4850正好达到了1TFLOPS。对于GPU并行计算来说,指令复杂度远不如3D图形渲染,因此实际运算能力更接近于理论值,但前提是配套软件和程序开发必须跟上。
高精度科学计算(如工程分析、财政计算、计算机模拟)对于要求处理器必须支持双精度64Bit浮点运算,最新的GTX200与RV770都能提供支持,但是效能却相差较大:GTX200在进行双精度64Bit浮点运算时的效率只有单精度32Bit浮点的八分之一,而RV770的64Bit浮点运算能力是32Bit浮点的五分之一,差距源于架构:
GTX200核心的一个SM(8个流处理器)可以进行一次双精度运算
RV770核心的一个Shader(5个流处理器)可以进行一次双精度运算
GTX280双精度浮点运算能力=240×3×1296÷8=117GFLOPS
HD4850双精度浮点运算能力=800×2×625÷5=200GFLOPS
HD4870双精度浮点运算能力=800×2×750÷5=240GFLOPS
可以看出,虽然两颗GPU的规模和造价不在同一数量级,但是HD4870的双精度浮点运算能力居然高达GTX280的两倍之多,这对于需要高精度的科学计算领域是个不小的诱惑。现在,谁还敢小视ATI GPU架构的威力呢?