揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?

芯东西(公众号:aichip001)
作者 |  ZeR0
编辑 |  漠影

芯东西6月7日报道,在上周举行的2022北京智源大会芯片前沿技术论坛上,来自清华、北大、中科院等科研院所的多位专家学者分享了AI芯片在存算一体、跨层优化、软硬件协同设计等方面的前沿技术创新思路

清华大学教授、清华大学集成电路学院院长吴华强解读了忆阻器存算一体芯片所面临的挑战;北京大学信息科学技术学院长聘副教授、博雅青年学者梁云分享了可用于降低软硬件开发门槛的智能芯片设计工具;清华大学电子系长聘教授刘勇攀从“算法-架构-器件”协同优化的角度探讨“分久必合”的芯片设计如何提升性能;中国科学院计算技术研究所副研究员、智源青年科学家杜子东聚焦AI训练,提出支持高效量化训练、精度损失可忽略不计的架构。

面向产业落地,AI芯片公司昆仑芯科技的芯片研发总监漆维亦分享了其团队在十年耕耘期间所观察和总结的AI芯片大规模落地的4个挑战。芯东西对论坛中的干货内容加以梳理,与读者共飨。

一、清华吴华强:忆阻器存算一体芯片兴起,三大挑战解析

清华大学教授、清华大学集成电路学院院长吴华强长期从事新型存储器和存算一体技术的研究,他着重分享了基于忆阻器的存算一体技术。

揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?▲吴华强

对于AI算法而言,“存储墙”正成为主要的计算瓶颈,数据搬运会消耗大量功耗和时间。目前AI算法在一部分云计算里算子比较集中,因此与忆阻器阵列有很好的契合度。

基于忆阻器等类脑计算器件的存算一体架构,学习了大脑工作机制,通过模拟一些突触乃至神经元的功能,成为突破“冯·诺伊曼”瓶颈的最有潜力的技术路线之一,有望大幅提升算力和能效。

忆阻器具有电阻可调特性,也可以解决很多传统模拟计算的参数难以配置的问题,它的出现,使得存算一体+模拟计算的新计算范式兴起。

吴华强教授重点解读了忆阻器存算一体芯片面临的三个挑战:

1、如何真正克服比特误差对系统误差的影响?

过去数字计算首先是比特精确,比特精确至少要保证系统精确。在基于忆阻器的模拟计算里,每个比特相对来说有一个range,个别比特可能完全不准。如需将每个比特都做得很精准,则能耗变高,能效会受影响。

对此,解决思路一方面是从数学模型去验证它们的误差关系,另一方面从算法上进行挑战,根据实践,如果直接复制数字计算的算法,往往得到的效果较差,而在这之中进行微调,尤其对底层设备、对分布规律的理解会有很大的帮助。

吴华强团队提出由片外压力训练和片上自适应训练组成的混合训练框架,在片外压力训练中引入系统误差模型,构建具有误差耐受性的网络模型,提升实际硬件系统的精度。在权重映射到芯片后,通过原位更新关键层权重进行自适应训练,进一步提升精度。

2、如何高效、低成本的设计并制造出忆阻器存算一体芯片?

吴华强给出的解法是:CMOS嵌入式集成+EDA工具链。

芯片走向更大规模,需要器件进一步优化结构。从2010年至今,其团队制作忆阻器件的过程分了几个阶段:第一阶段,用2μm工艺在实验室中筛选CMOS兼容材料,制备单器件;第二阶段,130nm工艺,打通后端集成工艺,发展了Foundry+Lab模式,最多集成到64M的忆阻器;第三阶段,与联电新加坡厂、厦门联芯、中芯国际等大的代工厂合作,从40nm到28nm、22nm,可完成整个工艺的加工。

其团队还研发了从器件仿真、电路模块设计到系统架构设计的EDA工具链,目前已将EDA工具链跟两款工业芯片进行适配。此外吴华强透露,他们有计划将EDA工具链开源

3、如何提升存算一体架构的通用性,使其适配更多的神经网络算法?

吴华强团队研发的软件工具链包括编译器、软件模拟、硬件模拟器等,通过软件工具链实现算法和芯片硬件的解耦,可支持各种神经网络算法。

其中,编译器对接算法层,可实现存算一体计算单元上高效部署神经网络算法及生成可执行程序的功能;软件模拟对接着编译器和算法层,结合底层硬件模型,考虑真实器件的非理想因素,实现对真实硬件功能与性能的评估与探索;硬件模拟器对接编译器,功能完整的计算单元模块,模拟存算一体SoC工作过程中的数据信号与控制信号变化情况。

