AI算力需求6年增长30万倍,「超异构计算」才能满足下一个10年

今年 3 月,「强化学习教父」Richard Sutton 在《苦涩的教训》一文中指出,「70 年的人工智能研究史告诉我们,利用计算能力的一般方法最终是最有效的方法。要在短期内有所提升,研究人员要利用专门领域的人类知识。但如果想要长期的获得提升,利用计算能力才是王道。」

大家都知道,这波人工智能的浪潮的三要素分别是数据、算力和算法。虽然仍有争议,但是计算力的大幅提升确实是这波深度学习革命的决定因素之一。

去年OpenAI发布的一份报告显示,自2012年以来,在最大规模的人工智能训练中所使用的计算量呈指数级增长,3.5个月的时间翻一倍(相比之下,摩尔定律(Moore’s Law)有18个月的倍增周期)。自2012年以来,该指标增长了30多万倍(18个月的倍增周期只会增加12倍)。

在过去的几十年里,摩尔定律一直推动着芯片制程和性能的稳步提升,然而摩尔定律已经失速,CMOS的微缩至少在十年内还是会继续进行下去,但随着技术难度的挑战越来越高,需要投入的资源会越来越高,必然会导致整个成本上升,如何才能发挥摩尔定律的经济效益?按照这个趋势,想要满足未来AI发展的需求,芯片行业势必要有所变革。

在上个世界八十年代,异构计算的出现满足了各种不同任务的计算需求,推动了个人计算机和互联网的发展。

然而大数据和人工智能时代的到来,新的计算需求不断衍生出来,当我们展望下一个十年,或者更长远的未来,随着人工智能应用的愈加广泛和深入,特别是万物互联时代的到来,AI需要在云边端上全面落地,传统的异构计算已经不能满足日益发展的人工智能计算需求,

于是,在异构计算上更进一步,英特尔开始押注「超异构计算」。

AI时代需要超异构计算

首先,传统的异构是指在完成一个任务时,采用一种以上的硬件架构设计,把它们组合在一起。组合方式主要包括:

  • 一体化SoC,也就是直接把不同的芯片在不同的板级连接起来,它的专用性最强、能耗最低、性能可能也最高,能效比非常好,但需要量很大,也就是应用范围很广,才值得去做,但要花上十几个月时间以及大量研发经费来开发,这就要求设计人员对应用场景的理解一定够深,且产品的灵活度不高,如果需求有变动,就要再等一个研发周期;
  • 分体式板卡,也就是将各种计算能力的加速内核放到一个芯片中,它的优势在于灵活,想用的时候可以随意组合,但板与板之间连接的功耗、带宽速度都要打很大折扣。

在真正的系统中应用AI时,它从来不是单独发生的,而是和其它的计算技术深度融合。所以,真正要完成一项任务,仅有AI是不够的,需要多种计算任务同时进行。传统的异构计算,已经不能满足产业应用对AI计算的需求。

英特尔认为,我们需要迈向超异构时代。

超异构将提供更多的灵活性和更快的产品上市时间,它包含三大要素:多架构、多功能芯片;多节点和先进封装技术;统一的异构计算软件。

AI算力需求6年增长30万倍,「超异构计算」才能满足下一个10年_第1张图片

据了解,多架构、多功能的独立芯片可以根据计算负载分成以下4种:标量计算,CPU 就是典型的标量处理器;矢量计算,主要是指向量计算;矩阵计算,主要应用在是卷积神经网络中;空间计算,即运算的时候有灵活的空间处理架构,这个方面的代表是 FPGA。

其中CPU是最通用的,虽然可能不是其中性能最好的。GPU在性能模型上有些有趣的创新,它比以前更通用,但不像CPU那么通用,但是GPU对于这种高强度工作负载的性能更好。FPGA加速器,它们的效率要高得多。例如,对于特定功能而言,FPGA加速器效率更高,更节能,更具成本效益,但它并不通用。

所谓“超异构计算”,“超”就超在可以把很多现有的、不同节点上已经验证得挺好的晶片集成在一个封装里,把这几种计算整合在一起达到“计算最优化”。我们真正要关注的是性能和通用性的不同搭配组合,因此英特尔我希望提供标量、矢量、矩阵和空间的多种架构组合,部署在CPC、GPU、FPGA和加速器套件之中。

在多架构、多功能芯片方面,英特尔提供了一个端到端的丰富产品线布局。目前,英特尔已经推出了包含CPUFPGAAISC等在内的一系列已经芯片解决方案,而且还将于2020推出首款独立显卡,并且预计在2021年推出7纳米通用显卡,完整覆盖了从边缘一直到云端的计算场景。

在多节点和先进封装技术方面,传统的封装就是把芯片平铺在一起,这样有几个缺点,第一是增加了面积,第二是它们之间的连通带宽还需要加速。2.5D和3D封装就是为了解决这些问题,不只是把计算芯片和内存连起来,还能把计算芯片互相连起来,同时还能把芯片像高楼一样分成几层堆起来,这就是先进封装技术。

具体来说,超异构计算整合先进计算单元有以下几个关键点:一是与板级设计一样,用多功能、多架构的芯片处理和加速不同的运算负载;二是把计算单元封装在一个芯片里,但这与板级层面的连接不同,是在封装层设计先进的技术,把带宽放大,同时功耗降低,体积减小,是一种封装集成技术;三是使用这种复杂的超异构模式,不能给软件开发人员增加难度,因此超异构计算还需要统一的异构计算软件。

软硬协同:OneAPI

对于大部分开发者来说,一般是根据软件去选择硬件,而不是反过来,因此英特尔将「统一的异构计算软件」也包含到了「超异构计算」这个大框架里。

也就是说,简化软件开发是超异构的要素之一,英特尔需要以一个统一的软件接口,让客户编程即可扩展到 CPU、GPU、FPGA 和 ASIC 芯片等硬件平台上。

而目前英特尔正在做的工作就是打造 OneAPI。

OneAPI旨在提供一个统一的编程模型,以简化跨不同计算架构的应用程序开发工作,而 OneAPI 也会吸收英特尔在 OpenVINO 等创新平台上的经验。OpenVINO软件开发者工具包实现了跨不同的SVMS(Scalar、Vector、Matrix、Spatial)架构,提供一致、优化的深度学习推理能力。

据了解,OneAPI将支持直接编程和API编程,并将提供统一的语言和库,可以在包括CPU、GPU、FPGA和AI加速器等不同硬件上,提供完整的本地代码性能。

  • 直接编程:One API包括一个全新的直接编程语言Data Parallel C++ (DPC++),这是一个可替代单架构专用语言的开放式、跨行业的编程语言。通过使用开发者熟悉的编程模型,DPC++ 能够提供并行编程的效率和性能。DPC++以C++为基础,融合了Kronos Group的SYCL,并包含在一个开放社区流程中开发的语言扩展。
  • 基于API的编程:One API强大的库跨越多个可受益于加速的工作负载领域。库函数针对每个目标架构都进行了定制编码。
  • 分析与调试工具:在领先的分析工具的基础上,英特尔将提供加强版的分析与调试工具,以支持DPC++和广泛的SVMS架构。
     

据悉,英特尔将在今年第四季度发布一个One API开发者测试版本,显然,对于AI开发者来说,值得期待。

 

你可能感兴趣的:(人工智能,深度学习)