游乐游手机版
首页/AI热点日报/热点详情

机器学习推理存内计算芯片技术解析

类型:热点整理2026-07-23
存内计算集成于GPU缓存可加速机器学习推理的通用矩阵乘法。数字基元Digital-1性能可达基线450%,模拟基元Analog-1能耗低至0 12倍。高K值计算密集型矩阵乘法受益最大,寄存器文件级别集成通常优于共享内存。
# 存内计算(CiM)集成指南:加速机器学习推理的全面分析

本教程基于一项系统级研究,深入探讨如何将存内计算(CiM)集成到GPU缓存层次结构中,以加速机器学习(ML)推理中的通用矩阵乘法(GEMM)运算。我们将从三个核心问题出发:使用哪种类型的CiM?何时使用CiM?在哪里集成CiM? 通过详细的实验和分析,为您提供清晰的决策依据。

01. 为什么需要存内计算?

机器学习应用已无处不在,从汽车、医疗到金融和技术领域。这些应用的核心计算是通用矩阵乘法(GEMM),包括矩阵-向量乘法和矩阵-矩阵乘法。然而,传统冯·诺依曼架构(如CPU和GPU)中,计算单元与存储单元分离,导致频繁的数据搬运,产生高昂的能耗成本——即“存储墙”或“冯·诺依曼瓶颈”。

存内计算(CiM) 通过在内存中直接执行计算,显著降低了数据移动成本,提供了高能效比的解决方案。本教程重点讨论在片上存储子系统(如GPU的缓存、寄存器文件和共享内存)中集成CiM,无需激进的技术变革。


图1. 概览图:要实现最佳的ML推理加速,需要了解各种CiM类型(What)、GEMM形状(When)和内存级别(Where)的不同特性。

02. 三个核心问题:什么、何时、何处

2.1 什么类型的CiM?

  • 模拟CiM: 在存储器阵列内的模拟/混合信号域中执行乘加(MAC)运算。需要数模转换器(DAC)和模数转换器(ADC)等外围电路。ADC具有较高的面积、延迟和能耗成本。
  • 数字CiM: 在数字域中执行所有计算(逐位与/异或、乘法)。为了计算最终MAC输出,需执行多逐位操作,可能增加计算延迟。

此外,存储器单元类型(如SRAM 6T/8T)、字线/位线激活数量、权重映射方案等设计选择,都增加了确定最有效CiM基元的难度。

2.2 何时使用CiM?

ML模型由各种GEMM形状(M×N×K)组成。通过计算算术强度(运算次数/内存访问字节数),可以了解GEMM对内存的依赖程度。并非所有GEMM都需要GPU的全部功能,CiM可以在某些场景下提供能耗优势,同时保持可比的性能。

2.3 在哪里集成CiM?

每个内存级别(寄存器文件RF、共享内存SMem、L2缓存等)具有不同的带宽和容量,这影响数据复用机会和计算并行性。找到一个能充分利用局部性并最大化CiM效益的内存级别至关重要。

03. 相关工作简述

已有研究探索了CPU中的缓存内计算(如Duality Cache、MLIMP、Livia),但缺乏对GPU内存层次结构的系统评估。本研究填补了这一空白,聚焦于GPU(类似Nvidia A100)的流式多处理器(SM)中的RF和SMem级别,使用Timeloop-Accelergy框架进行早期系统级评估。

04. 背景知识

4.1 GEMM在ML工作负载中的重要性

卷积神经网络(CNN)、Transformer、推荐模型等均以GEMM为核心。例如,CNN通过im2col转换为GEMM,Transformer中的注意力计算也是GEMM。常用GEMM形状如表I所示(包括ResNet50、BERT、DLRM等模型中的层)。


表I: 来自常见ML模型的各种GEMM形状

4.2 基于SRAM的存内计算基元

CiM宏单元设计可基于模拟或数字,关键参数包括:

  • SRAM单元类型: 常见6T(紧凑但易读干扰)、8T(解耦读写,支持多字线)、10T(面积大但功能强)。
  • 输入方式: 输入可预存于CiM宏内,或从外部缓冲区流入。
  • 精度: 本教程固定为INT-8。

数字CiM适合先进工艺节点,而模拟CiM需应对ADC噪声问题。

4.3 缓存层次结构中的数据流优化

通过分块(tiling)和循环顺序调度,可最大化数据复用。正确的数据流能显著减少内存访问次数,提升能效。Timeloop等工具可自动搜索最优映射。

05. CiM架构构建与实验设置

5.1 使用Timeloop-Accelergy框架

该框架通过架构模板、约束配置和能耗表,快速评估不同CiM基元。我们将CiM集成到RF和SMem级别,架构模板如图3所示。


图3. 架构模板框图:内存级被重组为计算级,由多个CiM阵列组成,每个阵列包含可并行操作的CiM单元。

5.2 四种CiM基元详解

  • Analog-1 [16]: 4个存储体,每体4个128x64 SRAM 6T单元块。256个CiM单元,每单元128b存储,9个周期完成8b-8b MAC。时间循环因子16(受ADC数量限制)。
  • Analog-2 [17]: 8个阵列(64×64),可重构ADC设计。256个CiM单元,144个周期完成8b-8b MAC(含位串行延迟)。面积开销大。
  • Digital-1 [18]: 全数字设计,输入逐行输送,使用加法器树完成MAC。CiM单元利用8列权重位,18个周期延迟,面积适中。
  • Digital-2 [15]: 输入和权重映射到同一列,每CiM单元约执行10个MAC,但需233个周期。并行性受限,面积小。


图4. 四种CiM基元的微架构示意图

5.3 实验条件

  • 基准架构: 类似Nvidia A100的单个SM,规格见表V。假设INT-8精度、权重固定数据流、等面积约束。
  • GEMM形状: 从ResNet50、BERT-medium、DLRM中提取,覆盖计算密集型和内存密集型(见表IV)。
  • 能耗缩放: 根据已完成的缩放工作,将CiM能耗数据匹配到32nm、1V技术。


表II: CiM架构模板参数


表III: 四种CiM基元的关键参数


表IV: 实验用GEMM形状及属性


表V: 单个SM的基准架构规格

06. 核心发现与结果

6.1 数据流对性能的影响

图5展示了两个示例,说明不同CiM基元如何利用数据复用:

  • 当权重矩阵较小且M很大时(Gemm-3136×64×64),CiM可通过复制权重提高吞吐量,但高延迟基元(如Analog-2)性能严重受限。
  • 当权重矩阵过大时(Gemm-512×1024×512),CiM可减少DRAM访问,能耗节省显著。Digital-1通过权重复制实现高于基线的吞吐量。


图5. 数据流示例及性能比较

来源:https://m.elecfans.com/article/2657410.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。