如何计算 GPGPU 硬件中的峰值 FLOPS?

Mat*_*fel 4 gpu gpgpu opencl amd-processor

我想计算图形硬件的理论峰值性能。嗯,实际上我想了解计算。

以 AMD Radeon HD 6670 为例:AMD 加速并行处理编程指南 ( http://developer.amd.com/download/AMD_Accelerated_Parallel_Processing_OpenCL_Programming_Guide.pdf ) 在第 6-42 页中间告诉我要获取流核心的数量 ( 96),将其乘以每个流核心每个周期的操作数(我们采用单精度 ADD,即 5),然后乘以核心时钟 (800 MHz)。结果是:

96 * 5 FLOPS * 800MHz = 384,000 MFLOPS = 384 GFLOPS

同一份文档在 D-4 页上告诉我,该特定设备的峰值吞吐量为 768 GFLOPS,是我刚刚计算的两倍。维基百科和 AMD 主页的说法相同。

所以我的问题是:我在哪里遗漏了二的因数?

dde*_*dov 6

我不确定 AMD 硬件,但我记得 NVIDIA 将 MAD(乘加)操作算作两次触发器。由于 MAD 在一个周期内执行,因此理论性能乘以 2。