【存内计算在AI大模型时代应用最佳实践系列】三十六:近存计算NMC

完美句号 社区KOL 2024-02-10 21:47:11

内存在延迟和能耗方面一直赶不上处理器技术的进步,这被称为内存墙。系统架构师试图通过引入内存层次结构来弥合这一差距,从而减轻片外DRAM的一些缺点。然而,内存芯片上有限的管脚数量无法满足当今多核处理器的带宽需求。

1. 背景技术:

在传统系统上,这些应用程序会导致内存子系统和处理器之间频繁的数据移动,这严重影响性能和能效。比如,集群计算框架能够对批处理和流数据进行分布式内存处理,当前的许多研究都集中于提出创新的制造技术和体系结构来克服这些问题。

传统的CPU和GPU在执行计算密集型任务处理海量参数时,需要将这些参数从内存中读取出来,再进行计算。由于读取时间与参数规模成正比,计算过程的效率会受到限制,甚至GPU算力利用率可能不足8%。


2. 近存计算(NMC):

分离存储与计算,通过将数据靠近计算单元,以减小数据移动的延迟和降低功耗,目前是提升芯片性能的主流方案,这种设计的思想是通过将存储和计算单元分开,使数据能够更接近计算单元,从而加速计算过程。

内存层次结构通常由多级缓存、主内存和存储器组成。传统的方法是将数据从存储器移到高速缓存中,然后对其进行处理。相比之下,近存计算(NMC)的目标是在接近数据所在的位置进行处理。这种以数据为中心的方法将靠近数据的计算单元耦合在一起,以尽量减少昂贵的数据移动。值得注意的是,三维堆叠作为接近内存处理的真正推动者,它允许通过硅通孔(TSV)将逻辑和内存堆叠在一起,这有助于减少内存访问延迟、功耗并提供更高的带宽。

上图描述了基于程序在执行期间引用的信息的系统演化,该信息被称为工作集。以前的系统基于以CPU为中心的方法,将数据移动到核心进行处理(图(a)-(c)),而现在使用近内存处理(图(d))将处理核心移动到数据所在的位置。内存计算(图(e))范式旨在通过使用具有计算能力的内存(例如忆阻器、相变存储器(PCM))来完全减少数据移动。

然而,目前这一方案已经接近了物理极限,提升能效的空间受到限制,而成本也逐渐升高。

随着技术的不断发展,存储与计算分离所带来的性能提升已经逐渐变得有限。尽管它成功地减小了数据移动的延迟并降低了功耗,但在寻求更大的性能提升和能效改进方面,当前的主流芯片面临一些瓶颈,成本的不断上升也使得进一步提升性能变得更为昂贵和困难。

从概念上讲,近内存计算方法可以应用于任何级别或类型的内存,以提高系统的整体性能。在分类法中,不包括基于磁盘的系统,因为由于磁盘的高访问延迟和高故障率,它们无法再提供及时响应。尽管如此,主要研究如何在磁盘中提供处理能力。然而,由于边际性能改善无法证明相关成本的合理性,因此没有被业界广泛采用。相反,将新兴的非易失性存储器称为存储类存储器(SCM),它们试图填补DRAM和磁盘之间的延迟间隙。

在异构计算中,FPGA作为加速器,采用线上处理方式,在网络分组收发的过程中,实现对应用数据的在线处理,是一种典型的NMC场景。


3. 设计空间探索(DSE):

基于NMC(近内存计算)的FPGA加速,基于深度神经网络模型参数量大,并且FPGA中的内存与处理器是分隔的,这就意味着DNN需要传输大量参数,导致巨大的能量消耗。近内存计算是最近热门的一种加快神经网络计算的方法,为了降低高功率开销,论文提出的NMC FPGA架构通过开发各种神经网络组件(CONV、FC、POOL)来构建神经网络模型,然后通过使用VTR来映射到NMC FPGA平台。提出的架构旨在降低矩阵乘法的功耗,使用NMC FPGA,矩阵计算的能源效率提高、功耗降低以及所用电路面积也有所减少。

Design Space Exploration,设计空间探索 (DSE) 是指根据感兴趣的参数对不需要的设计点进行系统分析和修剪,也就是说在特定感兴趣参数的每个实现选项之间进行权衡分析。

感兴趣的参数可能因系统而异,但常用的参数是功率、性能和成本。尺寸、形状、重量等其他因素对于某些手持系统(如手机和平板电脑)可能很重要。随着移动设备使用的增加,能量也与功率和性能一起成为主流的优化参数。

设计空间探索是从试探性设计点空间中寻找最能满足所需设计要求的一个或多个设计解决方案的过程,是指在实施之前探索设计备选方案的活动。DSE 能够在潜在候选设计的空间内进行操作,因此可用于许多任务程任务,包括快速原型设计、优化和系统集成。DSE的主要挑战来自探索的设计空间的庞大规模,大型系统具有数百万甚至数十亿种可能性,不可能进行枚举设计空间中的每个点。鉴于电子系统的复杂规格和过多的设计选择,包括组件的选择、组件的数量、每个组件的操作模式、组件之间的连接、算法的选择等;设计决策需要基于系统的探索过程。 然而,由于实现相同功能的方式多种多样,因此探索过程很复杂。研究人员一直在努力简化DSE的复杂性,开发探索工具、实现自动化DSE。


4. 小结:

支持NMC的内存技术、NMC通用的工具、开源工具和可重现性、节能、混合内存设计、3D堆叠技术中新的电源和散热方案以及合适的数据映射方法等。

...全文
84 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

支持存内计算开发者社区的建设

牵着猫散步的鼠鼠 社区KOC 02-11
  • 打赏
  • 举报
回复

支持存内计算开发者社区的建设

完美句号 社区KOL 02-11
  • 打赏
  • 举报
回复 1

支持NMC的内存技术、NMC通用的工具、开源工具和可重现性、节能、混合内存设计、3D堆叠技术中新的电源和散热方案以及合适的数据映射方法等。

完美句号 社区KOL 02-10
  • 打赏
  • 举报
回复 1

支持NMC的内存技术、NMC通用的工具、开源工具和可重现性、节能、混合内存设计、3D堆叠技术中新的电源和散热方案以及合适的数据映射方法等。

2,035

社区成员

发帖
与我相关
我的任务
社区描述
首个存内开发者社区,是整合产学研各界资源优势,搭建的学习与实践平台,提供存内架构学习,平台算法部署实践,存内计算线下训练以及AI时代大模型追踪,从理论到实践,供开发者体验未来第三极算力架构。
其他 企业社区
社区管理员
  • 存内计算开发者社区
  • Hundred++
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  • 奖品兑换上新:

100积分 - 品牌赞助托特包 (单个账号限兑换5个)

200积分-罗技M240无线鼠标 ( 单个账号限兑换3个)

400积分-马歇尔入耳式耳机 (单个账号限兑换2个)

600积分-Cherry MIX 3.0键盘 (单个账号限兑换2个)

800积分- 雷切Pro游戏手柄 (单个账号限兑换1个)

1200积分-Switch 积分(单个账号限兑换1个)

 

  • 积分规则:

 

创作积分:

1,发布文章获取20积分

2,文章内容加精30积分

互动积分:

1,发布评论互动积分:2积分

2,点赞文章获取积分:1积分

 

 

试试用AI创作助手写篇文章吧