查看原文
其他

RISC-V 2023中国峰会随想:AI时代RISC-V发展潜力如何?芯片嵌入AI究竟嵌入了什么?

wolf uefiblog UEFI社区 2023-12-29
点击上方“公众号” 可以订阅哦!

关于RISC-V,去年有一组数据显示2022年RISC-V架构芯片出货量已突破百亿颗,并预计在2025年有望突破800亿颗。对芯片领域了解不多的朋友,可能对它感知度不够,这也是因为目前绝大多数出货都集中在MCU(微控制单元)和IoT领域,而曝光度较高的台式机、笔电甚至服务器领域所用的CPU,成功大量出货的则几乎没有。这种情况近期已经有所改变,在国内国际业内伙伴的共同努力下,不断有消费端和服务器RISC-V架构CPU推出,落地产品也开始见诸报道。

今天在第三届RISC-V中国峰会上,RISC-V在更多芯片细分市场上的应用也逐渐清晰了起来。来自各个公司的技术大牛们纷纷从各自的角度阐述了RISC-V IP的多种落地场景:既能用作笔电CPU,也可以搭出高达64个核心的服务器CPU;还有NIC网卡核心,或者是笔电的EC和服务器BMC,至于用作车载控制器核心的方案就更多了。

也难怪平头哥副总杨静会说:“所有行业的芯片都值得用RISC-V做一次。”

平头哥之所以有如此自信,来自于这些处理器很多都带有平头哥玄铁RISC-V IP的DNA,事实已经证明RISC-V的灵活性。不仅如此,本次峰会的一个显著的亮点就是RISC-V在大热的AI上的应用,成为AI平台的新选择。RISC-V为何能如此长袖善舞呢?

RISC-V架构优势

开源,无疑才是那个点石成金的魔杖。正是因为开源,RISC-V架构才如有神助。

如果我们回望过去几十年的计算机产业的发展,在草蛇灰线中,会发现一个规律:那就是系统总是由封闭走向开放,而开放的尽头就是开源。软件层面,从闭源的Solaris、HP-UX、AIX 和许多 Unix 变体,从闭源Windows和Windows Server,到开源Linux独领风骚;从闭源Legacy BIOS到开源UEFI;从各种闭源的祖传中间件、数据库、应用到开源的替代品。历史不会完全重复,但却总是相似的。这一次,开源进入到硬件中的硬件,核心中的核心:ISA开放和芯片设计的开源

2010年诞生于加州大学伯克利分校的RISC-V架构,如其名字所示,属于精简指令集(RISC[2])类型ISA,V是罗马数字五(V这里念Five),是伯克利分校的第五代架构。全新设计的ISA,从一开始就秉承两点:简单和开放免费(商业友好的BSD license)。

指令简单,是RISC类型ISA的共同特征,但RISC-V架构将其推向极致。其基本指令(RV32I,RV32E,RV64I,RV128I)只有不到50条,可以打印在一页纸上。有了它就可以实现所有的基本逻辑功能,是图灵完备的。在此之上,RISC-V采用模块化组织方式,增加了扩展指令集合(可选,还在持续扩充中):

来源:参考资料1

这里有个小技巧,我们经常看到某CPU支持RVxxx,它是这几个字母的组合。如RV64IMAFD表示它支持64位基本整数指令(RV64I)+ 整数乘除法扩展 + 内存原子操作扩展 + 单、双精度浮点数扩展。

RISC-V架构是开放和免费的,任何人都可以在官网[1]上下载到指令集文档和特权架构文档。指令集文档只有二百多页,相当少,这是长达几千页臃肿的IA32 User Manual所不能比拟的。说它免费,是指它不像ARM架构CPU厂家需要支付高达数千万美金的授权费,也不需要几毛钱到几十块的单颗CPU Royalty费用。

开源、简单和方便扩展,让RISC-V如有神助,在各个细分领域大肆扩张。更加重要的是,由于RISC-V指令集的模块化组织,在设计芯片时,基础和各种扩展指令集可以更加灵活的进行组合,如同乐高积木般,组合出符合各个使用场景的处理器出来。这样的灵活性,让它即可上的厅堂,也下得厨房。今天的峰会,让我们看到拼图中另一个重要模块也逐渐成熟起来,它就是RISC-V对现在炙手可热的AI的解决方案:AI指令扩展集:RVV(RISC-V Vector)和玄铁Matrix。在介绍它们和传统SIMD之前,我们先要理解一个恼人的问题:我们常听说芯片集成了AI处理器或者AI指令,它究竟是什么?

芯片嵌入AI到底是嵌入了什么?

AI的热潮一波又一波的袭来,最近的ChatGPT和与之相关的“大模型”的热炒,更是让人恍若“AI自由”明天就会来临。作为AI的算力底座,GPGPU一块难求,另一种方案:“AI芯片”也变得炙手可热。那么究竟什么是“AI芯片”呢?

