AI 的架构注意事项

作者:admin  来源:本站  发布时间:2021-08-03  访问量:1222

标记为人工智能 (AI) 或机器学习 (ML) 的定制芯片每周都会出现,每个芯片都声称比现有设备快 10 倍或消耗 1/10 的功率。这是否足以取代现有的架构,例如 GPU 和 FPGA,或者它们是否会与这些架构一起生存尚不清楚。

问题,或者说机会,就是机会空间巨大。在构建AI / ML设备时,需要解决许多问题:

  1. 它打算涵盖什么应用程序或应用程序范围?

  2. 是用于训练还是推理,推理将在哪里进行?

  3. 市场规模有多大,是否足以支持单一用途的产品,还是需要更加灵活?

  4. 设计获胜的粘性有多大,新硬件获得优势或算法进步、淘汰现有硬件需要多长时间?

  5. 您如何创造可以保持的显着竞争优势?

硬件创建始终是全定制 ASIC 和通用可编程设备之间的连续体。发生变化的是,新类型的架构被投入到混合中,改变了处理和内存之间的关系。这意味着现在存在多个连续体。或者从另一个角度来看,它们提供了一个已经变得相关的额外自由轴。

Synopsys人工智能产品和研究总监 Stelios Diamantidis 表示:“我们在过去三四年中看到的架构创新是我们在过去几十年中从未见过的。“可编程性将为您提供更大的灵活性,这对于自动驾驶汽车环境等非常有用。但是,对于您知道应用程序不会改变的情况,超优化也非常有趣。”

对于在数据中心完成的训练,每个人都希望能取代GPU。“GPU 仍然是一个时间机器,”Diamantidis 指出。“它仍然是为几何处理而设计的,在孤立和并行流中查看顶点。然而,GPU 的架构肯定已经发展了。与 2016 年的 GPU 相比,当今数据中心中占主导地位的 GPU 架构看起来更像是一个 AI 芯片,从头开始设计。”

现在包含许多固定功能块的FPGA也是如此。“你是否强化了 AI 推理块?” Xilinx人工智能和软件产品营销总监 Nick Ni 问道。“或者您是否强化了特定的 5G 算法块以针对特定的利基应用进行优化?您必须查看投资回报率并确定这是针对小型细分市场,还是可以重新用于更大的相邻市场?背后有一个完整的战略。”

虽然 FPGA 正在大力推动数据中心的推理,但实际上并没有出现解决方案。Synopsys Verification Group 工程副总裁 Susheel Tadikonda 表示:“正在制造的大多数芯片都是针对最终应用的专用 ASIC。“考虑视力。Facebook 有自己的 AR/VR 耳机,里面是他们自己的视觉处理器。那个特定的 AI 芯片就是针对这个应用程序的。如果我把它放在汽车上,它可能无法完成这项工作。那个视觉处理器正在做一些不同的事情。它有不同的工作量。许多 ASIC 迎合了最终应用。他们都在一个利基市场中发挥作用。”

多种解决方案可能共存。“我不认为它是赢家通吃所有市场,”西门子 EDA战略和业务发展高级经理 Anoop Saha 说。“这是一个不断增长的市场,市场的每个部分都有不同的需求。有 GPU 的空间,有处理器的空间,有 FPGA 的空间,还有数据中心特定芯片的空间——特定于人工智能。”

随着时间的推移,这种组合可能会发生变化。Untether AI 产品副总裁 Bob Beachler 说:“当没有现成的解决方案并且数量还不足以保证实施完整的 ASIC 时,就会使用 FPGA。” “在人工智能爆发的早期(2016-18 年),只有 GPU 和 FPGA 可用于加速人工智能工作负载。从性能的角度来看,FPGA 优于 GPU,但代价是易于实现。现在,随着专用 AI 加速器的出现,将 FPGA 用于 AI 的需求减少了,因为与 GPU 和 FPGA 相比,AI 加速器可提供更好的吞吐量、延迟和性能。在标准产品不可用的新用例中,FPGA 将始终占有一席之地。对他们来说幸运的是,总是有新的应用被发明出来。”