在芯片方面,吴华强团队在研制一款采用28nm制程工艺的集成忆阻器存算一体芯片集成规模达到64Mb,数模转换精度达8bit,预期算力超过100TOPS,预期能效超过10TOPS/W,具备一定通用计算能力,功能可重构、参数可配置,并有配套软件工具链。

揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?

“我们现在还需要更大规模的芯片,被运算之后或者在解决一些复杂问题之后,才能证明存量一体的计算有很强的生命力,我们在不断地推进中。”吴华强说。

他希望通过这种底层器件到编译器的改变实现新的计算系统,用户无需改变现有编程语言,便可同时提升算力和能效。经过优化,未来其单芯片算力有希望达到1000TOPS,在边缘计算和云计算中拥有广泛的应用前景。

二、北大梁云:软硬协同设计工具,降低智能芯片开发门槛

北京大学信息科学技术学院长聘副教授、博雅青年学者,北大-商汤智能计算联合实验室主任梁云的研究领域是芯片设计自动化EDA和计算机体系结构,其研究曾获两项国际会议最佳论文奖和六项国际会议最佳论文提名。

揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?▲梁云

在他看来,摩尔定律停滞不前以及功耗限制,需要架构方面的创新,领域专用处理器(DSA)是一种可能的解决方案。

DSA有多种优势,从硬件角度,可以做更高效的并行设计、内存架构、数据表示形式;从软件角度,可将复杂的编译器变简单。最近几年,梁云主要关注的是张量(Tensor)计算。

由于张量计算的重要性,许多厂商设计了采用Spatial空间架构的AI加速器,这种架构并行性和数据复用率很高,但也存在一些挑战:一是如何做软硬件协同设计,二是决定了硬件架构后如何实现?总结下来,整个软硬件设计流程都需要非常底层的编程,而且很难优化,开发周期漫长。

梁云所在课题组提出了一种软硬一体的智能芯片设计与优化框架AHS,希望借助高层次的抽象、自动化工具和高效的算法,自动生成芯片的硬件架构和软件算子库,降低芯片软硬件开发门槛。

具体来说,其课题组通过设计领域专用语言和中间的表示形成降低编程门槛,借助机器学习算法让优化更容易,设计这种自动化的工序来解决人工设计的问题。

其工作包括硬件综合、软件编译及软硬件协同设计,每个组件均已开源。

硬件综合方面,其TENET框架可使用基于关系的表示形式,涵盖硬件数据流的设计空间,能够进行一系列的数学分析,分析出重用、延迟等跟性能相关的各种指标,从而帮助用户在某些限制条件下找到更好的芯片设计。同时,该团队提出了可在性能、生产力和支持的数据流上都取得最优的工具TensorLib,并为实现自动生成硬件构建了相应的EDA工具。

软件编译方面,团队提出了针对不同硬件的统一抽象,核心想法是将形式多样的intrinsic在语义上降低到一个scalar program上,接下来把它形式化一个基于布尔矩阵的映射过程,在这里面通过检查布尔矩阵来检查映射方案的合理性。经实验,其在单个算子和整个网络上均实现大幅度性能提升。

软硬件协同设计方面,该团队提出一种敏捷的协同设计方法HASCO,它基于新的数据结构张量语法树做软硬件的划分。在硬件方面,其借助贝叶斯的优化做硬件优化和设计空间的探索;在软件方面,引入强化学习,能快速找到所需软件设计的参数。与非软硬件协同设计的工作相比,其在边缘场景和云计算场景的实验结果在能效、性能方面均有一定的提升。

三、清华刘勇攀:高能效AI芯片设计分久必合

清华大学电子系长聘教授刘勇攀从传统芯片体系架构分层次设计的问题出发,解读了高能效AI芯片的发展思路,并从“算法-架构-器件”协同优化层面探讨设计层次重组如何带来的性能提升。

揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?▲刘勇攀

随着摩尔定律的放缓,“通用计算架构”+“工艺器件进步”相结合的性能提升之路,面临日益严重的挑战。制程工艺演进到28nm后,如果在传统小容量的芯片市场,其容量没有增加,专门为它做一个芯片,实际成本并未下降,这打破了摩尔定律以更便宜价格来提供更高算力的假设。

过去“分而治之”的芯片传统设计分层架构,好处在于有一个系统观的架构师将要做的事拆分成若干层,大家各做各的,高效协同,从而提供更低的设计复杂度和更高灵活性。

但随着这个组织发展到一定程度,其代价是整个顶层执行效率的下降,此前的架构反而成为算力、能效提升的瓶颈,这就需要重新打通逻辑、重新定义层次,这对我们来讲是很好的机会。

刘勇攀认为,未来,在底层器件发展变慢的情况下,我们可能需要使用分久必合的跨层次协同模式,发挥一些从应用层面的新设计融合逻辑,不但要做算法和架构,还要做电路与器件的协同,来研发出高能效、高性价比的AI芯片。

