信息技术发展的主要矛盾,就是当前硬件有限的算力和带宽与用户不断增长的算力与带宽要求之间的矛盾。在PC时代和移动互联时代,终端设备的算力与带宽都曾在需求推动下,按摩尔定律的预测指数性增长。近年来,随着人工智能应用(人工智能和机器学习,即AI/ML)的兴盛,对算力与内存带宽的要求又推到了一个新层次,据统计,从2012年到2019年,人工智能训练集增长了30万倍,每3.43个月翻一番,支持这一发展速度需要的远不止摩尔定律所能实现的改进,这需要从架构开始,做算法、硬件和软件的共同优化,才能不断提升系统性能以满足人工智能训练的需求。
训练能力大幅提升
数据来源:openai.com
人工智能训练主要发生在云端和数据中心,而在边缘侧,人工智能推理也被广泛采用,在自动驾驶等应用中,推理对于带宽和实时性要求极高。
训练和推理
在人工智能/机器学习应用中,训练和推理往往成对出现。训练是“知”,是学习,是机器“理解”被研究对象的过程;推理是“行”,是决策,是利用训练好的模型对设备或系统的未来操作进行指导的过程。
在“知”的阶段,已知数据集被喂给待训练的神经网络(或深度神经网络,Deep NeuralNetwork, 简称DNN,这里将神经网络和深度神经网络统称为神经网络),神经网络对数据集所表示的内容进行学习后作出推断,推断的误差用来调整神经网络框架的各种参数,例如神经网络各层中的数据集权重,随着训练过程的继续,将反复迭代上述过程对神经网络进行调整,直到其能以足够的准确性进行推断。
数据集有大有小,有的可能需要数千张图像,但也有数据集达到数千万张。如前所述,随着人工智能技术发展,数据集规模在不断加大,对存储的要求在不断加大。而在训练过程中,算法专家要引导神经网络模型收敛并在推断时达到所需的精度。这可能需要运行数百次实验,尝试不同的神经网络设计并调整其参数。每个实验可能需要大约“exaflops”(十亿亿次操作)次计算,整体计算要花几小时到数天才能完成。为了加快这种漫长训练过程,算法专家通常会在数据中心中训练神经网络。
在“行”的阶段,未知数据集被喂给训练好的神经网络,神经网络对未知数据集进行分类识别和决策。部署训练好的神经网络可能很简单,但为图像和自然语言处理等人工智能任务而生成的神经网络模型往往规模巨大,形式复杂,有数百万甚至数十亿权重参数将数十或数百层人工神经元连接起来。神经网络规模越大,运行该网络所需的算力、内存和能量也就越多,将数据输入神经网络到得出结果的响应时间也就越长。要满足推理时系统对功耗和延时的要求,通常要对训练好的神经网络进行修剪和量化,在保证推理精度的前提下,降低神经网络复杂度,以减少功耗和降低延时。
内存带宽是影响人工智能发展的关键因素
一般而言,推理相对比训练对算力和内存带宽的要求要低一些,但这并不是绝对的。以自动驾驶为例,必须能够在毫秒内检测到目标并做出响应,以避免发生事故。第3级与第4级自动驾驶系统的复杂数据处理需要超过200 GB/s的内存带宽,高带宽是复杂人工智能算法实时处理的基本需求,在道路上这些算法需要快速执行大量计算并安全地执行实时决策。在第5级,即完全自主驾驶,车辆能够独立地对交通标志和信号的动态环境作出反应,以及准确地预测汽车、卡车、自行车和行人的移动,将需要超过500GB/s的内存带宽。
随着新一代人工智能加速器和专用芯片的快速发展,新的内存解决方案,如高带宽内存(HBM、HBM2、HBM2E)和GDDR6 SDRAM(GDDR6)渐被采用来提供所需的带宽。
HBM和GDDR
高带宽内存( High Bandwidth Memory )是一种立体(3维或2.5维)堆叠存储方案。该概念最早由AMD在2008年引入,以解决PC系统对存储容量提升导致的功耗和尺寸不断增加的问题,通过与韩国海力士等公司合作,由海力士在2013年生产了第一批HBM存储器,该技术也于当年10月被标准组织JEDEC(电子元件工业联合会,Joint Electron Device Engineering Council)接受为标准JESD235。
此后HBM技术发展不断向前推进,2016年JEDEC通过HBM2标准JESD235a,在2018年末,JEDEC宣布对HBM2规范更新至HBM2E,以提升带宽和容量。当传输速率上升到每管脚3.6Gbps时,HBM2E可以实现每堆栈461GB/s的内存带宽。此外,HBM2E支持12个DRAM的堆栈,内存容量高达每堆叠24 GB。
HBM2E提供了达成巨大内存带宽的能力。连接到一个处理器的四块HBM2E存储器将提供超过1.8TB/s的带宽。通过3D堆叠内存,可以以极小的空间实现高带宽和高容量需求。进一步,通过保持相对较低的数据传输速率,并使内存靠近处理器,总体系统功率得以维持在较低水位。HBM2E的劣势是加工复杂,成本较高。
HBM封装示意图
GDDR(Graphics Double Data Rate)是另外一种比普通DDR存储器更快的内存方案。GDDR出现最初是为了适配高端显卡,主要用于图像处理所以得名。其工作频率、电压都和标准DDR不同,一般比标准DDR时钟频率更高,发热量更小,带宽更大。最新一代GDDR6的数据传输速率为16Gbps。GDDR6提供了比GDDR5大幅改善的带宽、容量、延迟和功率。GDDR6将工作电压从GDDR5的1.5V降低到1.35V,以获得更高的功率效率,并使数据传输速率(16Gbps比8 Gbps)和容量(16GB比8GB)都比GDDR5翻了一番。随着GPU在人工智能领域的广泛应用,GDDR也在人工智能应用中发挥着越来越重要的作用。
GDDR的优势是成本更低,可以用标准DDR生产工艺来制造,而且利用现有的基础架构和流程让系统设计者可沿用过去经验,从而降低了开发成本和实现的复杂性。但由于不是立体封装,所以在功耗和面积上不如HBM2E。
HBM与GDDR分别适应训练和推理需求
训练和推理对存储的需求有所不同,所以系统设计者需要根据高存储带宽应用的具体需求来选择究竟用HBM2E还是GDDR6。
对于训练来说,带宽和容量至关重要,特别是考虑到训练集的规模正以每3.43个月翻一番的速度增长。HBM2E的性能非常出色,所增加的成本可以透过节省的电路板空间和电费冲销。在物理空间日益受限的数据中心,HBM2E紧凑的体系结构提供了切实的好处。它的低功率意味着它的热负荷较低,而散热成本是数据中心最大的运营成本之一。考虑到所有这些需求,HBM2E是更优的人工智能训练硬件的内存解决方案。
在推理的应用场景下,带宽和延迟对于实时操作至关重要。对于人工智能推理这一日益具有挑战性的领域,GDDR6是一个更优的解决方案。建立在成熟的制造工艺基础上,其出色的性价比使其适合广泛的采用。
Rambus提供全面且现成的HBM2E和GDDR6内存接口解决方案,可集成到人工智能/机器学习的训练和推理SoC中。最近,该公司的HBM2E内存接口解决方案实现了创纪录的4 Gbps性能。该解决方案由完全集成的物理层和控制器组成,搭配业界最快的来自SK海力士的3.6Gbps运行速度的HBM2E DRAM,该解决方案可以从单个HBM2E设备提供460 GB/s的带宽。此性能可以满足TB级的带宽需求,能应对当前最严苛的人工智能训练或推理应用需求,也适用于高性能计算等应用场景。