设计超低功耗人工智能处理器

随着越来越多的处理转向电池驱动的设备,方法和技术正在发生变化。

受欢迎程度

随着越来越多的计算转向边缘,人工智能芯片设计开始转变方向,增加了通常属于云计算的复杂程度和功能,但在与电池兼容的电源范围内。

这些变化利用了许多现有的工具、技术和芯片设计的最佳实践。但他们也开始融入各种新的方法,强调硬件和软件之间的相互作用,以及关于如何提高这些计算效率的新研究。预测要求这些新的架构方法比现在能够实现的每秒和每瓦完成更多的操作。

PowerArtist产品管理主管Preeti Gupta表示:“与任何新设计一样,新AI芯片设计的第一个目标是功能,其中功率仅限于一个指标,只有在栅门网表准备就绪时才能测量。有限元分析软件.“芯片架构师很快就意识到,高功耗对功能和盈利能力有可怕的影响。此外,配电网络可能无法承受数百瓦的功耗,因此封装可能需要额外的金属层,从而导致成本显著增加,而热冲击可能会跨越芯片、封装和系统。”

现在许多这样的设备都需要使用相同或更小的电池进行更多的计算。

“如果你看看早期消费者人工智能比如Alexa或Siri,它们的处理都是在云端完成的,很少有本地处理,”微软的IP子系统产品营销经理里奇·柯林斯(Rich Collins)说Synopsys对此.“现在,有必要将人工智能推向实际的边缘设备,无论是你的Fitbit、智能手表,甚至是手机。所有的事情都需要更多的本地处理——或者至少是本地可以完成的本地处理——这意味着电力消耗问题现在是相关的。如果它进入数据中心,它仍然很重要,但它不那么重要。如果你的手表充电后只能维持24小时,那么你就不可能拥有高功率处理器。”

这不仅局限于可穿戴电子产品。同样的问题也出现在日益自动化的汽车系统中,以及包括语音识别、手势识别或人脸检测在内的监控摄像头中。柯林斯说:“神经网络引擎正在越来越多地解决这些问题,工程团队希望看到这样的想法,即他们可以在网络引擎上构建一个框架,以处理应用程序的需求。”

所有这些都需要尽早纳入设计流程,使用节能方法,提供功耗和配置文件的可见性。早期分析RTL例如,上面的内容允许具有高影响力的与电源相关的设计决策。然而,在设计流程的后期,当网络列表可用时,与功率相关的更改被锁定在高级架构中,只能提供增量效益,Gupta说。

有什么不同
然而,并非所有这些都是简单的。人工智能带来了一系列新的挑战。快速变化的算法意味着设计工程师必须每周甚至每天都要分析功率。此外,这些设计中的许多在物理上都很大——有时超过了十字线的大小。因此,工具需要应用大数据和弹性计算功能来读取完整的设计。其中一些可以在普通机器上完成,但不是全部。

古普塔说:“人们会认为,对于一个具有重复结构的设计,你可以优化其中一个结构并进行复制。”这倒是真的。然而,一些最严重的功率“bug”可能发生在块对块的交互中,这些交互只有在完整设计的上下文中才可见。关闭整个区块的时钟比关闭单个寄存器库的时钟对电力的影响要大得多。”

由于广泛的算术逻辑,人工智能推理也容易出现故障。基于rtl的方法已经出现,可以在设计流程的早期突出容易出现故障的区域。此外,在使用带有门网列表的RTL活动数据时,重要的是要有一个可以传播事件以计算故障功率的功率分析框架,而不是容易出错的统计活动传播方法。Gupta说,事件传播是昂贵的,在大数据系统中使用大规模并行方法是必要的。

虽然在设计中实现低功耗没有一个技巧,但有几个关键点是机器学习特有的。

“在很多方面,ML处理更多的是一个数据管理问题,而不是一个‘处理’问题,”微软机器学习集团营销副总裁Dennis Laudick说手臂.“ML处理中涉及的数据可能非常大,如果你不专注于有效的数据移动,你很容易浪费100倍的能量来移动数据,然后再处理它。定制压缩、量化、修剪、集群、最小化处理器数据重载等技术绝对是至关重要的。”

此外,ML仍然是一个非常动态的研究领域,与灵活、面向未来但效率较低的通用处理相比,在高度固定和高效的硬件中实现多少处理还存在挑战。


图1:Arm的低功耗AI芯片组。来源:手臂