一个算法级稀疏可获得10到30倍的理论加速,而真正到了通用的GPU、CPU层面,可能只有9到25倍的加速,如果做一个稀疏架构,就能很好发挥出稀疏算法的架构优势,这便是典型的算法架构融合逻辑。

器件方面,稀疏也好,低比特推理和训练也好,都是从算法和架构上的优化。自下而上也有器件和电路的融合,包括先进工艺的DTCO(设计工艺协同优化)。

现在有一些SRAM面积提升,并不是通过把某个管子做小,而是垂直堆列起来,密度可能提升了几倍、百分之几十,这就是典型的先进工艺的DTCO。还有HBM、3D堆叠,这都是从存储层面,未来可能会有更大容量、更高速的访存、更低成本的片上存储,以及更接近计算的HBM内存,这些内存将很大程度上解决未来计算中部分存储带宽的问题。

另一个层面,这些器件电路不但可以做存储,还能提升计算密度,可以做存算一体,甚至可以用光互联,NVM(非易失存储器)的计算堆叠实现更高性能、低功耗、低成本的计算。可以看到,设备和电路的协同设计前景巨大。

最后,刘勇攀总结了对该领域的3点观察:

其一,做AI计算,可将原始算法变成硬件高效的AI算法,从而使能效和算力得到显著的提升。

其二,芯片或系统有按比例缩小(scaling down)和异构集成两条路线,异构集成使我们能将更多DSA融合做一个整体解决方案。由于是芯片级集成,它不会受限于SoC要求的大的市场容量成本的问题。

随着一些新型封装技术成熟,业界现已出现芯粒异构集成的方式,通过灵活互联,打破过去单一器件和同构计算架构的带来的局限。这些芯粒可以采用不同的工艺节点,从而继续提升性价比,并一定程度上缩短设计周期,这为新型器件和领域定制化异构架构创新开辟了广阔空间。

其三是新器件。现在还处在相对萌芽期的光通信和光计算,未来有可能被集成到大算力AI芯片中,甚至是更遥远的量子技术里。

四、中科院杜子东:定制架构支持高效量化训练,精度损失可忽略不计

中国科学院计算技术研究所副研究员、智源青年科学家杜子东长期从事AI体系结构研究,在深度学习处理器方向做出了一系列开创性的工作,并曾以第一作者身份发表了多篇国际顶级学术会议的论文和期刊论文。

揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?

▲杜子东

量化被认为是有望降低带宽/存储要求、提升效率、降低计算成本的有效手段。过去采用低比特或量化推理方面的应用很多,但在开销巨大的深度学习训练中,量化应用相对较少。

现有的量化训练算法相关文章常常采用16bit,少部分可做到8bit,其量化效果通常只有部分数据能做到8bit,大部分数据还需16bit、32bit,对于像CPU/GPU等平台没有加速效果。

杜子东团队也在GPU上实现了一个量化训练,相比32bit,直接在CPU+GPU平台做量化训练,会比平常慢1.09倍~1.8倍。在训练中,GPU并不能给予很好的硬件和软件的支持,也没有特别好的低位宽的高效深度学习算法,这是现在阻碍量化训练的两大因素。

量化算法需对大量数据进行基于动态统计的量化和高精度的权重更新,这使得这些量化训练算法不能有效地部署在当前的深度学习处理器上。

对此,杜子东团队提出了第一个用于高效量化训练的定制神经网络处理器架构,其训练精度损失可忽略不计。

其团队提出了3个策略来解决上述问题,一是局部量化,二是基于误差估计的多路量化,三是原位权值更新。通过将这三点应用于AI加速器上,在硬件中做针对性地支持,使之能做在线量化训练,并避免了多变的数据访问,相对同规格TPU实验,其性能提升1.7倍,能效提升1.62倍。

五、昆仑芯科技漆维:AI芯片大规模落地,直面哪些挑战?

AI芯片公司昆仑芯科技脱胎于原百度智能芯片及架构部,是国内最早布局AI加速领域的团队,在去年4月完成独立融资,首轮估值约130亿元,拥有国内外350余项发明专利申请和多项软件著作权。

昆仑芯科技芯片研发总监漆维毕业于清华大学,曾是百度高级技术经理,拥有十年的行业研发与管理经验,主导研发了FPGA AI集群国内互联网最大规模的部署。目前昆仑芯科技自研云端AI芯片昆仑芯1代和昆仑芯2代均已实现大规模量产,相关工作多次发表在国际学术顶会上。

揭秘AI芯片创新风向!清华北大中科院专家同台论道,如何突破性能瓶颈?▲漆维

