每秒浮点运算次数

科技工作者之家 2020-11-17

每秒浮点运算次数(FLOP),按照IEEE 754标,FLOP被定义为单精度(32位)或者双精度(64位)数加法或者乘法.

介绍让我们看一下怎样基于其峰值FLOPS来对比DSP、GPU和FPGA体系结构的性能。在最大工作频率下,通过加法器和乘法器求和积来确定峰值FLOPS比。这代表了计算的理论极限,实际中很难获得,因为一般不可能实现所有时间、所有计算单元上都保持运行的算法。但确实有实用的对比指标。

首先,我们考虑DSP GFLOPS性能。对此,我们选择德州仪器公司的TMS320C667xDSP作为实例器件。这一DSP包括了8个DSP内核,每一内核含有两个处理子系统。每一子系统包括4个单精度浮点加法器和4个单精度浮点乘法器。总共有64个加法器和64个乘法器。最快的能够运行在1.25GHz,峰值性能达到160Giga FLOPS(GFLOPS)。

例子GPU是非常流行的器件,特别是图像处理应用。功能最强大的一种GPU是NVIDATeslaK20。这一GPU基于CUDA内核,每一个都有一个浮点乘法加法单元,在单精度浮点配置时,每个时钟周期能够执行一次。毎个流多处理器(SMX)处理引擎中有192个CUDA内核。K20实际上含有15个SMX,能够使用其中的13个(例如,由于工艺产出问题)。这样,总共有2496个CUDA内核,每一时钟周期2GFLOP,最大运行频率是706MHz。这样,峰值单精度浮点性能达到了3520GFLOP。

Altera等FPGA供应商在其FPGA中提供硬核浮点引擎。在整个可编程逻辑结构中,嵌入的硬核DSP模块含有一个单精度浮点乘法器和加法器。Altera中端Arria10FPGA系列的中等规模FPGA有一款10AX066。这一器件有1678个dsp模块,每个都能够在每一时钟周期中执行并没有使用可编程逻辑,而是设计的其他部分使用了可编程逻辑,例如,数据控制和调度电路、I/O接口、内部和外部存储器接口,以及其他面的功能1。

本词条内容贡献者为:

王慧维 - 副研究员 - 西南大学

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。