中文 英语

主流芯片架构的巨大变化

随着设备规模效益的下降,支持人工智能的系统正在被设计成在本地处理更多数据。

受欢迎程度

芯片制造商正在研究新的架构,以显著提高每瓦和每个时钟周期可以处理的数据量,为几十年来芯片架构的最大转变之一奠定了基础。

所有主要的芯片制造商和系统供应商都在改变方向,引发了一场架构竞赛,包括从如何在内存中读取和写入数据到如何处理和管理数据,以及最终如何将过去在单个芯片上的各种元素打包在一起。虽然节点收缩将继续,但没有人指望扩展来跟上传感器数据的爆炸和机器之间日益增长的流量。

这些变化包括:

  • 新的处理器架构专注于每个周期处理较大数据块的方法,有时精度较低,或者根据应用程序将特定操作优先于其他操作。
  • 新的内存架构正在开发中,它改变了数据存储、读取、写入和访问的方式。
  • 更有针对性的处理元素分散在系统周围,靠近内存。加速器不是依赖于最适合应用程序的主处理器,而是根据数据类型和应用程序来选择。
  • 人工智能正在努力将不同的数据类型融合在一起,形成模式,有效地提高数据密度,同时最大限度地减少不同数据类型之间的差异。
  • 打包现在是体系结构的核心组件,越来越强调修改这些设计的便利性。

“有一些趋势正在导致人们试图最大限度地利用他们已经拥有的东西,”斯蒂芬·吴(Steven Woo)说Rambus.“在数据中心,你希望从硬件和软件中挤出尽可能多的空间。这是数据中心重新思考其经济的方式。实现新事物是非常昂贵的。但瓶颈正在改变,这就是为什么你会看到专门的硅和使计算更高效的方法。如果你能控制数据在内存和I/O之间的来回传输,就会产生很大的影响。”

这种变化在边缘和边缘之外更为明显,系统供应商突然意识到,数百亿台设备产生的数据太多了,无法将所有数据都发送到云端进行处理。但是在边缘处理所有这些数据也增加了自己的挑战,需要在不显著改变电力预算的情况下大幅提高性能。

Nvidia的特斯拉首席平台架构师罗伯特•奥伯(Robert Ober)表示:“人们开始强调降低精度。”“这不仅仅是更多的计算周期。它更多的是将数据打包到内存中,使用16位指令格式。所以这并不是为了在缓存中存储更多的数据来提高效率。从统计上看,两种结果都是一致的。”

Ober预测,通过一系列架构优化,在可预见的未来,处理速度每隔几年就可以翻一番。“我们将看到技术水平的改变,”他说。“为了实现这一目标,我们必须处理三条屋顶线。一个是计算。第二是记忆。在一些模型中,这是内存访问。在其他方面,它是计算。第三个方面是主机带宽和I/O带宽。我们需要在优化存储和网络方面做大量工作。”

其中一些已经开始实施。在2018年热芯片大会上,三星奥斯汀研发部门的首席架构师杰夫·鲁普利(Jeff Rupley)指出了该公司M3处理器的几个主要架构变化。一种是每个周期包含更多的指令——6条宽,而以前的M2是4条宽。再加上分支预测,基本上是几个神经网络在搜索中进行相当于预取的操作,并且指令队列的深度是原来的两倍,挑战开始成为焦点。

从另一个角度来看,这些变化将创新的纽带从制造和工艺技术转移到前端的架构和设计,以及后端的制造后包装。虽然流程技术的创新还在继续,但在每个新节点上仅提高15%到20%的性能和功耗是非常复杂的,而且这远远不足以跟上数据的大规模增长。

“变化正在以指数级的速度发生。赛灵思公司他在Hot Chips的一次演讲中说。“将会有10泽字节21每年产生大量的数据,其中大部分是非结构化数据。”

记忆的新方法
处理这么多的数据需要重新思考系统中的每个组件,从数据处理的方式到数据的存储方式。

“已经有很多尝试去创造新的内存卡洛斯Maciàn说,创新的高级总监eSilicon EMEA.“问题是你需要读取每一行,并在每一行中选择一位。一种替代方法是建立可以从左到右、从上到下读取的记忆。你也可以更进一步,增加接近不同内存的计算。”

这些改变包括改变读取内存的方式、处理元素的位置和类型以及使用人工智能对数据在整个系统中的存储、处理和移动的方式和位置进行优先级排序。

“如果在稀疏数据的情况下,我们一次只能从数组中读取一个字节,或者从同一个字节通道中读取八个连续字节,而不使用与我们不感兴趣的其他字节或字节通道相关的所有能量,”Marc Greenberg说节奏.“未来可能更容易接受这类事情。如果我们看一下HBM2例如,一个HBM2骰子堆栈被安排到16个64位的虚拟通道中,我们只需要从任何对任何虚拟通道的访问中获得4个连续的64位字。因此,可以构建1024位宽的数据数组,并水平写入,但每次垂直读取64位x 4个字。”

