Workflow
强扩展和弱扩展
icon
搜索文档
NVIDIA Tensor Core 的演变:从 Volta 到 Blackwell
半导体行业观察· 2025-06-24 09:24
Tensor Core架构演进 - Tensor Core是推动GPU计算能力远超摩尔定律的核心技术,已成为现代AI和机器学习的基石[1] - 从Volta到Blackwell共经历五代架构演进:Volta(第一代)、Turing(第二代)、Ampere(第三代)、Hopper(第四代)、Blackwell(第五代)[11] - 每代架构在MMA(矩阵乘加)指令执行方式、数据精度支持、内存层次结构等方面均有重大创新[11][18][30][39][46] 性能工程原理 - 阿姆达尔定律量化了并行计算的最大加速比,性能提升受限于串行部分执行时间[5] - 强扩展通过增加计算资源解决固定规模问题,弱扩展通过增加资源解决更大规模问题[6] - 数据移动成本远高于计算成本,现代DRAM速度比晶体管开关速度慢两个数量级,形成"内存墙"[10] 编程模型演变 - PTX编程模型采用线程网格-CTA-Warp的三级线程层次结构,对应寄存器-共享内存-全局内存的内存层次[13][14] - SIMT执行模式以Warp(32线程)为单位发出指令,与SIMD不同在于指定单线程行为而非向量宽度[15] - SASS是PTX底层指令集,但文档不完善因NVIDIA对竞争对手保密[17] 各代Tensor Core特性 Volta(第一代) - 引入HMMA指令执行8x8x4矩阵乘法,需8线程四对协作完成[22][25] - 支持FP16输入/FP32累积,符合混合精度训练需求[26] - 每个SM含8个Tensor Core,每周期1024 FLOP[22] Turing(第二代) - 增加INT8/INT4精度支持,引入Warp级同步MMA[27] - 首次将深度学习应用于游戏图形(DLSS技术)[27] Ampere(第三代) - 引入异步数据复制,直接从全局内存到共享内存,缓解寄存器压力[29] - Warp级同步MMA指令,完整32线程参与运算,每SM每周期2048 FLOP(Volta两倍)[30] - 支持BF16格式,提供FP32级别动态范围且无需损失缩放[32] Hopper(第四代) - 新增线程块集群概念,CTA可跨SM协作访问分布式共享内存[33] - 引入张量内存加速器(TMA),批量异步复制全局内存到共享内存[35] - Warpgroup级异步MMA(wgmma),4个Warp(128线程)协作执行更大规模矩阵运算[39] - 支持8位浮点(E4M3/E5M2)和22位定点累加[41] Blackwell(第五代) - 新增Tensor Memory(TMEM)专用存储,256KB容量/SM,更靠近计算单元[43] - 第五代MMA指令完全脱离寄存器,操作数驻留共享内存/TMEM[46] - 支持CTA对级MMA(MMA.2SM),两个SM协作执行[45][49] - 引入MXFP8/6/4和NVFP4等微缩放浮点格式[51][52] 架构演进趋势 - Tensor Core规模扩展速度远超数量增加,MMA形状从Volta的8x8x4扩大到Blackwell的256x256x16[59][60] - 共享内存容量持续增加(Volta 96KB→Blackwell 228KB/SM),寄存器文件保持256KB[64][65] - 操作数存储位置从寄存器逐步转向共享内存/TMEM,提升数据局部性[67] - MMA指令从同步逐步转向异步执行,提高流水线效率[69][71] - 数据类型持续向低精度发展,从FP16到4位格式,同时缩减高精度支持[73][74] 结构化稀疏性 - Ampere引入2:4稀疏模式(每4元素含2零),理论可双倍提升吞吐量[54] - Blackwell为NVFP4引入4:8成对稀疏模式,要求更严格[57] - 实际应用中因剪枝难度和优化不足,稀疏性优势未充分体现[55]