三星将通过存储计算一体化使神经网络的性能翻倍。
约翰•冯•诺依曼最初的计算机架构(逻辑和内存是两个独立的领域)一直很受欢迎,但一些公司认为是时候做出改变了。
近年来,向更多并行处理的转变和神经网络规模的大幅扩大意味着,处理器需要以更快的速度访问内存中的更多数据。然而,“动态随机存取存储器(DRAM)和处理器之间的性能差距比以往任何时候都大。”韩国科学技术院(位于韩国大田市)的3D存储芯片专家、IEEE会士金正浩(Joungho Kim)说。冯•诺依曼架构已变成冯•诺依曼瓶颈。
不过,如果至少有一些处理发生在内存中呢?这样的话,在芯片之间移动的数据更少,也可以节省能源。虽然这不是新想法,但属于它的时刻可能终于来了。去年,全球最大的DRAM制造商三星公司开始推出存储计算一体化(PIM)技术。其第一款PIM产品于2021年2月推出,该产品将人工智能计算核心集成到了它的Aquabolt-XL高带宽内存(HBM)中。HBM是一种围绕在一些顶级人工智能加速器芯片周围的专用DRAM。时任三星内存业务部门高级副总裁的IEEE会士金南成(Nam Sung Kim)表示,这种新内存旨在作为普通HBM芯片的“简单替代品”。
2021年8月,三星公布了在合作伙伴系统中的测试结果。与赛灵思VirtexUltrascale+(Alveo)人工智能加速器一起使用时,PIM技术将语音识别神经网络的性能提升了近2.5倍,并且降低了62%的能耗。三星一直在提供样本,将这项技术集成到当前一代高带宽DRAM(HBM2)中。该公司还在为下一代HBM3和用于移动设备的低功耗DRAM开发PIM,预计将于2022年上半年与固态技术协会(JEDEC)一起完成后者的标准制定。
将计算智能添加到存储芯片中的方法有很多。三星选择了一种既快速又简单的设计。HBM由一个DRAM芯片堆栈组成,这些芯片通过硅通孔互连垂直连接。存储芯片堆栈位于逻辑芯片之上,并由逻辑芯片充当处理器的接口。
堆栈中最高的数据带宽位于每块芯片内,其次是硅通孔,最后是与处理器的连接处。因此,三星选择将处理放在DRAM芯片上,以便利用其高带宽。计算单元的设计目的是进行最常见的神经网络计算(称为乘积和累加),仅此而已。其他的设计则将人工智能逻辑放在接口芯片上或者使用了更复杂的处理核心。
三星的两大竞争对手SK海力士和美光科技还没有准备好尝试为HBM开发PIM,不过他们各自都在向其他类型的存储计算一体化迈进。
总部位于韩国利川的第二大DRAM供应商SK海力士正在从多个角度探索PIM,其存储解决方案产品开发副总裁兼主管朴一(Il Park)说。朴一还表示,目前该公司正在DRAM标准芯片中试验PIM,而不是可能更易于客户采用的HBM。
对SK海力士来说,HBM PIM更可能是中长期目标。目前,客户在尝试将HBM DRAM放置在物理上更靠近处理器的位置时,已经要处理很多问题了。朴一说:“这一领域的许多专家都不想在忙于解决HBM问题的情况下,再增加更多重要的难题。”
尽管如此,2019年,SK海力士的研究人员还是与普渡大学的计算机科学家合作,全面设计了一款名为Newton的HBM-PIM产品。与三星的Aquabolt-XL一样,它在存储体中放置了乘积累加单元,以利用芯片本身的高带宽。
与此同时,功耗问题也促使了加州圣何塞的Rambus公司去探索PIM,其研究员兼杰出发明家史蒂文•吴(Steven Woo)说。该公司设计了处理器和内存之间的接口,片上系统及其HBM内存消耗的功率有2/3用于在两块芯片之间水平传输数据。在HBM内垂直传输数据消耗的能量少得多,因为距离更短。“要将数据传回片上系统,可能要在水平方向上移动10到15毫米才行。”史蒂文•吴说,“但在垂直方向上只需要移动几百微米。”
Rambus的PIM试验设计在HBM堆栈的顶部额外添加了一层硅来进行人工智能计算。为了避免HBM中央硅通孔的潜在带宽瓶颈,该设计添加了几个硅通孔来连接存储体和人工智能层。史蒂文•吴认为,在每块存储芯片中都设置一个专用的人工智能层可以使内存制造商针对不同的应用定制内存。
PIM的采用速度将取决于人工智能加速器制造商对其提供的内存带宽释放的渴望程度。“三星已经迈出了第一步。”Technalysis Research首席分析师鲍勃•奥唐纳(Bob O’Donnell)说,“(PIM)能否在商业上取得成功还有待观察。”