[论文解读] PUMA: A Programmable Ultra-efficient Memristor-based Accelerator for Machine Learning Inference
PUMA 是一种可编程、超高效的基于忆阻器的机器学习推理加速器,通过定制指令集架构(ISA)将模拟忆阻器交叉阵列与数字处理单元集成。它通过支持通用机器学习工作负载,在保持存内计算效率的同时,实现了相较于最先进GPU高达2,446倍的能效提升和66倍的延迟降低。
Memristor crossbars are circuits capable of performing analog matrix-vector multiplications, overcoming the fundamental energy efficiency limitations of digital logic. They have been shown to be effective in special-purpose accelerators for a limited set of neural network applications. We present the Programmable Ultra-efficient Memristor-based Accelerator (PUMA) which enhances memristor crossbars with general purpose execution units to enable the acceleration of a wide variety of Machine Learning (ML) inference workloads. PUMA's microarchitecture techniques exposed through a specialized Instruction Set Architecture (ISA) retain the efficiency of in-memory computing and analog circuitry, without compromising programmability. We also present the PUMA compiler which translates high-level code to PUMA ISA. The compiler partitions the computational graph and optimizes instruction scheduling and register allocation to generate code for large and complex workloads to run on thousands of spatial cores. We have developed a detailed architecture simulator that incorporates the functionality, timing, and power models of PUMA's components to evaluate performance and energy consumption. A PUMA accelerator running at 1 GHz can reach area and power efficiency of $577~GOPS/s/mm^2$ and $837~GOPS/s/W$, respectively. Our evaluation of diverse ML applications from image recognition, machine translation, and language modelling (5M-800M synapses) shows that PUMA achieves up to $2,446\ imes$ energy and $66\ imes$ latency improvement for inference compared to state-of-the-art GPUs. Compared to an application-specific memristor-based accelerator, PUMA incurs small energy overheads at similar inference latency and added programmability.
研究动机与目标
- 解决现有基于忆阻器的加速器在可编程性和工作负载特异性方面的局限性。
- 在单一加速器架构上实现对多样化机器学习推理工作负载(包括CNN、RNN和transformers)的高效执行。
- 在保持忆阻器交叉阵列高能效和高存储密度的同时,增加通用计算能力。
- 协同设计专用ISA、编译器和微架构,以最小化复杂工作负载下的面积和功耗开销。
- 证明可编程忆阻器加速器在能效和延迟方面可超越GPU和ASIC。
提出的方法
- PUMA采用空间架构,包含数千个处理核心,每个核心均集成忆阻器交叉阵列用于矩阵-向量乘法,以及数字执行单元用于标量和向量运算。
- 通过定制指令集架构(ISA)实现对机器学习操作的紧凑编码,降低解码器复杂度,并支持多种神经网络类型。
- 采用时间并行SIMD单元和嵌入式ROM-RAM,高效执行线性及超越函数(如ReLU和softmax)。
- PUMA编译器执行图划分、指令调度和寄存器分配,以生成大规模模型的优化代码。
- 通过详细架构模拟器对时序、功耗和面积进行建模,评估多样化工作负载下的性能与能效。
- 设计采用1T1R忆阻器配置以确保可制造性与高存储密度,并通过灵活的控制单元优化数据移动。
实验结果
研究问题
- RQ1基于忆阻器的加速器能否在支持广泛机器学习推理工作负载的同时实现高能效?
- RQ2如何在不牺牲忆阻器固有的能效和存储密度的前提下,为忆阻器交叉阵列增加可编程性?
- RQ3为忆阻器交叉阵列添加通用执行单元以支持混合精度和非MVM操作,其性能与能效开销如何?
- RQ4定制ISA与编译器在多大程度上可实现复杂神经网络在空间忆阻器加速器上的高效映射?
- RQ5与GPU和专用ASIC相比,可编程忆阻器加速器在能效延迟积和可扩展性方面表现如何?
主要发现
- PUMA在1 GHz下实现577 GOPS/s/mm²的面积效率和837 GOPS/s/W的功耗效率,显著优于数字加速器。
- 在图像识别、机器翻译和语言建模工作负载(500万至8亿个突触)中,PUMA的能耗相比最先进GPU最高降低2,446倍。
- PUMA将推理延迟降低至GPU的1/66,同时保持高存储密度和低面积开销。
- 与专用忆阻器加速器相比,PUMA在相似延迟下仅引入微小的能耗开销,且具备完整的可编程性优势。
- PUMA编译器成功完成大规模模型的划分与优化,实现对数千个空间核心的高效代码生成。
- 采用1T1R忆阻器配置确保了可制造性,行业合作伙伴如台积电(TSMC)和联华电子(UMC)已推进40nm CMOS集成忆阻器技术。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。