人工智能经过几十年的发展,在数据爆炸时代正处于良性循环,大量的数据用于制造和训练神经网络,而后利用神经网络筛选并理解这些数据。
不过,我们仍然对于更好的人工智能有巨大需求,据Open AI的一份报告显示,从2012到2019年,人工智能训练集增长将近30万倍,每3.43个月翻一番,比摩尔定律快25000倍,在摩尔定律将近失效的今天,那么怎么样才能让人工智能提供更好的性能?
内存带宽限制人工智能模型本身
早在两年前,业内就有人提出,在计算能力和数据量足够的年代里,内存带宽才是人工智能发展的瓶颈。
德克萨斯高级计算中心(TACC)研究科学家曾在其2016年的报告《HPC系统中的内存带宽和系统平衡》中比较过去25年某些HPC服务器的浮点计算情况,结果显示内存、网络延迟和带宽大幅度落后于处理器性能,其中内存带宽大约每十年落后浮点计算4.5倍。
“一个非常有趣的现象是,内存对人工智能的限制一部分体现在人工智能模型本身,以及用来训练这些模型的数据量规模急剧增长。”Rambus 大中华区总经理苏雷在Rambus 2020中国设计峰会上说到。
根据苏雷的介绍,这种限制在人工智能传统训练模型和并行训练模型上均有体现。
传统神经网络训练通常只使用一个AI/ML引擎,即将神经网络模型和训练数据全都嵌入一颗芯片中,训练的数据在芯片中迭代循环,通过不断更新模型实现对数据的分类、识别和处理,这一场景下其性能直接取决于计算引擎和缓存速度、内存带宽。
为提高数据训练时间,具体多个AI/ML引擎的神经网络得以出现,这种方法是神经网络模型的完整副本同时嵌入多个芯片中,神经网络模型所需的训练工作量被均分到每一颗芯片中,多个芯片引擎并行处理训练集,进而提高训练时间。
并行方案的每一个训练步骤可分为两个阶段,每个阶段受到的带宽限制不尽相同。
在第一阶段,每个训练的并行引擎将通过它们的训练结果更新其模型副本,因此并行训练的每个芯片在运行完每一次训练迭代后,都会有不同的训练更新,因此这一阶段数据传输到芯片的速度直接取决于内存带宽的大小。
在第二阶段,即规约阶段(Reduction),需要每个引擎与所有其它引擎交互更新信息,让芯片彼此了解其它芯片的更新并接受来着其他芯片的更新,得以更新自己的模型,恢复模型间的同步,再次拥有相同的模型副本。显然,这一阶段的性能主要取决于芯片间链路带宽的限制。
HBM 2和GDDR 6,更多的内存选择
“为缩小内存带宽和高性能浮点计算之间的差距等问题,我们有新的系统架构和面向特定领域的硅,或者将更多的数据直接放在芯片上,以获得更高的带宽,更好的功率和更低的延迟,但是数据总是越来越大,需要更多的内存,所以依然需要在片外存储器和链路性能上取得突破。”Raymond Su表示。
在目前广泛应用于AI的内存方案中,片上存储(On-Chip Memory)就是Raymond Su所言的拥有最高带宽和功率效率但容量有限的方案,其他两种方案分别是HBM和GDDR,即DRAM解决方案。
HBM是一种基于3D堆栈工艺的高性能DRAM。第一代HBM诞生于2013年,最新一代HBM标准已经演进到HBM2E,能够支持12个DRAM的堆栈,内存容量高达每堆栈24GB,当传输速率达到每管脚3.6Gbps时,HBM2E可以实现每堆栈461GB/s的内存带宽。
由于HBM2E堆栈需要通过高达1700多条数据“线”的接口连接到相关处理器,远远超过标准PCB能够支持的范围,因此使用硅中介层作为连接内存堆栈和处理器的中介,在硅中介层中完成精细的数据走线,获得HBM接口所需数量的数据线数。
HBM2E通过堆叠技术实现高带宽和高容量,但由于硅中介层的使用,成本偏高。
GDDR是双倍数据传输率存储器,采用传统的方法将标准PCB和测试的DRAMs与SoC连接在一起,具有较高的带宽和较好的能耗效率,其缺点在于更难保证信号完整性和电源完整性。
比较256GB/s下HBM2和GDDR6,HBM2E的接口宽而慢,GDDR6的接口窄而快。HBM2占有面积优势和能耗优势,但GDDR6具有成本和方案工程上的实现优势。
HBM2与GDDR6内存解决方案的高带宽已经显而易见,不过想要真正落实到实现高性能人工智能的应用上,还需要IP供应商的支持,在HBM2和GDDR6内存解决方案的IP供应中,Rambus就扮演重要角色。
根据Rambus资深应用工程师曹汪洋在Rambus 2020中国设计峰会上的介绍,Rambus的HMB2E接口解决方案(PHY和控制器)专为AI/ML、HPC的高性能和低延迟而设计。Rambus HBM Gen2 PHY 完全符合JEDEC HBM2E标准,支持每个数据引脚高达3.6Gbps 的数据速率,总带宽因此达到461 GB/s。该接口具有8个独立信道,每个信道包含128位,总数据宽度为 1024 位,支持2、4、8 或 12个DRAM的堆栈高度。
Rambus GDDR6 PHY每个引脚的速度高达16 Gbps,可用于TSMC 7nm工艺,GDDR6接口支持2个信道,每个信道有16位,总数据宽度为32位。另外,Rambus GDDR6 PHY 每个引脚的速度高达16 Gbps,最高可提供 64 GB/s 的带宽。
在Rambus 2020中国设计峰会的交流环节,苏雷向雷锋网表示:“Rambus 是全球HBM IP技术的引领者,且在市场份额上排名第一,全球范围内拥有50多个成功案例,Rambus最新的Rambus HBM2E的方案可以实现全球最高的4Gpbs速率,GDDR6方案可以实现18Gbps速率,位于业界顶尖水平,这能够帮助客户的方案设计提供足够裕量空间,保证整个系统的稳定性,目前燧原已将选择了Rambus作为其下一代AI训练芯片的合作伙伴。”
高带宽之后,信号完整性也是挑战
在上述文章中提到,HBM和GDDR是可以为AI/ML提供高带宽,其中速率更高的GDDR6面临着信号完整性和电源完整性的挑战。
据雷锋网了解,信道中不同类型的损耗是影响信号完整性的主要因素,具体又可以分为插入损耗、反射和串扰,插入损耗产于介电损耗或金属电阻表面粗糙程度,主要通过较好的PCB和封装设计来控制。信号反射源于阻抗,最终会导致眼图闭合和信号丢失。串扰由于两个信号之间的电容和电感耦合引起的,由于从信号中消除串扰的电路很复杂,因此串扰是GDDR6 DRAM信号完整性最具挑战性的问题。
针对信号完整性问题,苏雷表示:“要确保信号的完整性,就需要从发送端到接收端进行的完整系统建模,需要采用协同设计的方案。Rambus 的GDDR6 PHY解决方案可以稳定在18Gbps并确保传输眼图清晰,走在业界最前列。在高速的传输下,还需要对电路板上的封装设计进行建模,使用比如DFE和反转等技术,可以提高性能让眼图更好的打开 。”
当然除了信号完整性和电源完成性,DRAM数据速率的增长还导致更多其他的问题,“我们需要做的还是兼顾能耗的制约,不断找寻和提升内存带宽的方法,为AI/ML更高的性能。”苏雷说道。
文中图片源自Rambus官方
雷锋网雷锋网雷锋网