自动驾驶芯片性能评价指标:DMIPS,TOPS
如果你经常和DMIPS,TOPS,GFLOPS等评价芯片性能的单位打交道,又不知道这些单位意味着什么,那看这篇文章就对了
TOPS
TOPS是Tera Operation Per Second的缩写,表示每秒钟可以进行的操作数量,用于衡量自动驾驶的算力,有时还会拿TOPS/W来说明功耗,即单位功耗下的运算能力。
众所周知,CV算法会消耗很大一部分自动驾驶芯片的算力,在车上堆摄像头的同时也需要堆TOPS,那么视觉处理能力为什么用TOPS评估呢?通常计算机视觉算法是基于卷积神经网络的,而卷积神经网络的本质是累积累加算法(Multiply Accumulate)。
上图是一个非常生动的卷积过程
MAC
乘积累加运算MAC(Multiply Accumulate)是在数字信号处理器或一些微处理器中的特殊运算。实现此运算操作的硬件电路单元,被称为“乘数累加器”。这种运算的操作,是将乘法的乘积结果和累加器 A 的值相加,再存入累加器:
若没有使用 MAC 指令,上述的程序可能需要二个指令,但 MAC 指令可以使用一个指令完成。而许多运算(例如卷积运算、点积运算、矩阵运算、数字滤波器运算、乃至多项式的求值运算)都可以分解为数个 MAC 指令,因此可以提高上述运算的效率。
MAC矩阵是AI芯片的核心,但这是很成熟的架构,在机器学习大背景下焕发了新春。
上图为特斯拉自动驾驶芯片架构,占很大一部分面积的是处理神经网络的NPU。
总体设计相对简单。每个周期,从SRAM读取256byte字节的激活数据和另外128byte的权重数据到MAC阵列中。每个NPU拥有96x96 MAC,另外在精度方面,乘法为8x8bit,加法为32bit,两种数据类型的选择很大程度上取决于他们降功耗的努力(例如32bitFP加法器的功耗大约是32bit整数加法器的9倍)。在2GHz的工作频率下,每个NPU的算力为36.86TOPS,FSD芯片峰值算力为73.7TOPS。在点积运算之后,数据转移到激活硬件,最后写入缓存,以汇总结果。FSD支持许多激活功能,包括ReLU、SiLU和TanH。每个周期,将128byte的数据写回SRAM。所有操作同时且连续地进行,重复直到完成整个计算。
在每个周期中,将在整个MAC阵列中广播输入数据的底行和权重的最右列。每个单元独立执行适当的乘法累加运算。在下一个循环中,将输入数据向下推一行,而将权重网格向右推一行。在整个数组中广播输入数据的最底行和权重的最右列,重复此过程。单元继续独立执行其操作。全点积卷积结束时,MAC阵列一次向下移动一行96个元素,这也是SIMD单元的吞吐量。
TOPS计算
回到正题,TOPS是MAC在1秒内操作的数,计算公式为:
TOPS = MAC矩阵行 * MAC矩阵列 * 2 * 主频
每个NPU的为96 * 96 * 2 * 2G = 36.864TOPS
DMIPS
DMIPS是Dhrystone Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。
CPU执行指令
程序编译和运行过程中,代码会经过编译器转化成机器可以理解的指令。CPU每个指令周期分为取指令、指令译码、指令执行三个过程,只有在指令执行时才真正有效,在取指令和指令译码时,CPU时间是白白浪费的,而同样的运算在不同架构不同指令集需要的指令数也不一样。
除了 Instruction Cycle 这个指令周期,在 CPU 里面我们还会提到另外两个常见的 Cycle。一个叫 Machine Cycle,机器周期或者 CPU 周期。CPU 内部的操作速度很快,但是访问内存的速度却要慢很多。每一条指令都需要从内存里面加载而来,所以我们一般把从内存里面读取一条指令的最短时间,称为 CPU 周期。
还有一个是Clock Cycle,也就是时钟周期以及我们机器的主频。一个 CPU 周期,通常会由几个时钟周期累积起来。一个 CPU 周期的时间,就是这几个 Clock Cycle 的总和。
对于一个指令周期来说,我们取出一条指令,然后执行它,至少需要两个 CPU 周期。取出指令至少需要一个 CPU 周期,执行至少也需要一个 CPU 周期,复杂的指令则需要更多的 CPU 周期。
从上图可以看出,时钟周期是固定的,但是每个指令执行用时不同,所以需要提高CPU执行效率。
当前提升CPU性能的方法有:流水线技术、流水线冒险/预测、超标量Superscalar、超长指令字设计VLIW、单指令多数据流SIMD等技术(将来慢慢介绍)。尤其是SIMD 技术,是一种“指令级并行”的加速方案,或者说是一种“数据并行”的加速方案。在处理向量计算的情况下,同一个向量的不同维度之间的计算是相互独立的。而CPU 里的寄存器,又能放得下多条数据。于是,我们可以一次性取出多条数据,交给 CPU 并行计算。
DMIPS
如前文所言,不同的CPU指令集不同、硬件加速器不同、CPU架构不同,导致不能简单的用核心数和CPU主频来评估性能,所以出了一个跑分算法叫Dhrystone:程序用来测试CPU整数计算性能,其输出结果为每秒钟运行Dhrystone的次数,即每秒钟迭代主循环的次数。
Dhrystone所代表的处理器分数比MIPS(million instructions per second 每秒钟执行的指令数)更有意义,因为在不同的指令系统中,比如RISC(Reduced Instruction Set Computer精简指令集计算机)系统和CISC(Complex Instruction Set Computer复杂指令集计算机)系统,Dhrystone的得分更能表现其真正性能。
由于在一个高级任务中,RISC可能需要更多的指令,但是其执行的时间可能会比在CISC中的一条指令还要快。由于Dhrystone仅将每秒钟程序执行次数作为指标,所以可以让不同的机器用其自身的方式去完成任务。
另一项基于Dhrystone的分数为DMIPS(DhrystoneMIPS),其含义为每秒钟执行Dhrystone的次数除以1757(这一数值来自于VAX 11/780机器,此机器在名义上为1MIPS机器,它每秒运行Dhrystone次数为1757次)。
全球超算最新排名!ARM架构处理器雄踞第一,国产太湖之光排第四
近日,在德国法兰克福举行的国际超级计算大会上,2021第57版世界TOP500超级计算机排名正式公布,在Top10排名中,日本理化学研究所和富士通共同推进开发的超级计算机富岳(Fugaku)再次夺冠,第二和第三名均为美国的超级计算机,中国的神威·太湖之光超级计算机位列第4位,天河2A位列第6位。
与2020年11月份发布的第56版相比,Top10排名变化很小,只有一个新入围者,那就是来自美国新能源部劳伦斯伯克利国家实验室的Perlmutter系统。该超级计算机基于HPE Cray“Shasta”平台和由GPU加速器和CPU节点组成的异构系统,实现了64.6 Pflop/s,它在新排名中位列第5。
尽管前十名榜单变化不大,但是从整体排名来看,还是能发现一些重要的趋势。
首先就是采用AMD处理器的超级计算机显著增加,比如刚入选TOP10榜单的Perlmutter就是在用的AMD EPYC 7763处理器,排在第6的Selene也采用了AMD EPYC 7742。
另一个是,近些年来,异构计算在超级计算机中使用越来越多,且大多数采用了NVIDIA的GPU或英特尔基于X86的Xeon Phi作为协处理器。在今年的TOP500中,共有145个系统采用了加速器/协同处理器技术,与第56版的147个相比,有所下降。其中有96个系统使用了NVIDIA Volta芯片,26个使用了NVIDIA Ampere芯片,9个使用了NVIDIA Pascal系统。
英特尔处理器在超级计算机中的份额仍然最高,为86.2%,但低于第56版的91.8%。此外,名单中有49个系统使用了AMD的处理器,高于之前的4.2%。
TOP500排名是针对全球已知最强大的电脑系统做出的排名,该计划始于1993年,并且一年出版两次最新的超级计算机排名表。每年的第一次排名公布于6月份的国际超级计算机会议上,而第二次排名公布则是在11月份的超级计算机会议上。
TOP500的排名表是由德国曼海姆大学的Hans Meuer、美国田纳西大学诺克斯维尔分校的Jack Dongarra以及美国劳伦斯伯克利国家实验室的Erich Strohmaier与Horst Simon等人共同汇编的。
下面我们来看看这些超级计算机:
富岳
富岳(Fugaku)是由日本理化学研究所和富士通共同开发的超级计算机,是“京”的后继机型。它在2014年就开始研发,2021年正式激活。富岳部署在兵库县神户市中央区港湾人工岛上的理化学研究所计算科学研究中心内,其运算能力为京的100至120倍,耗电为30兆瓦至40兆瓦,京的耗电为12.7兆瓦。其实,“富岳”是富士山的别称。
富岳是全球首度夺冠的ARM架构超级电脑,采用富士通48核心A64FX SoC,与过往超级计算机大多采用的Intel或AMD的x86、x64主流平台不同。富岳拥有 7,630,848 个内核,在HPL标准下算力为442Pflop/s,这样的性能表现超过了排名第二的美国Summit超级计算机的3倍。
恐怖的是其峰值性能可达到1 exaFLOPS(1,000 petaFLOPS)。而且它除了在Linpack中拿到好成绩,也在新的HPL-AI基准测试中获得了2 exaFLOPS的好成绩。
2020年6月23日,富岳正式获认证,以415 PFLOPS计算速度成为TOP500排名第一的超级计算机。之后同年11月17日发表的TOP 500排行榜成功蝉联第一。如今又再次夺冠。
Summit超级计算机
Summit超级计算机(中文有翻译顶点,或者高峰),实验室代号“OLCF-4”,是IBM为美国能源部旗下橡树岭国家实验室开发建造的超级计算机。机组于2018年6月8日落成,理论运算能达200 PFLOPS(浮点运算速度每秒20亿亿次),超过峰值运算性能125 PFLOPS的神威·太湖之光,2018年6月25日正式获TOP500认证为全球最快的超级计算机。随后被富岳超越。但仍然是美国最快的超计算机。
Summit在 HPL 基准测试中的性能为 148.8 Pflop/s,在全球排名第二。Summit 有 4,356 个节点,每个节点使用的是与泰坦类似的CPU+GPU异构计算架构,包含两颗Power9 CPU(每颗CPU有 22个内核),以及6块NVIDIA Tesla V100 GPU组成。这些节点通过 Mellanox 双轨 EDR InfiniBand 网络链接在一起。
Sierra超级计算机
Sierra,代号ATS-2,是IBM为美国能源部下属的劳伦斯利佛摩国家实验室建造的超级计算机,由美国国家核安全局管理,也是该局的第二套“先进技术系统”(Advanced Technology System,ATS),本机组与橡树岭国家实验室的高峰使用几乎相同的架构。
Sierra的运算节点采用IBM的Witherspoon S922LC OpenPOWER主机,每台主机中配备IBM POWER9 CPU配以NVIDIA Tesla V100运算加速卡,CPU和加速卡之间使用NVLink连接,每颗CPU配以两块运算加速卡,不过原始计划里是每颗CPU配以三块运算加速卡。节点之间的连接采用EDR InfiniBand。
神威·太湖之光超级计算机
神威·太湖之光超级计算机(Sunway TaihuLight)是由国家并行计算机工程技术研究中心研制、安装在国家超级计算无锡中心的超级计算机,搭载了40960个中国自主研发的“申威26010”众核处理器,该众核处理器采用64位自主申威指令系统,峰值性能为12.54京次/秒,持续性能为9.3京次/秒。(1亿为1亿亿)
神威·太湖之光超级计算机由40个运算机柜和8个网络机柜组成。每个运算机柜比家用的双门冰箱略大,打开柜门,4块由32块运算插件组成的超节点分布其中。每个插件由4个运算节点板组成,一个运算节点板又含2块“申威26010”高性能处理器。一台机柜就有1024块处理器,整台“神威·太湖之光”共有40960块处理器。每个单个处理器有260个核心,主板为双节点设计,每个CPU固化的板载内存为32GB DDR3-2133。
2020年7月,中国科大在“神威·太湖之光”上首次实现千万核心并行第一性原理计算模拟。
天河二号超级计算机
天河二号(简称:TH-2),是一组由国防科技大学研制的异构超级计算机,为天河一号超级计算机的后继机型。天河二号的组装和测试由国防科技大学和浪潮集团来负责,于2013年底入驻位于广东省广州市的中山大学广州校区东校园内的国家超级计算广州中心并进行验收,2013年底交付使用后对外开放接受运算项目任务,用于实验、科研、教育、工业等领域。
天河二号造价达一亿美元,整个系统占地面积达720平方米。它于2013年6月起至2016年6月之前,为世界上最快的超级计算机。目前,天河二号由国防科技大学和中山大学共同使用和维护。
天河二号的处理器是英特尔的Xeon E5-2692v2 12核心处理器,基于英特尔Ivy Bridge微架构(Ivy Bridge-EX核心),采用22纳米制程,峰值性能0.2112TFLOPS。
运算加速使用基于英特尔集成众核架构的Xeon Phi 31S1P协处理器,运行时钟频率为1.1GHz,拥有57个x86核心(实际上拥有61个核心,因激活全部核心时会存在运算周期协调冲突之问题,因此先遮蔽4个x86核心),每个x86核心借由特殊的超线程技术能运作4个线程,产生峰值性能为1.003TFLOPS。
不过基于美国商务部限制中国超级计算机采购美国器件,我国在2017年开始使用自主研发的Matrix-2000代替Xeon Phi作为协处理器的升级计划。
在TOP500榜单中,尽管其中中国超级计算机的绝对数量还是遥遥领先,但是由上一次的212变为现在186台,相应的,美国则由上一次的113台增至如今的123台。尚不清楚是否是由于芯片供应问题导致的负面效应。
但在综合性能指标上,来自美国的超级计算机仍然处于领先,目前总算力达到了856.8Pflop/s,而中国则为445.3Pflop/s。
相关问答
判断CPU性能主要指标是什么?-ZOL问答
在Intel的处理器产品中,也可以看到这样的例子:1GHzItanium芯片能够表现得差不...CPU的运算速度还要看CPU的流水线、总线等各方面的性能指标。外频外频是CPU...
显卡的性能主要看哪些数据?-ZOL问答
1、影响显卡的因素有:显卡芯片、制作工艺、核心频率、CUDA核心数、显存和功耗。...在性能上最新的核心架构都会带来性能上的提升;(2)制作工艺:指晶体管门电路的...
显卡的主要性能指标有?
三个重要指标:容量、频率和显存位宽。1.容量显存担负着系统与显卡之间数据交换以及显示芯片运算3D图形时的数据缓存,因此显存容量自然决定了显示芯片能处理...
cpu的性能指标包括?
cpu主要性能指标是:主频、外频、前端总线(FSB)频率、CPU的位和字长、倍频系数、缓存、超线程、制程技术。1、主频也就是CPU的时钟频率,简单地说也就是CPU的...
芯片us1gf如何测量?
芯片us1gf是一种数字式信号处理芯片,在测量该芯片时需要注意以下几点:1.确认测试设备:测试us1gf需要使用数字式信号处理器测试仪器,该仪器需要具备测试频率...
麒麟芯片怎么看数字比性能?
麒麟芯片的性能可以通过数字来评估。首先,可以关注芯片的处理器核心数量和频率,更多的核心和更高的频率通常意味着更强大的计算能力。其次,可以关注芯片的制...
芯片安全等级划分?
目前,常说的芯片等级有:商业级、工业级、汽车级、军工级四类,也有人增加了航天级一类。分类的标准目前能查到的来源是美国汽车电子标准协会(AutomotiveElectr...
芯片良品率是什么意思?
芯片良品率是指在制造芯片的过程中,合格产品所占的比例。它反映了生产过程中的质量控制情况,通常以百分比的形式表示。良品率越高,说明生产过程的稳定性和质...
芯片引脚越多功能越强吗?
一般来说,芯片引脚的数量越多,其功能也会越强。这是因为随着数字电子技术的发展,越来越多的功能被集成到了芯片中,而每个功能需要通过不同的引脚来实现。例...
显卡芯片是什么意思,怎么看哪个好?
显卡芯片也就是显卡采用的芯片型号,可以通过芯片的参数来判断:显存位宽:显存位宽是指显存在一个周期内所能传送数据的位数,位数越大则短时间内传输的数据量...