C-Transformer: An Energy-Efficient Homogeneous DNN-Transformer/SNN-Transformer Processor for Large Language Models阅读总结
中文标题: C-Transformer:面向大语言模型的同构DNN-Transformer/SNN-Transformer融合处理器
作者:Sangyeob Kim, Sangjin Kim, Wooyoung Jo, Soyeon Kim, Seongyon Hong, Nayeong Lee, Jungwan Lee, Hoi-Jun Yoo
发表:IEEE JSSC
工艺:Samsung 28nm 1P8M CMOS
摘要
本文提出C-Transformer处理器,旨在解决大语言模型(LLM)部署于移动端时面临的两大核心瓶颈:外部存储器访问(EMA)能耗占比过高与计算能效不足。该芯片融合DNN-Transformer与SNN-Transformer两种计算范式,通过同构核心架构实现动态工作负载下的高硬件利用率,并采用三级权重压缩技术大幅降低EMA。芯片在28nm CMOS工艺下实现,支持GPT-2、mT5、T5、FSMT等模型的语言建模、翻译与摘要任务,系统能耗较基线降低59%~79%。
核心专有名词解析
| 术语 | 缩写 | 定义(面向跨专业读者) |
|---|---|---|
| 脉冲神经网络 | SNN | 神经元以离散脉冲(spike)传递信息,仅当膜电位超过阈值时发射脉冲。计算为累加操作(无乘法),能耗与脉冲稀疏度成正比。 |
| 深度神经网络 | DNN | 传统人工神经网络,每层执行密集矩阵乘法(MAC操作),能耗相对稳定,与输入幅值无关。 |
| 互补DNN | C-DNN | 将DNN工作负载按输入幅值动态划分为SNN部分(小幅值→累加)与DNN部分(大幅值→MAC),实现全局能耗最优。 |
| 同构核心 | Homogeneous Core | 同一硬件单元可通过配置切换为DNN模式或SNN模式,避免异构架构中因工作负载比例变化导致的部分核心闲置。 |
| 混合乘加单元 | HMAU | 可重构乘法器/累加器阵列:DNN模式下执行1次N-bit乘法;SNN模式下执行N次1-bit累加(AND+加法)。 |
| 位对齐 | Bit Alignment | SNN模式下,多通道AND结果的位权需对齐后方可列向累加。HMAU通过重排权重位序实现垂直方向同权位对齐。 |
| 输出脉冲推测 | OSSU | 对SNN的完整时间窗口,仅采样前25%~50%时间步执行实际积分-发放运算,根据采样步的发放概率推测剩余时间步的脉冲模式,跳过后续计算。 |
| 大-小模型 | BLN | 推理时优先使用小模型(低精度、低参数)生成输出;当输出置信度低于阈值时,调用大模型重新计算,兼顾能效与精度。 |
| 隐式权重生成 | IWG | 离线训练一个多层感知器(MLP)记忆原始LLM的权重分布。片上仅存储权重索引,运行时由MLP重构权重,大幅减少EMA。 |
| 扩展符号压缩 | ESC | 神经网络权重呈高斯分布,多数权重高位为冗余符号位(全0或全1)。ESC将8-bit权重压缩为5-bit(低位4-bit + 1-bit符号标志),解码时还原MSB。 |
一、研究动机与挑战
1.1 SNN与DNN的互补特性
- SNN:输入幅值越小→脉冲越稀疏→累加次数越少→能耗越低。
- DNN:能耗与输入幅值相关性弱,全加器(FA)基本恒定工作。
- 互补策略:小幅值数据→SNN处理;大幅值数据→DNN处理。前期工作C-DNN在ResNet-18上证明该策略可降低31%推理能耗。
1.2 语言模型带来的新挑战
挑战一:动态变化的SNN/DNN比例
- GPT-2语言建模中,SNN-Transformer占比变化范围为45%~98%。
- mT5翻译任务中,SNN-Transformer占比变化范围为48%~99%。
- 若采用异构核心(部分核心仅支持DNN、部分仅支持SNN),当某一模式占比下降时,对应核心闲置,利用率下降32%~36%。
挑战二:EMA能耗主导
- 语言模型参数量为图像分类模型(ResNet-50)的18倍,计算量为43倍。
- 因语言模型难以通过剪枝实现高稀疏度,EMA能耗占总系统能耗的**~70%**。
- 此前Transformer ASIC的能效评测均未计入EMA能耗,与实际系统工况严重脱节。
二、核心架构与技术方案
2.1 整体架构
芯片包含48个HDSC(同构DNN/SNN核心)、两个权重生成器(WG)、一个1D SIMD单元(处理INT16异常值)及片上网络(NoC)。每个HDSC包含8×16个HMAU、输入加载器、OSSU、工作负载分配器及本地存储器。
工作负载分配器在层间或层内动态累加输入幅值统计量,决策下一计算阶段采用DT-mode还是ST-mode,且该决策过程与计算流水线重叠,额外延迟被完全隐藏。
2.2 混合乘加单元(HMAU)
DT-mode(DNN模式):
- 输入的不同bit位送至不同行,同一权重广播至所有行。
- 直通连接(RC送入0),进位从右半部分传至左半部分。
- 行为与标准乘法器完全一致:1次乘法/周期。
ST-mode(SNN模式):
- 权重与1-bit脉冲在不同通道间进行AND操作,需对多通道结果进行列向累加。
- Step 1:权重与脉冲沿垂直方向单播,每行独立计算AND。
- Step 2:位对齐——将各行权重的bit序重排(如第2行原序[3,2,1,0] → [0,3,2,1]),使相同权位垂直对齐,实现正确列向累加。
- Step 3:高位送入右半部分,低位送入左半部分,两部分分别累加。
- Step 4:右半部分的进位与左半部分结果聚合,完成最终累加。
- 结果:N次累加/周期(N等于位宽)。
权重馈送逻辑(WFL):
- DT-mode:一次加载N个权重,分N周期逐行发送。
- ST-mode:N个权重同时加载至N行。
- 两种模式下权重带宽归一化,数据供给速率与计算速率匹配。
面积与能效权衡:
- HMAU相比标准MAC面积开销15.1%,功耗开销11.6%。
- 因核心利用率从32%36%提升至49%74%,能效提升59%(计入EMA及SIMD延迟后)。
脉冲级零跳过:输入加载器仅在检测到脉冲的通道上激活FA,无效通道被跳过,FA利用率提升28.6%。
2.3 输出脉冲推测单元(OSSU)
基本原理:
采用速率编码(rate coding),输入幅值与时间窗口内脉冲频率成正比。采样时间步的脉冲频率可反映完整窗口的脉冲频率。对采样步进行实际积分-发放运算,获得发放概率,据此推测剩余时间步的输出脉冲模式。
实现流程:
- Step 1:仅对采样时间步(如25%)执行积分-发放,计算输出发放概率。
- Step 2:利用发放概率与随机数生成器,对剩余时间步进行输出速率编码。
- Step 3:跳过剩余时间步的积分-发放运算。
阈值设置:
- DNN定点数据分辨率为2⁻ᶠ(f为小数位长),最大值2^(w-f-1)(w为字长)。
- 设定SNN阈值 = 2⁻ᶠ,使每个输出脉冲携带的信息量等同于DNN的1 LSB。
- 时间窗口 = 2^(w-1),使SNN最大值与DNN最大值对齐。
实测结果:GPT-2语言建模中,平均采样率40.7%,跳过59.3%时间步,困惑度仅增加0.2。
2.4 三级权重压缩
Stage 1:大-小模型(BLN)
- 小模型优先推理,输出token置信度低于阈值时调用大模型。
- 参数减少量:解码阶段EMA降低39%~59%。
Stage 2:隐式权重生成(IWG)
- 离线训练MLP(5层,INT8)记忆LLM权重分布。
- 片上仅存储权重索引,运行时MLP重构权重,索引大小远小于原始权重。
- EMA再降低21%28%(累计60%71%)。
Stage 3:扩展符号压缩(ESC)
- 权重呈高斯分布,MSB部分多为冗余符号位。
- 8-bit权重压缩为5-bit(4-bit LSB + 1-bit符号标志),解码时还原MSB。
- 对4-bit权重压缩仍可降低EMA约20%。
- EMA累计降低74%~81%。
片上解压数据流:
外部输入四类数据:索引(8-bit)、符号(1-bit)、未压缩数据的MSB(4-bit)、所有数据的LSB(4-bit)。各类型分组打包(32-bit对齐)后独立存储,ESDU完成符号扩展,IWGU执行MLP重构,最终权重经NoC发送至HDSC。
三、芯片实现与实测结果
3.1 芯片规格
| 参数 | 数值 |
|---|---|
| 工艺 | Samsung 28nm 1P8M CMOS |
| 面积 | 20.25 mm² |
| 电压 | 0.7–1.1 V |
| 频率 | 50–200 MHz |
| SRAM | 500 KB |
| 精度 | INT8(HDSC)/ INT16(1D SIMD) |
| 峰值性能 | 3.41 TOPS @ 200MHz |
| 能效(芯片级) | 22.9–47.8 TOPS/W @ 50MHz, 0.7V |
| 外部带宽 | 1.6 GB/s |
| 系统功耗 | 47.6 mW @ 50MHz, 0.7V |
3.2 典型任务延迟与能耗(@200MHz, 1.1V;@50MHz, 0.7V计算能耗)
| 模型 | 任务 | 精度指标 | 延迟 | 系统能耗 | 计算能耗比 | EMA能耗比 |
|---|---|---|---|---|---|---|
| GPT-2 | 语言建模 | PPL 14.96 | 656 ms | 35.9 mJ | 0.33× | 0.38× |
| mT5 | 翻译 | BLEU 39.83 | 359 ms | 21.3 mJ | 0.31× | 0.37× |
| T5 | 摘要 | ROUGE-L 28.54 | 307 ms | 15.0 mJ | 0.21× | 0.39× |
| FSMT | 翻译 | BLEU 40.55 | 93 ms | 5.5 mJ | 0.27× | 0.41× |
能耗比均为相较于未使用本论文提出技术的基线
3.3 各技术模块贡献
芯片能效提升(芯片级,不含EMA):
- HDSC同构核心:1.32×
- 脉冲级零跳过:1.21×
- OSSU:1.19×
- 三者综合:1.9×(排除BLN影响)
系统能耗降低(含EMA,编码+解码):
- BLN:0.94×
- IWG:0.75×
- ESC:0.78×
- 全部启用:0.43×
3.4 与SOTA对比
对比条件说明:此前Transformer ASIC均未计入EMA能耗。本文按DDR3接口参数对其EMA能耗进行标准化估算,基于相同片上缓冲容量假设。
| 对比维度 | 本工作 | SOTA [17](MulTCIM) | 对比结果 |
|---|---|---|---|
| 参数量 | 708M(GPT-2) | 337M(ViT) | 2.1×参数 |
| 系统能耗 | 35.9 mJ | 41.5 mJ | 降低13.6% |
| 归一化能耗(同参数量级) | — | — | 降低63.8% |
| 吞吐量 | — | — | 2.1×更高 |
| 归一化吞吐量(同参数量级) | — | — | 4.5×更高 |
3.5 系统能耗细粒度分析
以GPT-2编码(1024 tokens)为例:
- 系统总能耗构成:DDR3 EMA占75.8%(17.4 mJ),芯片计算占24.2%。
- 三级压缩后,总延迟中EMA占40.6%,仍为主要瓶颈但已大幅缓解。
四、技术总结
C-Transformer通过以下技术路径解决LLM端侧部署瓶颈:
- 计算维度:利用SNN/DNN互补特性,以HMAU实现同一硬件单元在乘法和累加模式间无缝切换,解决动态工作负载下的核心闲置问题;以OSSU跳过SNN冗余时间步,降低计算能耗。
- 存储维度:以BLN、IWG、ESC三级压缩依次削减权重存储与传输开销,累计EMA降低74%~81%,将外部带宽需求压缩至1.6 GB/s,适配移动端内存接口。
- 系统维度:全链路能耗建模——包含EMA的实际系统工况评测,比此前仅报告芯片级能效的工作更具工程参考价值。
该芯片证明:在无需先进制程(28nm)的条件下,通过算法-架构协同设计,可使LLM端侧推理延迟控制在亚秒级(FSMT仅93ms),能耗较此前最优方案降低13.6%(参数量反而更大),为移动端部署大规模生成式语言模型提供了可行的硅实现路径。