AI在当前的重新火热,来源于深度神经网络(DNN)的再度崛起。DNN虽然在上个世纪80年代就已经有了,我在大学的时候就学习过DNN,但当时没有足够的算力,DNN网络模型往往不能超过三层,远远谈不上“深度”,没有实际应用价值,于是被束之高阁。情况随着摩尔定律带来的算力增加得到极大改善,尤其是GPU在AI计算的大规模应用,让DNN重新焕发出灿烂光芒,变种出各种DNN模型,如CNN,RNN/LSTM,GAN,乃至最新火热的基于注意力机制的Transformer模型。尽管模型变化多样,参数规模越来越大,层数越来越多,但它们的算力基底需求却是大同小异的,那就是对矩阵和矢量的运算的需求。对,就是大学时让人头疼的线性代数的内容。

目前的AI芯片,看重的是DNN的计算速度。神经网络的迭代计算,无非就是大量的矩阵和矩阵的乘法以及矩阵和向量的乘法,基本运算单元是由一组浮点数乘法和加法组成。由于可以针对矩阵的每个行和列进行并行计算,并发属性比较强。于此同时,从DNN的层级计算来讲,本层神经节点的计算,只依赖上一次的结果,很同层节点无关,适于在更高层面上实现并发。如何更快、更并发、更节能地计算矩阵运算,加上一些激活模块和汇集模块组成了“AI芯片”的基底。

GPU天然适于这种并发计算,从而在AI计算上大放异彩。CPU的世界给出了不同的答案,那就是SIMD(单指令多数据流),来加速AI在CPU上的处理,如x86的MMX,SSE,AVX-2和AVX-512,而ARM有自己的高级SIMD和可伸缩向量指令SVE。RISC-V世界则提出了另一个思路:AI指令扩展集:RVV(RISC-V Vector)和玄铁Matrix(MME)。

RISC-V扩展指令集和平头哥

类似浮点数扩展指令M,RISC-V的矢量扩展指令叫做RVV。一路走来,最新的版本是1.0,是首个稳定版本,它的指令Spec可以参考官网。相较SIMD指令的复杂和庞大,RVV指令设计相当简洁和高效,较同属矢量扩展的ARM SVE设计地也更加清晰。它的核心还是让矢量更快更高效地计算,从而加速AI运算。在此基础上,平头哥更提出玄铁Matrix (MME)扩展,将AI计算加速从1D矢量扩展到了2D矩阵运算中,MME指令和RVV的区别和联系可以参考资料5。注意MME还未被RISC-V国际基金会所接受,还不是统一的扩展指令集。

在峰会上,阿里的芯片公司平头哥更新了玄铁IP核:带有RVV 1.0的C920和带有Matrix的C907。据称GEMM计算速度能提升15倍。其自研的一站式AI部署套件HHB,支持现在流行的绝大多数AI模型,通过软硬件协同较传统方案性能提升8成,从而用产品矩阵的形式上让RISC-V成为了AI的新选择。

平头哥还发布了一套算力到部署的多媒体AI软硬件融合全栈方案。硬件当然是玄铁RVV和MME的弹性算力,软件方面包含了算法、AI一键编译部署工具、TMedia媒体库、以及为CV深度优化的AI算子,并通过标准化的封装接口和插件化的开发模式,能够支持玄铁全系列产品在这个平台上的快速迭代、升级:

这个多媒体AI开发平台让视频视觉能力触手可及,同时大幅缩短产品开发周期。在其中,软硬件呈现相互成就,螺旋式上升的正反馈,这才是开源软硬件协同之道。This is the way!

结论

RISC-V对中国半导体行业是一次巨大的机会。RISC-V的开放、免费和开源,让中国芯片设计公司第一次和国外企业站在同一条起跑线上。不负众望,中国企业也做出了一定的成绩。比如,RISC-V国际基金会22位高级会员对RISC-V国际标准建设有话语权。其中就有12名来自中国,平头哥是公认投入最大的中国机构,推动了30余个技术方向的标准制定,主导了12个技术小组。平头哥还提供全栈技术方案,涵盖IP核到平台、工具链、操作系统应用程序等软硬件技术。这次活动让我们看到,RISC-V成为AI平台的选择。RVV和MME可以如玄铁一样集成在RISC-V内核中,或者做成协处理器挂在内核外(封装内),这些都可以算AI芯片。除此之外,英伟达的Grace Hopper已经用上了RISC-V架构;Meta也在自研基于RISC-V的AI处理器。甚至也有用RVV来搭建GPGPU的项目!RISC-V在AI上必将大有可为!

参考资料

[1] RISC-V Foundation: https://riscv.org/

[2] RISC history: https://en.wikipedia.org/wiki/Reduced_instruction_set_computer

[3] RISC-V 手册翻译版:http://riscvbook.com/chinese/RISC-V-Reader-Chinese-v2p1.pdf

[4] 玄铁开源主页:https://github.com/T-head-Semi

[5] 玄铁MME扩展指令介绍:https://riscv.org/blog/2023/02/xuantie-matrix-multiply-extension-instructions/



继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存