[论文解读] RAPIDNN: In-Memory Deep Neural Network Acceleration Framework
RAPIDNN 将 DNN 计算重新解释为在内存中进行,使用以内存为中心的加速器,结合基于码本的表示和查找表块,在原地执行乘法、加法、激活和池化,在能耗和速度上实现大幅提升,同时保持最小的质量损失。
Deep neural networks (DNN) have demonstrated effectiveness for various applications such as image processing, video segmentation, and speech recognition. Running state-of-the-art DNNs on current systems mostly relies on either generalpurpose processors, ASIC designs, or FPGA accelerators, all of which suffer from data movements due to the limited onchip memory and data transfer bandwidth. In this work, we propose a novel framework, called RAPIDNN, which processes all DNN operations within the memory to minimize the cost of data movement. To enable in-memory processing, RAPIDNN reinterprets a DNN model and maps it into a specialized accelerator, which is designed using non-volatile memory blocks that model four fundamental DNN operations, i.e., multiplication, addition, activation functions, and pooling. The framework extracts representative operands of a DNN model, e.g., weights and input values, using clustering methods to optimize the model for in-memory processing. Then, it maps the extracted operands and their precomputed results into the accelerator memory blocks. At runtime, the accelerator identifies computation results based on efficient in-memory search capability which also provides tunability of approximation to further improve computation efficiency. Our evaluation shows that RAPIDNN achieves 68.4x, 49.5x energy efficiency improvement and 48.1x, 10.9x speedup as compared to ISAAC and PipeLayer, the state-of-the-art DNN accelerators, while ensuring less than 0.3% of quality loss.
研究动机与目标
- 促使在物联网和边缘设备的 DNN 推理中减少数据移动和内存瓶颈。
- 引入一个数字化、以内存为中心的加速器,在内存内执行核心 DNN 操作,以提高能效和速度。
- 开发一个框架,将 DNN 模型重新解释为与内存内处理兼容的表示,同时控制精度损失。
- 提供软件与硬件协同设计方法,将权重和激活映射到基于内存的表中以实现高效查找。
提出的方法
- 将 DNN 计算转换为四种内存友好操作的序列:乘法、加法、激活和池化。
- 使用 k-means 聚类为权重和输入创建代表性码本,使乘法能够在内存中进行查找。
- 采用多级(基于树的)操作数编码,在准确性与内存/计算成本之间进行权衡;将乘法卸载到存放在交叉开关中的预计算表。
- 通过充当查找表的联想内存块对激活函数和编码/池化进行建模,实现全内存执行,无需模拟计算路径。
- 重新训练并迭代地优化重新解释的网络,以达到目标误差容忍度,在精度与内存表大小之间取得平衡。
- 使用带有交叉开关存储的权重累积的专用 RNA( Resistive Neural Accelerator)模块架构,以及用于激活/池化的 AM 块。
实验结果
研究问题
- RQ1如何将 DNN 计算(乘法、加法、激活、池化)转化为主要在内存中运行?
- RQ2哪些聚类和编码策略在实现紧凑的表格驱动内存计算的同时能保持推理准确性?
- RQ3一个数字化、基于忆阻器的加速器是否能够在无需模数转换和多层忆阻器的情况下完成所有核心 DNN 操作?
- RQ4在跨越常见层类型(卷积、全连接、池化)对标准 DNN 进行内存内处理重新解释时,精度与能耗/速度的权衡是什么?
主要发现
- RAPIDNN 在评估工作负载上相比 ISAAC 的能效提升高达 68.4×、速度提升高达 48.1×;相比 PipeLayer 的能耗提升高达 49.5×、速度提升 10.9×。
- 该框架在六个 DNN 应用上保持不到 0.5% 的质量损失。
- 通过多级码本和离线聚类的编码实现内存中的乘法和激活的高精度,而无需依赖不可靠的多级忆阻器。
- 所有核心操作(乘法、加法、激活、池化)都在内存块内实现,避免了复杂的 ADC/DAC 路径,并实现可扩展的数字化计算。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。