千核RISC-V处理器,通往AI之路的完全体

发布时间:2021-07-23

阅读量:950

谈到如何设计AI加速器,许多工程师都会给出不同的答案,但归根结底仍是在一颗先进制程的芯片上排列组合数十亿个晶体管。然而当前超大规模的AI推理依然面临着不少挑战,比如成本和复杂度高居不下,传统架构下的性能、功耗和可编程性无法满足超大规模的要求等。初创公司Esperanto作为去年才开始冒头的初创企业,却打算用RISC-V来解决这一问题。

Esperanto创立于2014年,其董事长Dave Ditzel曾在
英特尔负责下一代微处理器架构的设计。Esperanto的工作方向是基于RISC-V这一开放架构,开发高性能、高效率的计算方案。为此,他们打造了ET-SoC-1,一个千核的RISC-V处理器,也是他们开发的首个AI加速器。

ET-SoC-1 / Esperanto
ET-SoC-1的名字寓意并不是传统的SoC,而是面向超大规模数据中心的“片上超级电脑”。它包含了近乎1100个RISC-V核心,近240亿
晶体管。需要指出的是,ET-SoC-1是一个AI推理加速器,并不是训练加速器。

据CEO Art Swift介绍,该芯片采用了台积电7nm制程,在特定的工作任务上,能耗效率提高可至100倍。ET-SoC-1在其他关键工作任务上,性能提升要远高于传统的
CPUGPU方案。比如在模拟测试中,用于推荐网络时,其性能提升高达50倍,在图像分类上,性能提升高达30倍。虽然这些暂时只是纸面测试参数,但这样的性能和功耗无疑可以给AI客户带来很大的吸引力。

据了解,这一芯片直至2021年第二季度才正式流片,预计2022年早期才会开始量产。这是因为Esperanto花了很多时间在验证上,作为一家初创公司,Esperanto采用了架构、硬件和软件联合设计的方式,这样一来虽然节省了时间,却也让规格一直在持续变动。因此Esperanto在验证团队上投入了许多精力,也率先采用了新思的ZeBu 
FPGA仿真方案,以求减少查错和除错时间。

ET-SoC-1芯片架构 / Esperanto

ET-SoC-1用到了两种Esperanto自研的RISC-V核心,分别是4个ET-Maxion(超标量乱序核)和1089个ET-
Minion(顺序多线程核心)。ET-Maxion是一颗可以运行Linux的大核心,核心频率超过2GHz,作为ET-SoC-1的控制CPU,而ET-Minion则用于矩阵乘法等重度机器学习数据处理。

ET-Maxion作为核心频率超过2GHz的10级流水线RISC-V核心,其实原本是伯克利大学Boom V2开源核心的的分支,但Esperanto对此进行了大刀阔斧的改进。在SPEC2006测试下,其性能已经超过了Cortex-A57,不过还是次于Cortex-A72以及SiFive最近公布的P550。

虽然是一个小核,但ET-Minion也是一个64位RISC-V核心。ET-SoC-1内,32个ET-Minion和4MB的L2 S
RAM组成了“Minion Shire”,一共34个Shire采用Mesh的方式连接在一起,多出来的一个ET-Minion则用作服务处理器。Esperanto用这一千多个ET-Minion做到了强大的浮点性能,某些传统加速器仅支持INT8运算,而ET-SoC-1在FP16或FP32上都能展现出不俗的优势。


搭载6个ET-SoC-1的Glacier Point v2 / Esperanto

Art Swift提到,Facebook推出的开源AI板卡Glacier Point v2可以搭载6个ET-SoC-1芯片,这样以来就可以直接接入已有的开源计算项目(OCP)设备中。这一张卡上就包含了6558个RISC-V核心和192GB的LPDDR4X 
DRAM,带宽可达822GB/s的同时还拥有较低的功耗。据估计,这一设计的板卡峰值性能可达800 TOPS(INT8)以上。

在软件层面上,Esperanto也为
C++++、Pytorch和TensorFlow常见的机器学习框架提供了支持。只需采用Facebook的开源编译器,就可以在多个ET-SoC-1芯片上运行机器学习模型。

结语

RISC-V虽然在传统的CPU与GPU市场还未彻底崛起,但在AI加速上,已经以其独到的优势迅速攻城略地。这种千核式的设计其实已经应用于
Arm等架构,不少数据中心、超算却依然在尝试用RISC-V作为加速器。

RISC-V凭借其开放性、扩展性和自主性,并没有像Arm那样由低至高地发展市场,而是低端和高端两头抓,一旦消费市场也开始普及RISC-V生态,那时的RISC-V就有与Arm全市场争霸的希望了。