内存是冯·诺依曼架构的核心组件之一,但它也正在成为最大的实验领域之一。AMD客户产品首席架构师丹•布维耶(Dan Bouvier)表示:“一个最大的敌人是虚拟内存系统,在这种系统中,数据的传输方式更加不自然。”“你有翻译的翻译。我们在图像方面已经习惯了这一点。但如果你能消除银行冲突动态随机存取记忆体在美国,你可以获得更高效的流媒体服务。所以一个独立的GPU可以在90%的效率范围内运行DRAM,这是非常高的。但如果你能获得流畅的流,你也可以在80%到85%的效率范围内运行apu和cpu。”


图1:冯·诺依曼体系结构。来源:半导体工程

IBM正在开发一种不同的内存体系结构,它本质上是磁盘条带化的现代化版本。而不是局限于单个磁盘,目标是利用连接器技术利用可用的任何内存,Jeff Stuecheli在IBM将其称为连接的“瑞士军刀”。这种方法的优点是可以混合和匹配不同类型的数据。

Stuecheli说:“CPU成为了一个高性能信号接口的中心。”“如果你修改微架构,核心可以在不提高频率的情况下,在每个周期做更多的工作。”

连接性和吞吐量对于确保这些架构能够处理不断膨胀的生成数据越来越重要。Rambus的Woo表示:“目前最大的瓶颈是数据转移。”“这个行业在实现更好的计算方面做得很好。但如果您正在等待数据或专门的数据模式,则需要更快地运行内存。如果你看DRAMNVM,性能取决于流量模式。如果你流数据,你从内存中得到非常好的效率。但如果数据在空间中随机跳跃,效率就会降低。不管你做什么,随着体积的增加你必须更快地完成所有这些。

更多的计算,更少的移动
更复杂的是,边缘设备会以不同的频率和速度生成多种不同类型的数据。为了使数据在各种处理元素之间顺利移动,必须比过去更有效地管理数据。

“有四种主要的配置-多对多,内存子系统,低功耗Io,网格和环形拓扑,”的董事长兼首席执行官Charlie Janac说Arteris IP.“你可以把这四种功能放在一个芯片上,这就是决策过程中发生的事情物联网芯片。或者您可以添加具有高吞吐量的HBM子系统。但其复杂性是巨大的,因为其中一些工作负载非常具体,每个芯片都有多个工作负载和引脚。如果你看看这些物联网芯片,它们正在接收大量的数据。对于汽车上的雷达和激光雷达这样的设备来说尤其如此。如果没有某种先进的互联,它们就无法存在。”

我们面临的挑战是如何最大限度地减少数据移动,同时在需要时最大化数据流,并以某种方式在不使用太多电源的情况下实现本地处理和集中式处理之间的平衡。

“一方面是带宽问题,”该公司产品营销经理拉杰什•拉马努贾姆表示NetSpeed系统.“如果可能的话,你想尽量不移动数据,所以你把数据移到更靠近处理器的地方。但是,如果您确实需要移动数据,则希望尽可能地压缩数据。然而,这些都不是在真空中独立存在的。这一切都必须从系统级别来看。每一步都需要考虑多个顺序轴,这决定了您是以传统的读写方式使用内存,还是利用新的内存技术。在某些情况下,您可能希望更改存储数据本身的方式。如果你想要更快的性能,这通常意味着更高的面积成本,这会影响功率。现在考虑到功能安全,你还得担心数据过载。”

这就是为什么人们如此关注边缘处理和各种处理元素之间的吞吐量。但是,随着体系结构的开发和改进,如何以及在哪里实现该处理将有很大的不同。

举个例子:Marvell推出了内置AI的SSD控制器,这样它就可以在边缘处理更大的计算负载。AI引擎可以用于固态存储本身的分析。

“你可以直接将模型加载到硬件中,并在SSD控制器上进行硬件处理,”该公司首席工程师Ned Varnica说迈威尔公司.“今天,云中的主机可以做到这一点。但如果每个驱动器都要将数据发送到云端,这将产生大量的网络流量。最好在边缘进行处理,由主机发出一个只是元数据的命令。所以你拥有的存储设备越多,你的处理能力就越强。减少交通流量的好处是巨大的。”

这种方法特别值得注意的是,它强调了数据移动的灵活性,这取决于应用程序。因此,主机可以生成一个任务,并将其发送到存储设备进行处理,处理后只发回元数据或计算结果。在另一种场景中,存储设备可以存储数据,对其进行预处理并生成元数据、标签和索引,然后由主机根据需要检索以进行进一步分析。