该公司市场开发经理Anoop Saha说:“在像门铃摄像头这样的应用程序中,让电源变得如此具有挑战性的是,如果你看看系统的电源包线,它正在查看图像并识别图像的模式,创建网络。Mentor是西门子旗下的企业.“这需要大量的计算和内存访问。如今市场上的情况是,设计团队会从瑞萨、恩智浦、Arm或其他供应商那里拿一张卡。有一个简单的卡,上面有一个CPU和一些其他的东西,比如一个通用的CPU,一个通用的计算元素,一个通用的内存元素。有一些特定的东西是围绕AI构建的,但市场上存在的大多数卡片都是通用的。这是这些公司盈利的唯一途径。这些卡片必须是通用的,所以它们可以应用于各种各样的情况。但是,因为它是通用的,所以它并不专门用于特定公司正在处理的用例。这就是内存的组织方式,以及应用程序访问内存的方式的原因之一,功率信封比他们想要的要多30到40倍。它不像进入数据中心那样,但它需要一个持续的电源连接。 Otherwise, the battery will die very soon. They are using a general-purpose chip for doing a very specific AI application, but it’s a different way of computing and different way of doing things, so that shoots up the power envelope of that chip. The more you specialize, the better it is.”

传统的专业化选择涉及asic和fpga,但这两者都有限制,可能使它们不适合超低功耗AI处理器。

Saha表示:“fpga的速度相对于许多选项都要慢。“它们可以有一个非常高的功率信封,所以你可能会节省一些钱,但你却没有。你节省了一些能量,但还不够。这也是有代价的。如果物联网设备是批量生产的,那么fpga就不是正确的解决方案。使用ASIC的问题在于,您希望它针对特定的用例专门化。这是一个额外的成本因素。如果它不是在量,有一个权衡。该公司必须决定是否投资芯片开发,或者是否应该从市场上购买通用的东西。如果他们做ASIC,他们应该能够适应它,添加新的网络层,稍后改变权重。 Also, it should be fairly robust. They need to determine if the ASIC they are designing is the best ASIC they can do for these types of applications. That requires a lot of verification and early power computation. It needs paradigm of everything, including how you design a chip, how you verify it, whether you have the right metrics before you send the chip for tape-out, and you have to be able to do it at volume without a huge budget. All three of those things need to align.”

人工智能处理器有什么新进展
许多现有的人工智能处理器与其他类型的处理器并没有太大的不同。但随着多个细分市场的大量研究以及AI/ML/DL广泛应用于许多新的且通常是独特的应用,这种情况开始发生变化。

“人们推出了许多创新的人工智能模型,因此任何IP供应商都需要能够采用人们生成的这些不同的模型或神经网络,并赋予他们在硬件上快速运行的能力,”视觉和人工智能dsp的产品营销和管理集团总监Pulin Desai说节奏.“但设计团队需要对未来有一定的灵活性,这样如果有新发明,他们就能迅速推出。”

Synopsys公司的柯林斯说,人工智能处理器的共同点是目前所采用的电源管理技术。“你会看到时钟门控和电源岛之类的东西,因为电源管理很关键。例如,如果你看看嵌入式视觉处理器上的编程范式,就会发现在RISC核心上有某些部分的编程。这是视觉引擎的一部分。然后,这些神经网络可能非常大,这取决于其中的乘法累加单元的数量。但总的来说,功率门控仍然是任何架构的重要组成部分。”

然而,他指出了一个微妙的转变,重点是理解算法,然后根据这种理解确定可以关闭什么,而不管这是否包括电源或时钟。“概念是一样的。这只是一个试图理解应用空间的问题,以及在哪里有意义,能够利用它,”Collins说。“如果你考虑的是车载ADAS的嵌入式视觉,它是一个非常高性能的部件,但会消耗大量电力。你能做的任何调整都将是有帮助的。”

其他的变化就没那么微妙了。“随着许多新设备的出现,我们看到人们关注的焦点是它们的耗电量以及可以使用哪些新的拓扑结构来提高它们的效率,”安德里亚斯Brüning说,他是该公司高效电子部门的负责人弗劳恩霍夫IIS的自适应系统工程部。“现在有新技术和研究来研究什么是设备的正确材料。我们还看到了关于从模拟到数字转换的研究,以获得更大的数据处理灵活性。在物联网领域,越来越多的传感器连接到数据。我们一直在研究一种具有更高效功耗的随机数生成器。”

然而,并不是所有实现超低功耗AI处理器最佳架构的挑战都是AI独有的,Collins说。“在一定的功率范围内,你想要多少功能?你希望你的智能手表能做所有这些事情,但你又抱怨智能手表的电池只能用两个小时。这是一个权衡,希望它能做所有事情,但在一个合理的功率范围内,特别是对于电池供电的设备。”

