[论文解读] pLUTo: In-DRAM Lookup Tables to Enable Massively Parallel General-Purpose Computation.
pLUTo 是一种新颖的片上 DRAM 架构,它在 DRAM 子阵列中嵌入大规模并行查找表(LUT),以在内存中高效、节能地执行复杂操作。通过利用 DRAM 的高面积密度来存储 LUT 并执行计算,pLUTo 在执行最先进的二值神经网络时,相比 CPU 实现了 33× 的加速和 110× 的能耗降低,相比 GPU 实现了 8× 的加速和 80× 的能耗降低。
Data movement between main memory and the processor is a significant contributor to the execution time and energy consumption of memory-intensive applications. This data movement bottleneck can be alleviated using Processing-in-Memory (PiM), which enables computation inside the memory chip. However, existing PiM architectures often lack support for complex operations, since supporting these operations increases design complexity, chip area, and power consumption. We introduce pLUTo (processing-in-memory with lookup table [LUT] operations), a new DRAM substrate that leverages the high area density of DRAM to enable the massively parallel storing and querying of lookup tables (LUTs). The use of LUTs enables the efficient execution of complex operations in-memory, which has been a long-standing challenge in the domain of PiM. When running a state-of-the-art binary neural network in a single DRAM subarray, pLUTo outperforms the baseline CPU and GPU implementations by $33 imes$ and $8 imes$, respectively, while simultaneously achieving energy savings of $110 imes$ and $80 imes$.
研究动机与目标
- 通过在 DRAM 内直接执行计算,解决内存密集型工作负载中的数据移动瓶颈。
- 克服现有计算内存(PiM)架构的局限性,这些架构由于设计复杂性和面积开销而缺乏对复杂操作的支持。
- 通过在 DRAM 内利用高密度、大规模并行查找表(LUT)实现内存中复杂操作的高效执行。
- 为通用内存密集型工作负载(如二值神经网络)实现显著的性能和能效提升。
提出的方法
- pLUTo 利用现有的存储单元结构,将 LUT 直接集成到 DRAM 子阵列中,利用 DRAM 的高面积密度实现大规模并行性。
- 它支持对子阵列中所有存储单元中的 LUT 进行并行查询,通过内容可寻址查找实现复杂操作的同时执行。
- 通过将函数编码为存储在 DRAM 中的 LUT,该架构支持任意函数计算,从而无需复杂的逻辑单元。
- 它利用现有的 DRAM 读写路径和时序,最大限度减少面积和功耗开销,同时保持与标准 DRAM 操作的兼容性。
- 该设计通过将神经网络中的非线性激活函数等复杂操作映射到预先存储的 LUT,实现了内存中的执行。
- 该系统通过二值神经网络工作负载进行评估,展示了在单个 DRAM 子阵列中基于 LUT 的计算实现的高吞吐量和低延迟。
实验结果
研究问题
- RQ1能否高效地将 LUT 嵌入 DRAM,以实现复杂操作的大规模并行内存计算?
- RQ2与传统的 CPU 和 GPU 执行相比,将 LUT 集成到 DRAM 中对面积、功耗和性能有何影响?
- RQ3基于内存的 LUT 计算在多大程度上可以减少数据移动并提高内存密集型工作负载的能效?
- RQ4与传统加速器相比,pLUTo 能否在真实工作负载(如二值神经网络)中实现高性能和显著的能耗节省?
主要发现
- 在执行最先进的二值神经网络时,pLUTo 相较基线 CPU 实现了 33× 的加速。
- 对于相同工作负载,与 CPU 相比,pLUTo 实现了 110× 的能耗降低。
- 与 GPU 相比,pLUTo 实现了 8× 的加速,同时实现了 80× 的能耗降低。
- 性能和能效的提升归因于数据移动的消除以及通过嵌入 DRAM 的 LUT 实现的大规模并行性。
- 该架构表明,无需专用逻辑单元,即可通过 LUT 在内存中高效执行复杂操作。
- 结果表明,DRAM 的高面积密度可被有效利用以大规模存储和查询 LUT,从而实现实用的内存内计算。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。