边缘还是数据中心?

讨论需要将在数据中心和边缘完成的计算分开。Synopsys 的 Tadikonda 表示:“数据中心的 AI 芯片都是通过咀嚼大量数据来进行复杂计算的。” “这是我们在学习方面谈论更多的地方,GPU 占主导地位。很少有公司试图为数据中心制造人工智能芯片。谷歌是最引人注目的 TPU。其他公司也在努力,但从经济学的角度来看,这些公司很难发挥重要作用。要构建以数据中心为目标的 AI 芯片,需要量大,而 AI 芯片的制造成本非常高。像谷歌这样的公司可以负担得起,因为他们是自己的消费者。”

要在数据中心取得成功,需要的不仅仅是一块好的芯片。“您需要强大的硬件,以及具有合适散热器和气流的电路板,”赛灵思的 Ni 说。“这需要在许多服务器和 OEM 中获得资格或认证,才能在游戏中发挥作用。拥有一个不适合正确外形或不适合大多数服务器的 1 peta-op 芯片是不够的。这可能是一个非常困难的问题。”

可以为一般性提出强有力的理由。Synopsys 高级产品营销经理 Joe Mallett 表示:“学习芯片的销量不错,但相比之下,推理芯片的销量要高得多。” “采用 FPGA 是因为与 GPU 相比,它的功耗更低。使用 GPU 进行推理的功耗非常高,FPGA 开始被视为低功耗、低成本的解决方案。定制 ASIC 是这些 FPGA 的后续产品。一些公司押注有足够通用的神经网络,在那里他们可以制造半可编程的设备,放入 ASIC,并从根深蒂固的参与者手中接管市场。”

关于边缘的讨论变得更加混乱。“人们认为手机中的人工智能是优势,”Tadikonda 说。“但边缘的定义远不止于此,尤其是因为 5G 创新。消费者或边缘人工智能主要是物联网设备和手机等设备。然后还有其他称为企业边缘的东西,其中可能包括机器人技术或您的制造单位,甚至在您的小型蜂窝中,大量数据在 5G 中聚合。然后是下一级别的边缘,例如电信边缘。这会在数据到达数据中心之前处理数据。”

许多公司已经准备好预测针对这些的设备将成为定制芯片。Mythic 产品和业务开发高级副总裁 Tim Vehling 表示:“由于边缘 AI 设备和应用程序中具有挑战性的设计限制,预计未来几年专用 AI 处理器将取代通用架构。

另一个例子来自Flex Logix 的推理销售、营销和应用副总裁 Dana McCarty 。“我们相信,在 AI Edge 平台中,GPU 是当今每个人都在使用的东西,”他说。“除了昂贵的预生产原型之外,不使用 FPGA。2022 年,边缘 AI 加速器将开始出现。”

如果这听起来像狂野的西部,西门子的 Saha 同意。“这是一个完整的狂野西部。我不认为我们有任何东西可以称为处于边缘的统治者。关于事情将如何发展,它更加动态且更加不确定。这是一个庞大且不断增长的市场,在需求和应用程序用例以及现有参与者正在做的事情的推动下,市场出现了中断。为其增加性能、功率和能源效率,您需要许多不同的解决方案。”

但这里有很大的不同。Synopsys 的 Diamantidis 说:“边缘没有 AI 芯片这样的东西。” “人工智能加速和处理是在边缘运行的系统的关键组成部分,但这些系统也包括不同类型的处理。在许多情况下,它们必须包括标量 CPU。”

Tadikonda 完全同意。“对于大多数边缘来说,没有独立的 AI 芯片。它是一个 SoC,而 SoC 的一部分是一个 AI IP。我们看到大约 5% 到 8% 的芯片面积被分配给了 AI 引擎。我们希望在未来看到这种增长。”

开发 SoC 需要更广泛的经验。“对于任何声称要打造大型边缘或端点 AI 的初创公司来说,他们不仅必须让神经网络引擎正确——具有正确的神经网络支持和正确的性能——而且他们还必须让 SoC 解决这个问题对,”倪说。“此外,要进入机器人或汽车等市场,您必须获得必要的安全认证。”