独特之处在于,设计团队更加开放地看待过去被很大程度上忽视的选项,以便从设计中挤出每一点功能和性能。因此,虽然多年来人们一直在谈论降低高级节点利润率的必要性,但实际上,通过制造链,降低利润率的能力分散在设计的不同部分。因此,虽然技术和技术可能很熟悉,但它们使用的精度才刚刚开始被充分理解。

“关键是你将在这些设备中监测这些条件,因为当你试图测量某些东西时,你可能会替换一些固有的信息,”Stephen Crosher说Moortec.“人工智能设备的条件非常不同。它可能由数百个内核组成,甚至可能由数十万个内核组成。但是当它们运行算法时,工作负载是非常突发的,我们看到的是,您经常无法提供足够的功率来让所有核心同时运行。所以你从来没有达到完全的利用率。解决方案是最大限度地利用你能提供给设备的能量。”

另一边
人工智能正迅速从流行语变成现实。“我们面临的挑战是,现在所有的客户都想参与这类事情,无论是使用基本的物联网设备还是基于云的东西。我们一直在努力创造一种独特的外观和感觉,这样对我们的客户来说一切都很容易,因为他们可能有一个低端的项目,然后可能在未来他们会有另一个高端的项目。他们不需要重新学习全新的体系结构和全新的编程范式。他们想要利用相似的外观和感觉,这就是我们现在花费大量时间和精力的地方,”Collins说。

这种方法似乎在无晶圆厂人工智能芯片制造商中越来越受欢迎。创业公司percepter的首席执行官史蒂夫·泰格(Steve Teig)正在开发一种运行功率为20毫瓦的先进神经网络,他说,最有趣、最复杂、最令人兴奋的部分是机器学习技术本身。

泰格说:“虽然我为硬件感到自豪,但硬件实际上是几年来真正新颖的研究和新颖严谨的数学的体现,以找出我们应该如何以不同的方式思考计算。”“如果你看看其他无数用神经网络进行推理的公司,无论大小,每个人都有大量的mac。我们没有。我们认为,你需要一组mac来进行神经网络处理,这是一个转移注意力的问题。如果你想一下神经网络所做的计算,你不需要用明显的方式把计算写下来。而是愿意冒这个险,并计算出所有的数学公式,让它成为可能。”

大型系统公司也在开发自己的定制硬件。"许多公司都在尝试,而且不只是传统的芯片公司或传统的原始设备制造商," Mentor的Saha表示。“现在做人工智能芯片的公司,比如阿里巴巴、谷歌和Facebook,都在设计自己的芯片。这对很多事情都有多米诺骨牌效应。节点是什么?将全部是台积电7nm小芯片,还是有更高的节点可以用于这些?在某些例子中,即使是GlobalFoundries的22nm芯片也可以比低节点的通用计算节省至少10倍的功耗。开发商可以根据自己的具体因素选择最佳节点。”

他指出,如今几乎所有的大学都在研究这些问题。事实上,这是过去几十年来芯片发展最活跃的时期。

“然而,正在发生的最重要的动态是不同领域的融合,”他说。“硬件人员、软件人员、架构人员——他们都作为一个团队的一部分一起工作,向一个经理汇报。这在以前没有发生过。由软件工程师编写算法。架构师将使用算法并创建架构,并将其传递给设计团队。然后核查小组就处于完全不同的领域。一个非常有趣的组织演变正在发生,一个10人、15人、20人的小团队将在8个月内完成一个芯片。我们所有人将一起工作——设计团队、验证团队、架构团队和软件团队将向同一个层级报告,定期开会并一起决定事情。”

不同的前进道路
在同一设计中结合多个学科已经讨论了几十年,但为了在低功耗AI领域具有竞争力,这是第一次得到大量自上而下的支持。

“这意味着你需要团队中深刻理解软件开发、硬件开发和机器学习的人,”Perceive的Tieg说。“这些都是非常专业的学科。很难找到精通所有这些领域的人,也很难找到一个团队将所有这些领域紧密联系在一起。我们特意按照这个方向组建了一个团队,有我以前的人,也有来自Xperi(母公司)和其他公司的人,所以我们有一群硬件专家、软件和ML专家,还有足够多的人,他们分别涉足其中一个以上的学科,能够共同构建这个团队。否则,你就会让软件人员设计硬件,这就不太好,或者让硬件人员设计软件,这就更糟糕了。”

-Ed Sperling对本文也有贡献。



留下回复


(注:此名称将公开显示)

Baidu