在比较成熟的AI平台方面,在2012年出现了AlexNet,一直到最近,2018年出现了AlphaGo Zero,在短短的6年内,算力提高了20多万倍,这完全不同于传统计算硬件(如CPU、MCU等)的演进轨迹,速度之惊人令我们难以预测。
三种AI芯片的对比
从AI芯片的应用场景类别来看,主要分为云端和终端。目前,AI在云端应用的更多,相对成熟,而其在云端应用又可分为训练和推理两种,其中训练的市场规模占比较高。另外,训练需要的数据量和计算量较大,所用的处理器主要是GPU。至于推理,也以GPU为主,此外,还有FPGA,以及专用的AI芯片(ASIC),其中,ASIC还不是很成熟,量产的产品也不多,因此用量有限,还处于发展初期,如果能实现大规模量产,其性能和成本是最优的,主要推进厂商是Google,其标志性产品就是TPU。
FPGA是典型的半定制化芯片,其功能可以通过编程来修改,并行计算能力很强,但是延迟和功耗远低于GPU,而与ASIC相比,FPGA的一次性成本要低很多,但其量产成本很高。因此,在实际应用需求还未成规模,且算法需要不断迭代、改进的情况下,利用FPGA的可重构特性来实现半定制的AI芯片是最佳选择。
目前来看,由于GPU具备强大的并行计算能力和完善的生态系统,现在云端AI应用方面处于主导地位。FPGA方面,由于是半定制化的,可以通过编程来实现不同的功能电路,因此,其在通用性和性能之间取得了比较好的平衡,但是较高的开发门槛和量产成本,对其应用是个限制。
专用的AI芯片应该是未来的发展趋势,无论是在云端还是在边缘侧,随着应用的逐渐落地,应用场景和各种专用功能会愈加清晰,市场需求也会越来越多。另外,与GPU和FPGA相比,ASIC的专利壁垒要小得多,而且其设计难度也是最小的。随着AI应用场景的落地,专用的ASIC芯片量产成本低、性能高、功耗低的优势会逐渐凸显出来。
AI芯片案例
目前,在AI应用方面,全球数据中心用GPU市场基本被英伟达垄断,这里用到的都是高性能GPU,其门槛很高,又是用于AI,因此,还没有什么竞争对手。
除了GPU芯片本身之外,英伟达还有一个优势,那就是其在AI计算方面,有CUDA软件生态系统的配合。CUDA编程工具包让开发者可以对每一个像素轻松编程,在这之前,对程序员来说,GPU编程是一件很痛苦的事,CUDA成功将Java、C++等高级语言开放给了GPU编程,从而让GPU编程变得简单了许多,研究者也可以更低的成本快速开发他们的深度学习模型。以图形处理器加速卡Tesla V100 PCIe/SXM2为例,其芯片采用台积电的12nm制程工艺,通过与CUDA软件和NVLink快速通道的配合,能达到近125兆次深度学习的浮点运算训练速度,而以16bit的半精度浮点性能来看,可达到31Tera FLOPS。
FPGA方面,Altera被英特尔收购之后,赛灵思是目前的霸主,作为传统的CPU厂商,英特尔近几年正在AI领域大力布局,收购相关公司自然是一个重要手段,通过收购全面布局 FPGA和ASIC,除了Altera的FPGA之外,还通过收购Mobileye和视觉处理器公司Movidius,布局无人驾驶和计算机视觉,这也是将来AI大有可为的两个应用领域。
在收购Altera之后,英特尔的技术发展路线就出现了调整,例如,其原来的产品策略是做分立的CPU+FPGA加速器,而两家公司整合后,由简单的分立器件叠加改为了封装集成,即将CPU和FPGA芯片封装在一起,这还不算完,英特尔下一步还要将CPU和FPGA集成在同一芯片内,做成SoC。
赛灵思方面,该公司于2018年底推出了以低成本、低延迟、高能效深度神经网络(DNN)算法为基础的Alveo加速卡,基于该公司的UltraScale架构,采用了台积电的16nm制程工艺,目标市场就是数据中心和云端的AI推理市场。
AI专用ASIC方面,国内外已经有多家企业投入了研发,例如国内的寒武纪(正在开发NPU)、地平线(BPU系列),还有华为海思和比特大陆,也在专用AI芯片方面投入了不少资源。国外最为知名的就是谷歌的TPU了,这也是到目前为止,最为成熟的高性能AI专用芯片了。做ASIC需要对应用场景有深刻和精确到位的了解,而这方面却是传统芯片设计企业和IDM的短板,因此,目前做AI专用ASIC的,大多是系统产商,互联网巨头,或者以算法起家的公司。
在中国,比特大陆的算丰 (SOPHON) BM1680和BM1682云端安防及大数据AI推理系列产品已经上市,此外,还有其它几家没有量产的芯片,如华为海思的昇腾Ascend 910系列,据悉会采用台积电的7nm制程工艺,预计会在今年年底量产。此外,百度的昆仑芯片(采用三星的14nm制程),以及阿里平头哥的Ali-NPU等,也处在研发阶段,距离量产还有一段时日。
结语