突破物理极限的下一代算力技术
人工智能产业蓬勃发展的背后,算力成为推动其快速发展的核心要素。而算力的基础则主要依赖于人工智能芯片的不断创新与发展。
目前,传统的CPU和GPU在执行计算密集型任务时面临一些挑战。在处理海量参数时,需要将这些参数从内存中读取出来,然后进行计算。由于读取时间与参数规模成正比,计算过程的效率受到制约,而且GPU算力利用率甚至可能不足8%。
为了应对这一挑战,存内计算芯片应运而生。这种芯片实现了存储单元与计算单元的物理融合,无需将参数从内存读取出来,而是直接利用存储参数的单元与输入矩阵进行计算。这一创新极大地节约了内存读写的时间,显著提高了计算效率。此外,存内计算芯片的设计有望突破物理极限,为人工智能硬件领域带来新的可能性。
存内计算才是真正的存算一体
存内计算代表了存算一体的进一步演进,其核心在于存储单元和计算单元的完全融合。与传统计算模型不同,存内计算并不依赖独立的计算单元。相反,它通过直接在存储器颗粒上嵌入算法,利用存储器芯片内部的存储单元
存内计算原理如下图:
近存计算
分离存储与计算,通过将数据靠近计算单元,以减小数据移动的延迟和降低功耗,目前是提升芯片性能的主流方案。这种设计的思想是通过将存储和计算单元分开,使数据能够更接近计算单元,从而加速计算过程。然而,目前这一方案已经接近了物理极限,提升能效的空间受到限制,而成本也逐渐升高。
随着技术的不断发展,存储与计算分离所带来的性能提升已经逐渐变得有限。尽管它成功地减小了数据移动的延迟并降低了功耗,但在寻求更大的性能提升和能效改进方面,当前的主流芯片面临一些瓶颈。成本的不断上升也使得进一步提升性能变得更为昂贵和困难。
在这一背景下,存内计算的出现提供了一种新的思路。通过在存储器内部执行计算,存内计算克服了传统计算模型中数据移动的局限,提高了计算能效。这种全新的架构可能为未来的芯片设计带来更为可行的选择,为人工智能和其他计算密集型任务的应用提供更高效的解决方案。
存内处理
尽管“存”与“算”距离更近,但目前的存内计算仍然保持了电路设计的分离特性。在存内计算芯片中,计算任务由存储器内部的独立计算单元完成。这一设计思想意味着存储单元和计算单元在物理上可能更接近,但它们在电路结构上仍是独立的实体。
虽然存内计算通过在存储器内部执行计算操作,避免了数据移动的瓶颈,提高了计算能效,但仍然存在一个独立的计算单元。这种设计保留了一定的灵活性,允许独立的计算单元在存储器中执行各种计算任务,从而提高了整体的计算效率。
总体而言,存内计算在电路设计上的分离仍然为提高性能提供了一种有效的途径,同时兼顾了计算的独立性。未来的技术发展可能会在这一方向上进行更深入的创新,以实现更高效、更强大的计算体系结构。
存内计算
存内计算的核心优势在于直接消除了“存”和“算”之间的界限,实现了真正的存算一体。这种架构设计无需在“存”和“算”之间来回搬运数据,因为计算直接在存储器内部完成,从而大幅度提升了芯片的性能。
存内计算的优势还表现在功耗的降低和成本的可控性上。通过减少数据传输、读写等操作,存内计算有效地降低了功耗,使得芯片更为高效。此外,由于整合了存储和计算功能,存内计算的成本也相对可控,相比于传统架构,其综合成本可能更具竞争力。
综上所述,存内计算确实代表了一种新的存算一体的设计理念,为人工智能和其他计算密集型任务提供了更为高效、灵活和可控的解决方案。这种架构的发展有望进一步推动芯片技术的创新,为未来的计算应用提供更强大的支持。
近存计算详细介绍PNM
近存计算是一种通过芯片封装和板卡组装的方式,将存储单元和计算单元集成,从而增加访存带宽、减少数据搬移,以提升整体计算效率的架构。尽管近存计算仍然属于存算分离的架构,但其技术成熟度较高,主要实现方式包括存储上移和计算下移两种方式:
- 存储上移:采用先进的封装技术,将存储器靠近处理器(如CPU、GPU),增加计算和存储间的链路数量,以提供更高的访存带宽。其中,高带宽内存(HBM)是一种典型的产品形态,通过硅通孔(Through Silicon Via,TSV)多层堆叠实现存储容量提升。基于硅中介板的高速接口与计算单元互联,为提供高带宽存储服务创造条件。
- 计算下移:通过板卡集成技术,将数据处理能力从存储器卸载到近端处理器,有效减少存储器与远端处理器的数据搬移开销。可计算存储(Computational Storage Drives,CSD)是一个典型的方案,通过在存储设备中引入计算引擎,负责本地处理任务,如数据压缩、搜索、视频文件转码等,从而减轻远端处理器(如CPU)的负载。
近存计算已经成功应用于人工智能、大数据、边缘计算等场景。由于基本保持了原有的计算架构,其产品化方案可以相对较快地投入使用。这种架构的灵活性和高效性为各种计算密集型应用提供了更优越的性能和效率。
存内处理详细介绍PIM
存内处理是在芯片制造的过程中,将存储和计算功能集成在同一个晶粒(Die)中,使得存储器本身具备一定的计算能力。尽管存内处理实现了存和算的更近距离,但其本质仍然属于存算分离的架构。与近存计算相比,“存”与“算”之间的距离更为紧密。
目前的存内处理方案主要通过在内存(DRAM)芯片中实现部分数据处理,其中典型的产品形态包括HBM-PIM和PIM-DIMM。这些方案在DRAM Die中内置了处理单元,为系统提供了具备大吞吐和低延迟的片上处理能力。这种存内处理技术可应用于多种场景,包括语音识别、数据库索引搜索、基因匹配等。
以HBM-PIM和PIM-DIMM为例,它们的设计允许存储器直接参与数据处理,而不再依赖于外部的计算单元。这种集成式的存内处理在提高计算效率的同时,降低了数据传输的需求,从而在一定程度上解决了存算分离架构中的数据移动瓶颈问题。
总的来说,存内处理虽然实现了存和算的更近距离,但仍然属于存算分离的范畴。这一技术方向在提高计算性能的同时,也在某种程度上改善了存算分离架构的局限性。
存内计算详细介绍CIM
存内计算,也就是狭义的存算一体,在芯片设计过程中不再区分存储单元和计算单元,实现了真正的存算融合,如图2-4所示。存内计算是当前计算新范式的研究热点,其核心在于重新设计存储电路,使其同时具备计算和存储能力,直接消除了“存”和“算”之间的界限。这一技术旨在实现计算能效的数量级提升。
存内计算的最典型应用场景之一是为AI算法提供向量矩阵乘的算子加速。目前,已经在神经网络领域展开了大量的研究,涵盖了卷积神经网络(Convolutional Neural Network,CNN)、循环神经网络(Recurrent Neural Network,RNN)等。通过利用不同存储介质的物理特性,存内计算在直接消除“存”和“算”之间的界限的同时,使计算能效得到显著提升。
存内计算有望引发人工智能领域的下一波浪潮,成为广义存算一体技术攻关的重点。这一技术的推进将在未来为人工智能和其他计算密集型任务提供更高效、更创新的解决方案。本白皮书的后续章节将围绕存内计算展开深入分析,探讨其在不同领域的应用和影响。
参考文献
本文根据中国移动研究院文献分析总结而来。
1.知存科技
2.中国移动研究院