当前位置:   article > 正文

[ADAS预研笔记]算力计算方法研究_dmips和tops换算

dmips和tops换算

处理器分类

CPU:中央处理器

GPU:图形处理器,又称显示核心、视觉处理器、显示芯片

  • CPU有控制单元而GPU没有控制单元,需要CPU调度

NPU:神经网络处理器,又称AI芯片

  • 在NPU中,芯片都用 MAC阵列(乘积累加运算,MAC/Multiply Accumulate) 给神经网络加速,许多运算(如卷积运算、点积运算、矩阵运算、数字滤波器运算、乃至多项式的求值运算)都可以分解为数个MAC指令

虽然GPU比CPU更擅长并行计算,但GPU和CPU本质上都属于通用处理器;AI芯片则针对性强,其目的是高效率地执行AI算法,也称为AI加速器,并衍生出了许多称呼,如NPU(神经网络处理器)、TPU(谷歌的张量处理器)、DPU(AMD加速处理器)、BPU(地平线Brain Processing Unit)等;

AI芯片也可能是以某一模块的形式体现,如TI TDA4的MMA、特斯拉FSD的NNA、英伟达的Tensor Core等。

常见算力计算方法

GFLOPS

FLOPS(Floating-point operations per second): 浮点运算性能单位 ,即每秒浮点运算次数。

GFLOPS(GigaFLOPS):每秒一万亿(10^9)次浮点运算的次数。

浮点运算的精度有:双精度(FP64),单精度(FP32),半精度(FP16),FP8,BFloat16(16bit,动态表达范围和FP32一样,但是精度低),TF32(TensorFloat32)等

不同精度下的算力关系接近为倍数关系,并存在例外情况(如指令重叠可以使计算吞吐翻倍)。

单个CPU/GPU的GFLOPS算力计算:主频 x 每时钟周期浮点计算次数 x CPU/GPU中核的个数

CPU的每时钟周期浮点计算次数根据CPU指令集的不同而定:

指令集

每时钟周期的单精度运算次数

每时钟周期的双精度运算次数

SSE(128-bits)

8

4

AVX(256-bits)

16

8

AVX2(256-bits)

32

16

AVX512(512-bits)

64

32

nvidia GPU的Cuda核心每时钟周期双精度浮点计算次数一般为2(1次FMA运算);

nvidia GPU的TENSOR核心可实现混合精度计算(如乘法精度FP16,加法精度FP32),每个TENSOR核心提供一个4x4x4矩阵处理数组,每个时钟周期可执行64次浮点混合乘加(FMA)运算,1 Tensor Core ≈ 64 CUDA Core

TOPS

OPS(Operations Per Second): 整数运算性能单位 ,即每秒整数运算次数,衡量 乘积累加矩阵(Multiply Accumulate, MAC)运算算力 ,一次MAC运算(a = a + (b x c))包含乘加共 两次运算 。

TOPS(TeraOPS):每秒一万亿(10^12)次整数运算的次数。

整数运算的精度有:INT8,INT4

不同精度下的算力关系接近为倍数关系

TOPS = MAC运算单元数量 * 2 * 主频

以特斯拉芯片为例,含2个加速单元NNA,每个NNA的MAC单元数量为96x96,可得单个NNA算力TOPS = (96 * 96) * 2 * 2GHz = 36.86 TOPS

TOPS为整数运算次数,TFLOPS为浮点数运算次数, 相同精度 下:1 TOPS ≈ 1 TFLOPS

在某些情况下,还使用TOPS/W来作为评价处理器运算能力的一个性能指标,TOPS/W用于度量在1W功耗的情况下,处理器能进行多少万亿次操作。

DMIPS

DMIPS:Dhrystone Million Instructions executed Per Second,以运行Dhrystone程序为基准,每秒执行了多少百万条 指令 。

  • Dhrystone是测量处理器运算能力的最常见基准程序之一,常用于处理器的整型运算性能的测量,用C语言编写。

DMIPS/MHz 表示CPU在单位MHz的运行速度下可以执行多少个DMIPS。如5DMIPS/MHz,表示如果CPU运行在1MHz的频率下,每秒可执行5百万条指令,如果CPU运行在5MHz的频率下,每秒可执行25百万条指令。

CPU的DMIPS算力计算:核的数量 * 主频 * DMIPS/MHz 

如双核A53架构,主频为1.6GHz,性能为2.3DMIPS/MHz,算力DMIPS = 2 * 1660MHz * 2.3DMIPS/MHz = 7360 DMIPS

ARM处理器 Cortex-A 系列:

Core

Architecture

bits

I-Cache

D-Cache

DMIPS/MHz

ARM11

v7-A

32

4-64K

4-64K

1.25

Cortex-A5

ARMv7-A

32

4-64K

4-64K

1.57

Cortex-A7

ARMv7-A

32

8-64K

8-64K

1.9

Cortex-A8

ARMv7-A

32

16-32K

16-32K

2

Cortex-A9

ARMv7-A

32

16-64K

16-64K

2.5

Cortex-A12

ARMv7-A

32

3.5

Cortex-A15

ARMv7-A

32

32K

32K

3.4

Cortex-A17

ARMv7-A

32

32-64K

32K

3.2

Cortex-A32

ARMv8-A

32

8-64K

8-64K

2.3

Cortex-A35

ARMv8-A

32/64

8-64K

8-64K

2.5

Cortex-A53

ARMv8-A

32/64

8-64K

8-64K

2.3

Cortex-A55

ARMv8.2-A

32/64

64K

64K

2.7

Cortex-A57

ARMv8-A

32/64

48K

32K

4.1

Cortex-A72

ARMv8-A

32/64

48K

32K

4.7

Cortex-A73

