《多核之后CPU 的发展方向是什么.docx》由会员分享,可在线阅读,更多相关《多核之后CPU 的发展方向是什么.docx(18页珍藏版)》请在优知文库上搜索。
1、首先回顾一下计算机体系结构领域三个定律:子尔定律、枚本定件.贝尔定竹.摩尔定律就不用多说了,但想表达一个观点是摩尔定律未死,只是不断放缓。摩尔定律摩尔定律未死:单位面积晶体管数量仍增加,只是不断放缰2.摩尔定律让芯片上的晶体管数量不断增加,但一个问题是这ItV讣三了吗最近MIT团队在Science上发表了一篇文章ThereSp1.entyofroomattheTop:Whatwi1.1.drivecomputerperformanceafterMoore,s1.aw?,给出他们的答案:髭然以有.可以来看一下M1.T团队开展的一个小实验(见下面PPT)假设用Python实现一个矩阵柒法的性能是1
2、,那么用C语言重写后性能可以提高50倍,如果再充分挖掘体系结构特性(如循环并行化、访存优化、SIMD等),那么性能甚至可以提高63Q00倍,然而,真正能如此深入理解体系结构、写出这种极致性能的程序员绝对是凤毛读角.对于处理器来说,就是之间的平衡.最近这一波开始转向了追求性能功耗,于是专用结构开始更受关注.性曾专兵4.第三个定律是Q尔定这是GordonBe1.1.在1972年提出的一个观察,具体内容如下面的PPT所述。值得一提的是超级计算机应用最高奖“戈登贝尔奖就是以他的名字命名.贝尔定律每隔10年,会出现*类计算机(新编程平台、新网络连接、新用户接口、新使用方式且更廉价),形成新的产业5 .贝
3、尔定律指明了未来一个新的发展趋势,也就是AIoT时代的到来.这将会是一个处理器需求再度烽发的时代,但同时也会是一个需求碎片化的时代,不同的领域、不同行业对芯片需求会有所不同,比如集成不同的传感器、不同的加速器等等。如何,“对上片上、求?这又将会是一个挑战.A1.。T的需求碎片化问题隹能物联网(A1.oT)时代到来,处理器芯片规模将达至阡亿以上.但A1.oT需求碎片化,现有处理器设计方法无法效应对,需发展处理器芯片ifii+哪方法I“a1.wnARMSHI*it方法:遢用*的指令Ir1.1.MUK1OOOMM).XK(-S1.B)mtt(2w.哂t人m*孝”6 .这三个定律都驱动计算机体系结构向
4、一如何实现DSA.这又涉及到两个方面:为了追求性能功耗,有三条主要的设计原则(见下面PPT);为了应对碎片化需求,则需要发展出处理器敏捷设计新方法.(这个回答就不介绍敏捷设计方法了)Domain-SpecificArchitecture(DSA)7 .在谈一些具体技术之前,我们可以先总体/-7寸去几十年CPU-1能是如何扰升的.下面这页PPT列出了1995-2015这二十年Inte1.处理器的架构演进过程一一这是一个不断迭代优化的过程,集成了上百个架构优化技术。这些技术之间还存在很多摺合,带来很大的设计复杂度。比如2011年在SandyBridge上引入了大页直技术,要实现这个功能,会涉及到了
5、小量,乱序执行.大内存SSE指令、多核.硬件虚拟化、UOPFUSion等等一系列CPU模块和功能的修改,还涉及比作系统、泥译。、正数屋等软件层次修改,可谓是奉一发动全身.(经常看到有人说芯片设计很新m,也许是因为还没有接触过CPU芯片的设计,不知道CPU设计的复杂度)性能提升依赖一系列架构优化的融加处理器性能提升是一个不断迭代优化的过程过去几十年,Inte1.处理器集成上百个架构优化技术ii内存压缩技术(2)Nvidia.UTAUStin合作针对GPU的内存压缩技术BUddyCompression关健指标HPe应用1.9深度学习训练1.5x17 .Inte1.在历存优匕上很下功夫可以通过对比两
6、款Inte1.CPU来一窥究竟.Core2DueT9600和PentiumG850两块CPU,工艺差一代,但频率相近,分别是2.8GHZ和2.9GHz,但性能差了77%一一SPECCPU分值G850是31.7分,而T9600只有17.9分.Z,为闺粒能会差这么多?事实上,G850的Cache容量比T9600还要小6MB1.2vs.256KB1.2+3MB13。如果再仔细对比下去,就会发现这两款处理器M大的又利ZFG850配的内存控制器中引入FMA(FastMemoryAccess)优化技术,大幅提高了访存性能。Inte1.的访存优化技术MeMMeAWdAyMgM1.tyxac*o*oyAtm(
7、mm?)Inte1.在内存控制器引入了FMA优化技术:OutofOrderExecution,JustInTimeCommandSchedu1.ingandOpportunisticWritesat.M1.Mmr*18 .第二类体系结构优化技术是降低数据精度.这方面是这几年研究的热点,特别是在深度学习领域,很多研究发现不需要64位浮点,只需要16位甚至8位定点来运算,精度也没有什么损失,但性能却得到数倍提升.很多A1.处理器都在利用这个思路进行优化,包括前段时间日本研制的世界最快的超级计算机富岳中的CPU中就采用了不同的运算精度。因此其基于低精度的AI运算能力可以达到1.4E0PS,比64位浮
8、点运算性能(416PF1.oPS)要高3.4倍。低精度数据计算减少般据珞动MnurMit9m*数据精度能产生不同的性能探索混合精度的计算模式19.IEEE754浮点格式的一个弊战是不容易进行不同精度之间的转换.近年来学术界提出一种新的浮点格式一一POSIT,更容易实现不同的精度,甚至有一些学者呼吁用POSIT替代IEEE754(Posit:APotentia1.Rep1.acementforIEEE754).RISC-V社区一直在关注POSIT,也有团队实现了基于POSIT的浮点运算部伶FPU但是也还存在一些争论(DavidPatterson和POSrr发明人John1.Gustafson之间还有一场精彩的辩论,另外找机会再介绍).数据表达数据的不同表达格式,决定所需要的计算量例子:IEEE754浮点格式VSPOS1.T浮点格式