昆仑芯1代采用14nm制程,在百度搜索引擎、小度等业务中部署超过2万片,经历过互联网大规模核心算法考验的产品。昆仑芯2代采用7nm制程,于2021年8月量产。4nm昆仑芯3代已启动研发,昆仑芯4代也在规划中。

在演讲中,漆维分享了AI芯片在走向产业大规模落地过程中所面临的挑战:

首先是算法的多样化。不同业务场景有不同的算法模型,即便是同一个业务线,其算法也在持续优化和突破。谷歌就曾在TPU论文中提到等芯片研发完成、要推到业务端落地部署时,才发现业务团队两年前所提的模型和精度需求已被推翻。

第二,这个赛道并不是一个蓝海,因为有行业巨头NVIDIA在前面。NVIDIA已有10多年的积累,构建了非常强大的护城河,并敢于对自家架构做持续创新,其GPU已跟所有的主流框架做了适配。这种情况下,客户对于为什么要选到你的AI芯片是有心理防线的,因此不仅要做到有一个非常可观的实际性能收益,也需要整个软件栈做到非常灵活,实现尽量小的成本。

第三,客户的需求并非一成不变,且非常严苛。以互联网为例,他们并不会关心一个单一指标,他们关心延时、吞吐、TCU,这些指标很多时候是糅合在一起的。例如,客户可能关心其业务在满足一定延时条件下,到底单卡能给他带来的吞吐是多少,甚至有时还会加一些限制,如要求其CPU或者整个AI芯片、GPU限制在一定程度的利用率,去确保整个业务系统的鲁棒性。

最后,能够在真正场景中做到业务规模的量化,整个软硬件系统都将面临非常大的工程挑战。硬件产品做到万级、十万级甚至更高时,稳定性怎么样,成本对业务来说是不是可接受的;整个软件栈要适配不同的深度学习框架、处理器、操作系统以及不同OEM的不同机型等等。

到业务实际部署环节,有时不是单行程的业务在跑,而会为了把利润率做高,可能会做多行程的混部。在这种场景下,整个AI卡实际性能能否做到很稳定,都是走向芯片量产后要面临的工程化挑战。

针对上述挑战,昆仑芯的发展分成了两个阶段:第一个阶段是2011~2017年,主要基于FPGA开发集群,随后因底层硬件存在种种限制,FPGA在业务形态及架构上遇到瓶颈,致使相应性能和功耗等指标很难达到最优,因此大概在2017到2018年,也就是AI发展相对成熟之际,昆仑芯团队开始转型,并于2018年正式启动昆仑芯的研发。

从FPGA到昆仑,昆仑芯团队对整个芯片的架构做了抽象,从早期一些偏静止的优化做成一个通用的设计。之所以要做通用的AI处理器,一则为灵活支持更广泛的应用场景,二则需要灵活可编程以适应各种业务的需求,三则尽可能降低芯片、软件以及对业务牵引的成本。

在漆维看来,现在是一个很好的时代,信创国产化等趋势给了AI芯片一个良机,有一批早期用户愿意接纳和尝试你的产品,而从早期客户到主流客户中间有一条鸿沟,什么时候真正迈过这个鸿沟,AI芯片才真正在市场上站住了脚。

昆仑芯团队正持续考虑结合应用场景能够在哪些地方做性能优化,也会觉得未来大家有可能会趋同做到通用,同时能兼顾实质性能。

结语:砸钱堆算力,堆不出AI芯片的未来

不久前,谷歌公布其拥有5400亿个参数的新语言模型PaLM,其在CIFAR-10创下的99.43突破性指标,仅比此前SOTA的99.40多出了0.03。

而在其论文末附上的一张图表显示,这个训练方案所用到的TPU算力,成本大约超过57000美元,这在学术界引发争议——大公司利用超大规模算力,结果较现有成果提升非常小,这样的工作是否有意义?堆算力是不是AI芯片或者AI领域的未来发展方向?

“真正有影响力的技术,一定是所有的人都用得起的,有高性价比的技术,才是对整个社会有重大贡献的技术。”在刘勇攀看来,谷歌这个案例不太符合经济学规律,像这样的技术只能是属于少数“贵族人”专享,没有很大的市场,“所有技术发展的过程中,对产业界要检验要符合社会经济规律,如果不符合社会经济规律强行去推,也会是一地鸡毛,被历史的车轮给碾碎。”

从做硬件或系统的角度,梁云同样认可这是不符合经济学规律的做法。他也承认这种“大力出奇迹”的做法确实在某些场景下有用,只是不适合学校或小的单位研究人员去复制,而不能复制,对学术的影响力就会比较有限。不过他相信,两者是可以兼具的,如高性能计算领域最高奖项ACM戈登贝尔奖便鼓励实现绿色计算,以及在一定功耗下解决一定规模的问题。