在边缘,一个好的芯片可以创造新的市场。“能源效率在边缘比在数据中心更重要,”Saha 说。“想想一个芯片可以为用户创造的额外价值,如果它可以由电池供电,而不是需要始终插入。一个非常专门为特定任务设计的芯片可能不会很大,因为它是一个非常具体的设计,但如果财务指标发挥作用,您将看到这些定制芯片的增长。”

正确的芯片可以改变投资回报率。Diamantidis 以助听器为例。“考虑一下,如果您能够在助听器中安装一个模型,该模型可以自主执行诸如自然语言处理之类的任务,会发生什么。这在今天是不可能的。这意味着我不必将音频内容传输到数据中心进行处理,这意味着我的设备更小,因为我不需要通信电路。我的设备消耗的电量要少得多,因为我不需要传输任何东西。并且应用程序可以以显着更低的延迟运行,并在用户体验方面实现一些非常重要的突破,这仅仅是因为我能够适应模型并在设备上运行它而不是让它进行通信,”他说。

软件连接

过去充斥着因软件不足而失败的重大硬件进步。“AI 开发人员不想参与使用硬件描述语言编写自定义硬件,”CacheQ Systems 的技术和业务人员成员 Greg Daughtry 说。“他们习惯于使用基本上是 Python 脚本的工具框架。那么他们如何定制或添加额外的逻辑以将自己与其他人所拥有的区别开来?”

虽然框架可能是标准化的,但仍然涉及很多软件。“人工智能科学家可以直接使用解决方案堆栈,”Ni 说。“但实际上,我们对软件工程师或编译器工程师的投资比硬件工程师要多,以确保我们取得成功。因此,这意味着 AI 科学家几乎可以从 TensorFlow 或 PyTorch 中获取他们在 CPU、GPU 或其他任何设备上训练过的任何模型,并将它们直接编译到 FPGA 中。这是一笔巨大的投资。”

倪很快称赞了早期进入者,英伟达和英特尔。“我肯定会相信英特尔和英伟达,因为他们在十多年前就投资了 CUDA。他们是第一个在他们的工具中使用深度神经网络支持的人。他们花了很长时间才建立了一个足够多的人组成的社区,这些人基本上可以使用他们训练有素的网络并在 GPU 上进行推理。这种努力实际上需要很多年。英伟达花了 10 多年的时间,但好消息是他们为后来的每个人铺平了道路。现在我们确切地知道该怎么做。”

但这并不是故事的结局。“真正的困难不在于应用软件,”Mallett 说。“它是驱动程序,它是执行功能的硬件与操作系统或它之上的任何东西之间接口的部分。”

Tadikonda 走得更远。“问题是如何将编译器输出映射到这些 ASIC 或不同的架构中。那很难。这是每一种供品的肉。芯片其实很简单。AI芯片非常简单。复杂性在于将模型映射到硬件的软件。传统提供商的优势在于他们的库以及他们的应用程序和框架支持是健壮的。人们可以采用它,它变得简单明了。”

是什么让它如此困难?“神经网络在不断发展,现在人们使用更多基于变压器的网络,”Ni 说。“这些都是颠覆性的变化。硬件需要一种非常不同的缓冲方法和新的内存层次结构,以便下一层可以在数据准备好时开始计算。这是一个极其困难的计算机体系结构问题。在几乎 90% 的情况下,内存是运行任何神经网络工作负载的瓶颈。具有强化任务结构的设备,例如 CPU 或 GPU,无法修改它们与内存的关系。”

不断发展的算法、对硬件可能性的理解以及完善映射两者的软件的结合是该行业正在努力解决的任务。在他们花了时间和金钱培养了一个成功的候选人之后,如果他们成功了,有人会设法在自己周围建立护城河吗?

第二部分将探讨围绕硬件和软件流失率的问题以及早期设计获胜可能固有的优势。