服务器硬件知识-CPU/GPU的算力FLOPS

2023-9-11 1,244 9/11

CPU算力

CPU的算力一般由FLOPS表示,即floating-point operations per second,每秒浮点运算次数。

计算公式

Flops=CPU核心数*单核主频*CPU单个周期浮点计算能力。

其中核心数和单核主频比较好理解,重点在于CPU的单个周期浮点计算能力,不同指令集相差很大。

服务器硬件知识-CPU/GPU的算力FLOPS

目前三代志强及四代至强普遍支持了AVX512指令集,CPU的单周期浮点计算能力大大加强,计算公式以intel Gold 6348(28C 56T 2.6GHz)简单举例:

服务器硬件知识-CPU/GPU的算力FLOPS

查表或者计算单周期的浮点运算次数为:

6348 CPU单周期双精度浮点计算能力=2(FMA数量)*2*512/64=32

6348 CPU单周期单精度浮点计算能力=2(FMA数量)*2*512/32=64

所以6348的每秒浮点运算能力为:

双精度浮点:28*(2.6*10^9)*32=2,329,600,000,000Flops=2.3296TFLOPS

(AMD EPYC的计算公式的双精度浮点计算能力16,即32替换为16)

单精度浮点:28*(2.6*10^9)*64=4,659,200,000,000Flops=4.6592TFLOPS

换算关系

一个MFLOPS(megaFLOPS)等于每秒一佰万(=10^6)次的浮点运算;

一个GFLOPS(gigaFLOPS)等于每秒十亿(=10^9)次的浮点运算;

一个TFLOPS(teraFLOPS)等于每秒一万亿(=10^12)次的浮点运算;

一个PFLOPS(petaFLOPS)等于每秒一千万亿(=10^15)次的浮点运算;

一个EFLOPS(exaFLOPS)等于每秒一佰京(=10^18)次的浮点运算;

一个ZFLOPS(zettaFLOPS)等于每秒十万京(=10^21)次的浮点运算。

TIPS

一般在没有特别明确算力算法的前提下,我们默认都是按照双精度去测算算力能力的。

FLOPS只是使用最多最广泛的CPU算力指标,还有诸如Integer Math、Floating Point Math、Find Prime Numbers、Random String Sorting等等指标,在不同的专业应用各不相同,具体的指标可以直接从网页端查看。点此直达

GPU的算力

GPU的算力单位和CPU一样,都以Flops表示,以NVIDIA A100为例,可以直接从NVIDIA官网查找:

服务器硬件知识-CPU/GPU的算力FLOPS服务器硬件知识-CPU/GPU的算力FLOPS

其中FP64为双精度浮点算力,FP32为单精度浮点算力。

计算公式

GPU单精度FP32算力=CUDA核心数*频率*每核心单周期浮点计算系数(数值为2)

所以以A100为例:

A100有6912个CUDA核心,boost频率为1.41GHz

A100的FP32=6912*1.41*2=19491.84GFlops=19.5TFlops

A100的FP64=19.5TFlops/2=9.7TFlops。

详细的GPU参数,如CUDA核心,boost频率等,可直接 点此查看

 

- THE END -

Tenkms

11月30日23:51

最后修改:2023年11月30日
0

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论