[论文解读] ORIGAMI: A Heterogeneous Split Architecture for In-Memory Acceleration of Learning
Origami 提出了一种异构拆分架构,通过将内存内加速器与外部计算平台结合,克服 3D 堆叠内存中机器学习工作负载的带宽、功耗和面积限制。通过将通用计算模式提取到专用引擎中,并智能地在内存内与外部平台之间拆分计算,Origami 在最先进加速器的基础上实现了最高 1.6× 的速度提升和 31× 的能效延迟积(EDP)改进。
Memory bandwidth bottleneck is a major challenges in processing machine learning (ML) algorithms. In-memory acceleration has potential to address this problem; however, it needs to address two challenges. First, in-memory accelerator should be general enough to support a large set of different ML algorithms. Second, it should be efficient enough to utilize bandwidth while meeting limited power and area budgets of logic layer of a 3D-stacked memory. We observe that previous work fails to simultaneously address both challenges. We propose ORIGAMI, a heterogeneous set of in-memory accelerators, to support compute demands of different ML algorithms, and also uses an off-the-shelf compute platform (e.g.,FPGA,GPU,TPU,etc.) to utilize bandwidth without violating strict area and power budgets. ORIGAMI offers a pattern-matching technique to identify similar computation patterns of ML algorithms and extracts a compute engine for each pattern. These compute engines constitute heterogeneous accelerators integrated on logic layer of a 3D-stacked memory. Combination of these compute engines can execute any type of ML algorithms. To utilize available bandwidth without violating area and power budgets of logic layer, ORIGAMI comes with a computation-splitting compiler that divides an ML algorithm between in-memory accelerators and an out-of-the-memory platform in a balanced way and with minimum inter-communications. Combination of pattern matching and split execution offers a new design point for acceleration of ML algorithms. Evaluation results across 12 popular ML algorithms show that ORIGAMI outperforms state-of-the-art accelerator with 3D-stacked memory in terms of performance and energy-delay product (EDP) by 1.5x and 29x (up to 1.6x and 31x), respectively. Furthermore, results are within a 1% margin of an ideal system that has unlimited compute resources on logic layer of a 3D-stacked memory.
研究动机与目标
- 通过利用 3D 堆叠内存中的内存内加速,解决机器学习训练中的内存带宽瓶颈。
- 克服以往内存内加速器缺乏通用性或未能高效利用可用带宽的局限性。
- 设计一种系统,支持多种机器学习算法,同时在 3D 堆叠内存的逻辑层严格遵守功耗和面积预算。
- 通过智能计算拆分,将内存内加速器与外部计算平台结合,实现内存带宽的充分利用。
提出的方法
- 使用模式匹配技术,在 12 种机器学习算法中识别通用计算模式,以推导出专用的、低开销的计算引擎。
- 将这些异构计算引擎集成到 3D 堆叠内存的逻辑层,以支持广泛的机器学习算法。
- 开发一种计算拆分编译器,将机器学习工作负载在内存内加速器与外部平台(如 FPGA、GPU、TPU)之间划分,以平衡负载并最小化平台间通信。
- 通过结合片上加速器(最高捕获 47% 带宽)与片外平台访问(最高利用内部带宽的 63%),高效利用 3D 堆叠内存的内部带宽。
- 应用三级并行机制——块级、部分级和模型级——以动态优化工作负载分配和资源利用率。
实验结果
研究问题
- RQ1在严格的功耗和面积约束下,一组异构的内存内加速器能否高效支持多种机器学习算法?
- RQ2在 3D 堆叠 DRAM 架构中,仅靠内存内加速器能在多大程度上利用可用内存带宽?
- RQ3如何有效拆分内存内加速器与外部计算平台之间的计算,以最大化带宽利用率并最小化通信开销?
- RQ4通过结合基于模式的内存内加速与片外执行,可实现多大的性能和能效提升?
主要发现
- 在 12 个机器学习基准测试中,Origami 相较于最先进 3D 堆叠内存加速器,性能最高提升 1.6×,能效延迟积(EDP)提升 31×。
- 与基于 FPGA 的加速相比,系统在平均性能上提升 1.5×,EDP 改进 21×,展现出强大的可扩展性和效率。
- 对于具有模型级并行性的基准(如 Reco),启用全部三种并行机制(块级、部分级、模型级)可实现最高 1.6× 的速度提升和 31× 的 EDP 降低。
- 结果与逻辑层拥有无限计算资源的理想系统相比仅相差 1%,表明带宽利用接近最优。
- 启用部分级和模型级并行性显著提升性能和 EDP,尤其在复杂模型(如 BProp 和 Reco)上,相比仅启用块级并行性,EDP 最高降低 26.75%。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。