这是一种选择。还有其他的。三星的Rupley强调了乱序处理和融合习语,它可以解码两个指令,并将它们融合成一个操作。

人工智能监管与优化
人工智能贯穿于这一切之中,这是进入芯片架构的真正新元素之一。而不是让操作系统和中间件管理功能,这种监督是围绕一个芯片分布的,在芯片之间,在系统级别。在某些情况下,这可能包括芯片中的神经网络。

eSilicon营销副总裁迈克·吉安法格纳(Mike Gianfagna)说:“关键不在于如何把更多的东西打包在一起,而在于改变传统的做事方式。”“用人工智能和机器学习在美国,你可以把所有这些东西撒在系统周围,以获得更高效和更有预测性的处理。在其他情况下,它可能涉及在一个系统或一个包中独立运行的独立芯片。”

Arm发布了其首款机器学习芯片,计划于今年晚些时候在多个细分市场和垂直领域推出。“这是一种新型处理器,”英特尔公司的杰出工程师伊恩·布拉特说手臂.“它包括一个基本块,这是一个计算引擎,加上一个MAC引擎,一个带有控制单元和广播网络的DMA引擎。总共有16个计算引擎使用7nm工艺技术,能够在1GHz下达到4万亿次运算速度。”

由于Arm在合作伙伴的生态系统中工作,其芯片比其他正在开发的AI/ML芯片更通用和可配置。它不是把所有东西都构建成一个整体结构,而是按功能划分处理,因此每个计算引擎都在不同的特征映射上工作。Bratt说,四个关键因素是静态调度、高效卷积、带宽减少机制和面向未来设计的可编程性。


图2:Arm的ML处理器架构。来源:Arm/Hot Chips

与此同时,英伟达采取了不同的策略,在GPU旁边构建了一个专用的深度学习引擎,以优化处理图像和视频的流量。

结论
芯片制造商表示,通过使用部分或全部这些方法,他们可以每隔几年将性能提高一倍,既能跟上数据爆炸的速度,又能在功耗预算的严格限制下保持稳定。但这不仅仅是提供更多的电脑。它正在改变芯片设计和系统工程的起点,从不断增长的数据量开始,而不是硬件和软件的限制。

“当电脑进入公司时,很多人觉得世界发展得快多了,”他说Aart de Geus的董事长兼联合首席执行官Synopsys对此.“他们在几张纸上记账,还有一堆账本。当时这是一个指数级的变化,现在我们又看到了。进化的是——这可能给人一种更快的感觉——你可以在某种程度上理解会计账簿,穿孔卡片,打印出来并计算。在精神上你可以跟随每一步。事实上,在农田里,你只需要在温度上升这么多的某一天浇水和某种类型的肥料,这是一种机器学习的组合,是一种过去不明显的优化。”

他并不是唯一一个这么认为的人。“新的架构将会被接受,”他说沃利莱茵河的总裁兼首席执行官Mentor是西门子旗下的企业.它们会被设计进去。他们在许多或大多数情况下都有机器学习,因为你的大脑有从经验中学习的能力。我走访了20多家公司,它们都在开发自己的专用人工智能处理器,每个公司都有自己的小角度。但你会越来越多地在特定的应用中看到它们,它们将补充传统的冯·诺依曼架构。神经形态计算将成为主流,这是我们下一步如何提高计算效率、降低成本、在移动和互联环境中做事的重要组成部分,而今天我们必须通过大型服务器群来解决这些问题。”

有关的故事
AI架构必须改变
在人工智能应用程序中使用冯·诺依曼架构是低效的。什么将取代它?
机器学习和人工智能中的安全漏洞
机器学习的一个主要目标是用机器来训练其他机器。但如果训练数据中存在恶意软件或其他缺陷会发生什么?
AI架构
专家讨论,第1部分:推理需要什么样的处理,最好的架构是什么,它们可以被调试吗?



3评论

艺术斯科特 说:

没有可逆计算就没有未来。

米歇尔 说:

更广泛的数据读写,并行计算,更小的数据打包在一起,应用加速器,更深入的管道,分散收集输出…对我来说闻起来像DSP:)…

Tidwell威廉 说:

艾德,

谢谢你信息丰富的调查。显然,在这个领域有很多创新。与Michelle上面的评论相呼应,H&P的“领域特定处理器”时代似乎正在诞生。你的调查中令人惊讶的一个方面是缺乏z世代的参考。难道具有完全可组合性的新的内存-语义互连是这些新架构取得全面成果的必要条件吗?当然,短期内我们可以在没有它的情况下做很多事情,但如果我们要取代冯·诺依曼计算,我们必须解除内存绑定,并推广互连。

留下回复


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

Baidu