framestock-footages_dreamstime_135514255
机器人FRAMESTOCK视频片段Dreamstime L 135514255

PCIe技术如何帮助构建机器学习加速器

2022年1月12日
为机器学习应用设计加速器芯片并非易事。本文解释了PCIe技术如何帮助开发此类芯片的供应商提高其产品的吸引力,同时将风险、成本和上市时间降至最低。

成员能够下载本文PDF格式。

你将学习:

  • 如何建立一个ML加速器芯片使用PCI Express。
  • 机器学习模型的训练过程是什么?
  • 需要多个加速器的复杂模型的出现。


机器学习(ML),尤其是基于深度学习(DL)的解决方案,正渗透到我们个人和商业生活的各个方面。基于ml的解决方案可以在农业、媒体和广告、医疗保健、国防、法律、金融、制造业和电子商务中找到。就个人而言,当我们阅读谷歌新闻,从Spotify播放列表播放音乐,在亚马逊的推荐中播放音乐,以及当我们与Alexa或Siri通话时,ML都会触及我们的生活。

由于机器学习技术在商业和消费者用例中的广泛使用,很明显,为ML应用程序提供高性能和低总操作成本的系统将对部署此类应用程序的客户非常有吸引力。因此,有效处理ML工作负载的芯片市场正在迅速增长。

对于诸如数据中心的一些市场,这些芯片可以是离散ML加速器芯片。鉴于可寻址的市场,离散ML加速器的市场毫无疑问是竞争激烈的。在本文中,我们将概述PCIe技术如何通过离散ML加速器芯片供应商来利用,以使其产品在这种超竞争激烈的市场中脱颖而出。

利用PCIe制造满足客户需求的ML加速器芯片

除了为最广泛的机器学习用例集提供每瓦每美元的最佳性能外,在竞争激烈的ML加速器市场上,有几个功能可以作为筹码。首先,加速器解决方案必须能够连接到来自不同计算芯片供应商的尽可能多的计算芯片上。选择广泛采用的芯片对芯片互连协议,如PCI Express (PCIe)作为加速器/计算芯片互连解决方案,将自动确保加速器可以连接到几乎所有可用的计算芯片上。

其次,使用标准操作系统(如Linux和Windows),加速器必须易于发现、可编程和管理。将加速器自动设置为PCIe设备,可以使用为PCIe设备定义的枚举流发现它,并使用标准操作系统的知名编程模型对其进行配置和管理。通常,供应商必须为他们的加速器产品提供设备驱动程序。为PCIe设备开发驱动程序是很容易理解的,并且有大量的开源代码和信息可供供应商用于驱动程序开发。这降低了开发成本和供应商产品上市的时间。

应用软件必须能够使用最低软件开发工作和成本的加速器。通过将加速器转换为PCIe设备,可以立即部署用于访问和使用PCIe设备的众所周知的强大的软件方法。

随着云计算的扩散,将大量比例的ML的应用程序托管在云上作为虚拟机实例或容器。通过访问ML推断或训练加速器,可以改善这些虚拟机或容器的性能。因此,如果可以虚拟化,则会提高ML加速器在市场上的吸引力,以便其加速能力由多个VM或容器可用。

设备虚拟化的行业标准是基于PCIe技术的SR-IOV。此外,PCIe设备功能直接分配给虚拟机也因其高性能而被广泛支持和使用。因此,通过为他们的加速器实现PCIe架构,供应商可以解决需要高性能虚拟化加速器的细分市场。

培训

在将机器学习模型投入生产之前,必须对它们进行培训。ML的训练过程,尤其是深度学习,需要向被训练的模型输入大量的训练样本。

在大多数情况下,这些样本需要从存储系统或网络中获取或传输。因此,训练到可接受的精度水平的时间将受到ML加速器与存储系统或网络接口之间链路的带宽和延迟属性的影响。培训时间越短,对客户来说加速器解决方案就越好。

通过使用PCIe技术的对等流量能力将数据直接从存储设备或网络流流来逐步越来越耗尽训练的时间。使用点对点功能,通过避免通过主机计算系统的训练样本的内存来提高性能。

此外,大多数高性能存储节点和网络接口卡(NIC)使用基于PCIe协议的链接连接到系统中的其他组件。因此,通过选择成为符合PCIe的设备,加速器可以通过大多数存储和NIC来实现本地对等流量。

PCIe架构的点对点能力也可以在机器学习的推理和生成方面发挥作用。例如,在自动驾驶中的对象检测等应用中,需要以尽可能低的延迟向推理加速器提供持续的摄像机输出流。在这种情况下,可以使用点对点功能以最小的延迟将摄像机数据流传输到推理加速器。

ML加速器芯片和计算芯片,存储卡,交换机和NIC之间的连接的高带宽要求需要高数据速率串行传输。随着数据速率的增加,芯片之间的距离膨胀或保持相同的,先进的PCB材料和/或伸展延长解决方案,如阻挡器,需要保持在信道插入损耗预算。

retimer在PCIe规范中有完整的定义,可以支持各种复杂的板设计和系统拓扑。因此,使加速器成为PCIe设备,使加速器供应商能够利用PCIe技术生态系统,在各种客户板设计和系统拓扑中实现必要的高数据速率串行传输。

复杂模型的多个加速器

自然语言处理等机器学习领域的前沿正在朝向极大的复杂模型,如GPT-3(具有175亿参数)。由于参数存储要求和使用这些模型的培训甚至预测或产生(例如语言翻译)的参数存储要求和代表(例如,语言翻译)可以超出单个加速器芯片的计算和内存容量。