ARMv8-A

32/64

64K

32-64k

4.8

Cortex-A75

ARMv8.2-A

32/64

64K

64k

5.2

ARM处理器 Cortex-M 系列:

Core

Architecture

bits

DMIPS/MHz

Cortex-M0

ARMv6M

32

0.9~0.99

Cortex-M3

ARMv6M

32

1.25~1.5

Cortex-M4

ARMv6M

32

1.25~1.52

Cortex-M7

ARMv7-M

32

2.14/2.55/3.23

不同算力指标的转换

  • 不同精度下的同一算力指标接近为倍数关系

  • 在 相同精度 下,可认为TOPS与TFLOPS相等

  • DMIPS一般是逻辑运算,TOPS是矩阵运算(乘加),两者没有直接关系

算力效率

决定算力真实值主要因素有:内存带宽,实际运行频率(即供电电压或温度),算法的batch size等。

地平线提出了 每秒准确识别帧率MAPS(Mean Accuracy-guaranteed Processing Speed) 概念和评估方法;

对比于算力(单位TOPS),每秒准确识别帧率(单位FPS)旨在反应更真实的性能指标。

图中,横轴反应帧率,纵轴反应精度,MAPS即确定了精度的上下界后的多边形面积

车用主流芯片的算力研究

目前的车用主流芯片算力汇总如下

芯片/处理器

TOPS

精度

架构

备注

地平线(BPU)

征程®2

4

伯努利1.0

征程®3

5

伯努利2.0

2核 BPU

征程®5

128

贝叶斯

征程®6

1000

未量产

Mobileye

EyeQ4 Mid

1.1

INT8

EyeQ4 High

2

INT8

EyeQ5 Mid

7

INT8

EyeQ5 High

16

INT8

EyeQ6 Light

5

INT8

EyeQ6 High

34

INT8

EyeQ Ultra

176

INT8

NVIDIA(Tensor Core)

Jetson Xavier NX 8GB

21

INT8

Volta

Jetson Xavier NX 16GB

21

INT8

Volta

Jetson AGX Xavier Industrial (JAXi)

30

INT8

Volta

10 TFLOPS | 30 TOPS

Jetson AGX Xavier (JAX)

32

INT8

Volta

10 TFLOPS | 32 TOPS

Jetson AGX Xavier 64GB (JAX 64GB)

32

INT8

Volta

10 TFLOPS | 32 TOPS

Jetson Orin Nano 4GB

20

INT8

Ampere

20 (Sparse) / 10 (Dense)

Jetson Orin Nano 8GB

40

INT8

Ampere

40 (Sparse) / 20 (Dense)

Jetson Orin NX 8GB

70

INT8

Ampere

70 (Sparse) / 35 (Dense)

Jetson Orin NX 16GB

100

INT8

Ampere

100 (Sparse) / 50 (Dense)

Jetson AGX Orin 32GB

200

INT8

Ampere

Sparse

Jetson AGX Orin 64GB

275

INT8

Ampere

Sparse

Thor

2000

INT8

未量产

AMD Xilinx(DPU)

Zynq UltraScale+(ZU2)

0.4

DPUCZDX8G

Zynq UltraScale+(ZU3)

0.9

DPUCZDX8G

Zynq UltraScale+(ZU5)

1.4

DPUCZDX8G

Zynq UltraScale+(ZU7EV)

2.7

DPUCZDX8G

Zynq UltraScale+(ZU9)

4.1

DPUCZDX8G

Alveo U280

4.8

DPUCAHX8L 单核

Alveo U280

8

DPUCAHX8L 双核

Alveo U50

7.37

DPUCAHX8H(2 cores (3 PEs + 3 PEs))

Alveo U50LV

11.26

DPUCAHX8H(2 cores (5 PEs + 5 PEs))

Alveo U280

17.2

DPUCAHX8H(3 cores (4 PEs + 5 PEs + 5 PEs))

Alveo U55C

14.74

DPUCAHX8H(3 cores (3 PEs + 4 PEs + 5 PEs))

VCK5000(8pe_normal)

76.8

DPUCVDX8H

VCK5000(6pe_dwc)

57.6

DPUCVDX8H

VCK5000(6pe_misc)

57.6

DPUCVDX8H

VCK5000(4pe_miscdwc)

38.4

DPUCVDX8H

VCK5000(2pe_miscdwc)

19.2

DPUCVDX8H

TI(MMA, Deep-learning matrix multiply accelerator)

TDA4VM

8

INT8

TDA4VMp

24

INT8

TI roadmap提供,未量产

黑芝麻

华山二号 A1000L

16

INT8

16 TOPS (int8), 30 TOPS (int4)

华山二号 A1000

58

INT8

58 TOPS (int8), 116 TOPS (int4)

华山二号 A1000 Pro

106

INT8

106 TOPS (int8), 196 TOPS (int4) ,未量产

INTEL NERVANA

NNP I-1100

50

INT8

NNP I-1300

170

INT8

NNP T

119

INT8

INTEL(AI Tensor 模块)

Stratix 10 NX FPGA

143

INT8

Tesla FSD(NNA)

FSD 3.0

72

INT8

2 NNA,36.8x2

华为海思

昇腾(HUAWEI Ascend)310

16

INT8

华为达芬奇

16TOPS(INT8), 8TOPS(FP16)

昇腾(HUAWEI Ascend)910

640

INT8

华为达芬奇

640TOPS(INT8), 320TOPS(FP16)

瑞萨

R-Car-V3H

3.7

R-Car-V3U

60

R-Car-V4H

34

高通

Snapdragon 820

未提及

Snapdragon 602

未提及

芯驰

V9

未提及

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/245462
推荐阅读
相关标签
  

闽ICP备14008679号