多年以来,半导体世界似乎陷入了一种稳定的平衡:除了IBM的POWER系列之外,英特尔在服务器领域击败了几乎所有RISC处理器。而在其他领域,英伟达(Nvidia)是GPU领域的后起之秀,淘汰了大部分竞争对手,只剩下ATI(现属于AMD),但ATI拥有的市场份额仅为英伟达之前所占市场份额的一半。
在较新的移动端,这个近乎垄断的故事似乎重演了一遍:ARM统治了整个世界。尽管英特尔在Atom处理器上进行了大量尝试,但却屡战屡败,并最终在2015年选择放弃。
随后风水轮流转,一切又都发生了变化。AMD重新成为有力的x86竞争对手;适用于大数据等专门任务的现场可编程门阵列(Field Gate Programmable Array,FPGA)处理器的出现创造了新的利基市场。但实际上,芯片产业的巨大转变是伴随着人工智能(AI)和
机器学习(ML)技术的出现而来的。随着这些新兴技术的出现,涌现了大量新型处理器,并且这些新型处理器来自人们之前想不到的来源。
英特尔于2016年通过收购初创企业Nervana Systems进入这一市场,其随后收购了第二家公司Movidius用于开发处理图像的人工智能。
微软正在为其虚拟现实/增强现实头戴设备HoloLens研发人工智能芯片,并且该芯片有望在其他设备上应用。
谷歌有一个用于神经网络的特殊人工智能芯片,名为张量处理器(Tensor Processing Unit,TPU),可用于Google云端平台上的人工智能应用程序。
据报道,亚马逊正在为其Alexa家庭助理开发人工智能芯片。
苹果正在开发一款名为神经引擎(Neural Engine)的人工智能处理器,该处理器可为Siri和FaceID提供支持。
ARM公司最近推出了两款新处理器,即ARM机器学习(ML)处理器和ARM物体检测(OD)处理器。两款处理器都专注于图像识别。
IBM正在开发专门的人工智能处理器,该公司还从英伟达获得了NVLink的许可,以便提供专门用于人工智能和机器学习技术的高速数据吞吐量。
即使是像特斯拉这样的非传统科技公司也希望进入这一领域,其首席执行官埃隆·马斯克(Elon Musk)于2017年承认,前AMD和苹果公司芯片工程师吉姆·凯勒(Jim Keller)将为这家汽车公司构建硬件。
这一宏观观察还没有将初创企业考虑在内。《纽约时报》表示,据不完全统计,专注于人工智能的芯片初创企业(而不是单纯的软件公司或芯片公司)已达到45家,并且这一数字还在继续增长。
那么,在芯片制造业的发展停滞多年后,为什么硬件会突然出现爆发式增长呢?毕竟,人们普遍认为英伟达的GPU非常适合人工智能且其已被广泛使用。为什么我们现在需要更多的芯片,并且还是那么多不同的芯片呢?
答案有点复杂,就像人工智能本身。
(1)以资金、使用场景和效率为导向
虽然x86目前仍然是用于计算机信息处理的主导芯片架构,但它对于像人工智能这样的高度专业化任务来说还是太普通了,Intersect360 Research(位于美国的咨询与服务公司,其业务涵盖高性能计算和人工智能问题)的首席执行官艾迪生·斯内尔(Addison Snell)表示。
“x86是以通用服务器平台为目标构建的。因此,它必须什么都很擅长,”他说道。“而对于其他芯片,各家公司构建的是专门针对一个应用程序的架构,无需将基础架构的其他部分考虑在内。因此,可将操作系统和基础架构的运行任务留给x86主机,同时将其他任务分包给各种协同处理器和加速器。”
处理人工智能的实际任务是与标准计算或GPU处理完全不同的流程,因此,需要专门的芯片来完成这一任务。x86 CPU可以完成人工智能任务,但对于实际只需三个步骤即可完成的任务,它会执行十二个步骤来完成;GPU在某些情况下还可能会被大材小用。
一般而言,科学计算是以确定的方式进行的。例如,如果您想知道2加3等于5并计算所有小数位,那么x86和GPU就可以做得很好。但人工智能的本质是,在没有实际运行计算的情况下,表示几乎在所有情况下都能观察到2.5加3.5等于6。对于当今的人工智能而言,重要的是从数据中识别模式,而不是确定性计算。
简而言之,界定人工智能和机器学习的是它们从过去的经验中学习并加以改进的能力。著名的阿尔法狗(AlphaGo)就是通过模拟大量围棋比赛来提高自己的棋艺的。另一个大家都熟悉的例子是Facebook的面部识别人工智能,经过多年的训练,它已经能够准确地标记用户的照片。
人工智能一旦学会,就不再需要重新学习。这是机器学习的标志,也是人工智能更广泛定义的一部分。究其本质,机器学习是一种使用算法解析数据、从中进行学习,然后根据这些数据作出判断或预测的实践。这是一种模式识别机制,例如,机器学习软件会记住2加3等于5,让整个人工智能系统都得以使用这一信息。
另一个示例是用于
无人驾驶汽车的人工智能。它不会通过确定的事物来判断所处环境中其他物体的活动路径,而只是利用过往的经验,表示曾经有一辆车在此处这样行驶,而且当我在其他所有时间观察到这样一辆车时,它都是这样行驶的。因此,系统可以预期特定类型的行动。
这种预测性问题解决方法的结果是,人工智能计算可以通过单精度计算完成。因此,虽然CPU和GPU能够很好地完成此类计算,但它们对于这项任务而言实际上是杀鸡焉用牛刀的存在。单精度芯片就可以完成这个任务,并且能够以低得多的功耗完成。
毫无疑问,功耗和尺寸对于芯片而言很重要,尤其是对于人工智能而言,因为单一尺寸并不能适用于这个领域的所有情况。人工智能包含机器学习,而机器学习则包含深度学习,并且所有这些技术都可通过不同的设置针对不同的任务进行部署。“并非每个人工智能芯片都是一样的,”英特尔子公司Movidius的营销总监加里·布朗(Gary Brown)说道。Movidius专门针对深度学习流程制作了定制芯片,因为所涉及的步骤在CPU方面受到高度限制。“每个芯片可以在不同的时候处理不同的智能信息。我们的芯片是视觉智能,因此算法使用摄像头输入内容进行学习,得出所见内容代表的意义。”
布朗表示,甚至需要并且有必要在网络边缘以及数据中心进行区分,身处这一领域的公司已经察觉自己需要在这些不同的位置使用不同的芯片。
“边缘芯片不会与数据中心芯片竞争,”他说道。“像Xeon至强这样的数据中心芯片必须具备针对这类人工智能的高性能功能,但对于智能手机中使用的人工智能则没有这样的要求。智能手机中的人工智能必须将功耗保持在1瓦以下。所以问题在于,‘原生处理器的哪方面不够好以至于用户需要辅助芯片?’”
毕竟,如果想在智能手机或增强现实头戴设备中使用人工智能,那么功耗会是个问题。英伟达的Volta处理器是人工智能处理领域的佼佼者,但其功耗高达300瓦。用户是不会想要在智能手机中硬塞进去这么一个处理器的。
肖恩·斯特森(Sean Stetson)是工业无人驾驶车辆制造商Seegrid的技术研发总监,他也认为人工智能和机器学习技术的发展到目前为止一直被普通处理器拖累。“为了让任何算法都能运行,无论是机器学习、图像处理还是图形处理,都有非常具体的工作流程,”他说道。“如果您没有针对这些模式进行设置的计算核心,那么您会执行大量无意义的数据加载和传输操作。而当您移动数据时,就是您效率最低下的时候,此时会产生大量信号传输功耗和瞬态功耗。处理器的效率是根据每条指令消耗的能量进行衡量的。”
当然,对更高的专业化程度和能源效率的追求并不是这些新型人工智能芯片存在的全部原因。IBM研究员兼IBM Power系统开发副总裁布拉德·麦克雷迪(Brad McCredie)表示,大家一窝蜂加入进来的更大原因在于回报十分丰厚,“整个转折点就在于大家预期会有大量新资金注入IT行业,而且这些新资金全都与人工智能有关,这导致大量风险资本涌入人工智能领域。毫无疑问,人们看到了淘金潮。”
(2)全新的生态系统
专注于人工智能的芯片并不是凭空设计出来的。伴随它们而来的是应对人工智能和机器学习处理的高度并行特质的新吞吐方法。如果您构建人工智能协同处理器,但使用标准计算机甚或服务器的过时技术,那就会像是将法拉利引擎放入大众甲壳虫汽车一样。
“当人们谈论人工智能和用于人工智能的芯片时,需要注意的是构建人工智能解决方案需要相当多的非人工智能技术,”英特尔人工智能产品事业部副总裁兼首席技术官及Nervana联合创始人阿米尔·霍斯劳沙希(Amir Khosrowshahi)说道:“它涉及CPU、内存、SSD和互连。让所有这些因素都发挥作用非常关键。”例如,IBM在针对任务关键型系统设计其Power9处理器时使用了英伟达的高速NVLink(用于核心互连)、第四代PCI Express及其自己的接口OpenCAPI(Coherent Accelerator Processor Interface,一致性加速处理器接口)。OpenCAPI是一种新的连接类型,它为内存、加速器、网络、存储和其他芯片提供高带宽、低延迟的连接。
麦克雷迪表示,x86生态系统并没有跟上节奏。他指出了第三代PCI Express已经上市七年但却没有进行过重大更新这一事实(第一次更新还是最近才发布的),而IBM是最先采用该接口的公司之一。x86服务器仍然配备的是第三代PCIe,其带宽仅为第四代PCIe的一半。“计算功能的这一爆炸式增长将需要数量级的计算能力提升,”他说道。“我们需要处理器完成其力所能及的一切任务,然后在此基础上完成更多任务。该行业终于开始关注内存带宽和I/O带宽性能。这些方面正在成为系统性能受到的第一级约束。我认为加速器的规模将会出现增长,将会有更多的工作负载需要更多的加速。我们甚至会回过头去加速数据库和ERP(企业资源规划)等常见工作负载。我认为,我们正在见证这个行业稳步转变的开端,我们将更加注重加速,并且市场上的加速产品会变得更多。”
但只靠硬件并不能完成机器学习中的学习部分,软件的作用举足轻重。在这一新型芯片淘金热浪潮中,几乎没有人提及与之相伴的软件。幸运的是,这是因为软件在很大程度上已经做好准备,它正在等待芯片迎头赶上,金融分析和人工智能开发公司OTAS Technologies的首席执行官汤姆·多里斯(Tom Doris)如此表示。“我认为,如果您看一下更加久远的历史,就会发现所有发展都是靠硬件驱动的,”他说道。“算法并没有出现太大的变化。发展都是靠硬件领域的进步推动的。这对于离开这一领域多年的我来说是一个惊喜。自二十世纪九十年代末以来,软件和算法并没有太多变化,基本上都是计算能力在变。”
彭博(Bloomberg)首席技术官办公室的数据科学家戴维·罗森堡(David Rosenberg)也认为软件的发展状况良好。“有些领域的软件发展还有很长的路要走,这与分布式计算相关,与分布式神经计算科学相关,”他说道。“但对于我们已经知道该怎么做的事情,软件已经得到了很好的改进。现在的问题是硬件是否能够足够快速、高效地执行软件。”
事实上,在目前的一些使用场景中,硬件和软件是并行开发的,目的在于支持这一人工智能芯片和使用场景的新浪潮。英伟达人工智能工作负责人伊恩·巴克(Ian Buck)指出,在英伟达,软件和硬件团队的规模大致相当。巴克开发了CUDA编程语言,借助CUDA,开发人员能够将
应用程序编写为使用英伟达的GPU进行并行处理,而不使用CPU。他表示:“我们在协同开发针对系统软件、库、
人工智能框架和编译器的新架构,这些全都是为了利用不断涌现的新方法和神经网络。在人工智能领域取得成功的唯一途径不仅仅是构建出色的芯片,同时还需要在整个软件堆栈中进行紧密集成,以实施和优化这些不断被发明出来的新网络。”
因此,对于巴克而言,人工智能代表新计算类型的原因之一在于,他认为人工智能确实构成了硬件和软件之间的一种新型关系。“我们不需要考虑向后兼容性,我们正在重新发明擅长处理此类任务的处理器,并同时开发在这些处理器上运行的软件。”
(3)这场芯片竞赛的未来
尽管目前有很多家潜在的人工智能芯片开发公司,但围绕所有这些举措提出的最大问题之一是,有多少芯片将会推向市场、有多少芯片将会专属于供应商以及有多少芯片将被彻底淘汰。如今的大部分人工智能芯片仍然只是幻影。
至于那些设计人工智能芯片的非CPU制造商(例如谷歌、Facebook和微软),您会发现这些公司似乎都在制作供自己使用的定制芯片,并且很可能永远不会将这些芯片推向市场。此类公司可以将数十亿美元的收入投入定制芯片的研发,且无需立即得到明确的投资回报。因此,虽然用户可以通过Google云端平台服务使用谷歌的张量处理单元,但谷歌却不会直接销售该芯片。这也是Facebook和微软期望实现的模式。
其他芯片则肯定会进入市场。英伟达最近宣布推出三款面向人工智能的芯片:专为智能机器人设计的Jetson Xavier片上系统;专为自动驾驶出租车设计的Drive Pegasus;以及专为半自动驾驶汽车设计的Drive Xavier。为所有这些芯片提供动力的是Isaac Sim模拟环境,开发人员可将该环境用于训练机器人及使用Jetson Xavier进行测试。
与此同时,英特尔承诺其首款基于Nervana(英特尔于2016年收购)技术的机器学习处理器将在2019年以Spring Crest的代号进入市场。该公司目前还有一款名为Lake Crest的Nervana芯片,可供开发人员作涉足人工智能领域之用。英特尔表示,Spring Crest的性能最终将达到Lake Crest性能的三倍到四倍。
所有参与者都能存活下来吗?“我认为在未来,我们将看到人工智能自我显现的演变过程,”Movidius的布朗表示。“如果您想要将其用于数据中心,那么您需要提供数据中心芯片。如果您想要将其用于头戴式设备,那么您也需要为其找到合适的芯片。这将是人工智能芯片的发展趋势,我们可能会看到拥有不同功能的不同芯片,并且这些功能可能会合并到CPU中。我们还可能会看到具有多个功能的芯片。”
如果一切都有点似曾相识,那么现实可能就是这样的。人工智能芯片的发展在某些方面可能与过去的芯片演变过程相似:一切从高度专业化和众多竞争对手开始,但最终一些产品会越来越受欢迎,且少数市场领导者会提供多种功能。三十年前,80386是首屈一指的桌面芯片,如果您要在Lotus 1-2-3中进行大量计算,那么您可以为自己的IBM PC-AT购买一台80387数学协同处理器。接下来是80486,英特尔就将数学协同处理器集成到CPU中进行了各种尝试。随后,CPU慢慢获得了安全扩展、内存控制器和GPU等功能。
因此,就和其他所有技术一样,这一新兴人工智能芯片行业也无法将存在众多竞争对手的局面维持太久。例如,OTAS的多里斯指出,许多没有进入市场的内部芯片会成为高级技术人员的个人爱好项目,而制度的改变通常意味着采用行业标准。Intersect360的斯内尔指出,如今的人工智能芯片初创企业大军也会缩水。正如他所说,“这个行业目前有太多竞争对手,因而需要进行整合。”其中许多公司可能只是想要开辟出一个利基市场,以此吸引大公司来收购它们。
IBM的麦克雷迪说道:“我同意,这将是一场艰难的竞赛,但规模必须缩小。”有一天,这可能意味着这一新型芯片领域看起来会和过往的芯片领域并无两样:x86、英伟达GPU、ARM世界之类的。但就目前而言,这场人工智能芯片竞赛只是刚刚开始,并且众多参赛者都打算继续奋勇向前。