现代原理解析:内存中的处理
1. 现代计算系统的瓶颈
在现代计算系统中,数据传输成为了一个关键瓶颈。传统设计中,计算系统普遍将数据从存储器移动到计算单元进行处理,这直接违背了至少三个关键的计算趋势:数据访问瓶颈、能源消耗瓶颈以及数据传输成本(尤其是从芯片外到芯片内)。随着数据密集型应用的增加,内存带宽和能耗难以扩展的问题愈发明显,导致了性能瓶颈。此外,数据传输的成本远高于计算成本,尤其是在服务器和移动系统中,这对能效提出了严峻挑战。
数据访问瓶颈
数据访问是当前计算系统中的主要瓶颈,因为许多重要应用越来越数据密集型,而内存带宽和能耗无法很好地扩展。这导致了性能瓶颈,尤其是在处理大数据集时,如图分析和深度学习。
能源消耗瓶颈
能源消耗是几乎所有计算平台的关键限制因素,尤其是服务器和移动系统。计算单元需要不断从内存中获取数据,这不仅增加了能耗,还限制了系统的能效。
数据传输成本
数据传输,特别是从芯片外到芯片内的传输,其带宽、能耗和延迟成本非常高,远高于计算成本。这在当代数据密集型服务器和能源受限的移动系统中尤为严重。
2. 内存处理(PIM)的概念
内存处理(Processing-In-Memory, PIM)旨在通过将计算机制放置在数据存储位置附近来减少或消除计算与数据存储之间的数据传输。PIM可以通过利用DRAM芯片的模拟操作特性在内存中执行大规模并行操作,也可以通过3D堆叠内存技术设计近内存处理方案。以下是PIM的两种主要实现方式:
2.1 使用DRAM芯片特性进行处理
通过利用DRAM芯片的模拟操