因此,当GPT-3这样的大型模型是用例的首选选择时,需要多加速器的系统。在这种多加速器系统中,系统部件之间的互连需要提供高带宽,可缩放,并且能够容纳连接到互连织物的异节节点。

由于其高带宽,PCIe技术是系统组件互连的一个很好的选择,并通过部署交换机进行扩展的能力。如前所述,基于PCIe的设备的u特异性允许相同的结构具有NIC,存储设备和加速器。这允许有效的对等通信导致培训的较低时间,降低推理延迟或更高推理吞吐量。对于多加速器使用案例,其中需要低延迟和高带宽间互连互连,加速器供应商可以利用PCIe规范的备用协议支持,以创建自定义间歇式互连。

在设计加速器来训练GPT-3之类的大型模型或使用此类模型进行推断时,要考虑的另一个重要方面是,必须向加速器提供大量的功率,以便它以最高性能级别处理这些模型。PCIe规格为系统提供了向加速卡提供大量电源的标准化方法。通过使用PCIe技术,加速卡供应商可以安全地设计出消耗PCIe架构标准所允许的最大容量的加速卡,而不必担心来自各种系统供应商的系统互操作性。

电源效率

ML解决方案每美元的性能部分取决于其功率效率。例如,推理加速器才能仅在从计算SOC传递到加速器的新推理请求时才使用其与计算SOC的链接。在剩下的时间内,链接基本上是空闲的。除非链路具有低功耗空闲状态,否则它将通过剩余高性能的活动状态而不必要地消耗功率。

为了获得最大的效率,重要的是,加速器与系统其余部分的链接的功耗与这些链接的利用率成线性关系。PCIe提供L1、L0p等链路功率状态,可根据空闲和带宽占用情况调节链路功耗。

此外,PCIe规格有设备空闲电源状态(d状态),标准操作系统可以利用这些状态,在不需要的时候将加速器休眠,从而降低系统的功耗。PCIe技术还提供了控制加速器的有功功耗的能力。因此,PCIe规格使加速器能够对系统的整体功率效率做出积极的贡献。

作为PCIe和拉

对于AI加速器,可靠性,可用性和可维护性(RAS)功能的数据中心部署,在所有系统组件中都需要提供功能,包括加速器。此外,在实践中可用,此类RAS功能必须符合预期的标准OS和平台固件。PCIe架构提供了丰富的OS友好的RAS功能,包括先进的错误报告,可以进行热添加和移除PCIe设备等的能力等,因此选择基于PCIe的链接作为连接到其他系统组件的方法有帮助the accelerator product meet the data-center market’s RAS needs.

PCIe规范为AI加速器供应商提供的一个重要优势是,可以将相同的解决方案重新定位到几个不同的市场细分领域。这是通过利用PCIe技术的两个特性来实现的:不同形式因素的可用性和PCIe规范接口具有不同链路宽度的能力。这使得供应商可以根据市场需求的加速能力,按比例扩展接口带宽、功耗和形状因素。

转移到加速器的数据的保密性和完整性对​​大多数客户来说都很重要。PCIe规范最近引入了PCIe链路上的数据传输的完整性保护和数据加密(IDE)。加速器供应商可以利用PCIe IDE提供端到端的保密性和数据的完整性。


培训和推理工作流程都可以涉及计算SOC中的CPU核心和以协作方式执行ML应用程序的加速器。这需要计算SOC和加速器之间的高带宽,低延迟通信信道。基于PCIe的链接是本申请的理想选择。通过利用PCIe规范的替代协议对定制芯片到芯片通信协议的支持,甚至可能实现甚至降低延迟和更高的带宽效率。

由于ML加速器市场的竞争性,最大限度地减少市场的时间对于加速器供应商很重要。利用PCIe技术可以帮助这方面有助于提供高质量的PCIe IP,可以利用可用于快​​速芯片设计和验证。供应商可以轻松访问合规性测试服务,以确保其芯片连接到所有PCIe技术兼容的计算系统,并且他们可以访问大型PCIe架构专家。

结论

如前所述,机器学习(特别是深度学习)模型的规模和复杂性都在不断增长。为了在计算和内存容量方面跟上这一趋势,具有多个互联加速器芯片的系统将变得越来越有必要。芯片对芯片的互连性能需要随着计算和内存容量的提高而提高,以实现这种系统的真正性能潜力。

选择PCIe技术用于芯片到芯片的互连,有助于供应商利用每一代新一代PCIe技术带来的带宽增长。以PCIe 6.0为例,预计提供64 gtransfer /s的数据传输速率,是PCIe 5.0的两倍。

总之,采用PCIe规范将使ML Accelerator供应商能够:

  • 以更低的风险和更快的上市时间发展市场领先的加速器。
  • 拥有一个健壮的路径来满足芯片间互连带宽扩展的工作负载需求。

受欢迎的合作伙伴内容

DIY pmic:用户可编程pmic

在DIY PMIC:用户可编程PMIC培训中,我们将介绍DIY PMIC的概念,然后是用户可编程PMIC。一节集中在h…

用户可编程电源管理IC (PMIC) 6个DC/DC转换器,1个LDO和3个负载开关

用户可编程电源管理IC (PMIC) 6个DC/DC转换器,1个LDO和3个负载开关

多轨电视电源参考设计,灵活划分,最大限度地节省电力

已经开发了一个完全组装的电路板,仅用于测试和性能验证,不可推出..下载即用的系统f ...

实时操作系统(RTOS)及其应用

2021年2月25日,
什么是操作系统。实时操作系统(RTOS)是一个轻量级的操作系统,用于在资源和时间限制下简化多任务和任务集成……

声音你的意见!

本网站要求您注册或登录后发表评论。
目前还没有任何评论。想开始对话吗?
Baidu