一场横跨二十年的架构革命,如何重塑了计算的边界
一、序章:理解演进的三条主线
在深入技术细节之前,我们需要把握GPU发展的三条核心主线。这三条线索相互交织,共同塑造了今天的GPU生态:
1.1 范式转变:从专用到通用
最根本的问题:GPU是如何从"只能画三角形"的专用硬件,进化成"什么都能算"的通用平台?
这不是简单的"加功能",而是一场架构哲学的革命。固定功能管线被可编程着色器取代,图形专用单元被统一计算核心吞并,封闭的硬件接口演变为开放的编程平台。每一步都在回答同一个问题:如何在保持效率的同时获得灵活性?
1.2 内存墙:永恒的瓶颈
计算的速度总是快于数据的移动速度。这个矛盾贯穿GPU发展史:
- 2008年Tesla时代:片外GDDR带宽成为天花板
- 2010年Fermi时代:引入缓存层次缓解压力
- 2016年Pascal时代:HBM2堆叠内存突破带宽墙
- 2020年至今:NVLink构建GPU间直连网络
每一代架构都在与内存墙搏斗,而解决方案从未停止演进。
1.3 市场分化:游戏与AI的分岔路
2017年Volta引入Tensor Core标志着转折点:GPU不再追求"一个架构通吃",而是开始针对工作负载专业化。
- 游戏路线:Ada Lovelace强化光追、DLSS等图形特性
- AI路线:Hopper专注Transformer加速、稀疏计算
- 底层逻辑:不同市场对"什么是效率"有完全不同的定义
这三条主线不是独立的,而是相互纠缠的:通用化创造了新市场,内存瓶颈推动架构创新,市场分化又反向塑造技术路线。理解这些深层逻辑,才能真正看懂每一代架构的设计抉择。
二、起点:统一架构的诞生(2008-2010)
2.1 Tesla:一切开始的地方
> 问题的源头:固定管线的困境
2008年之前,GPU是这样工作的:
顶点处理器(固定) → 几何处理器(固定) → 像素处理器(固定)
     ↓                    ↓                    ↓
  只能变换顶点        只能处理几何        只能着色像素
这种设计有致命缺陷:资源利用率极低。当游戏场景复杂时,几何处理器满负荷而像素处理器闲置;当特效密集时,情况正好相反。硬件资源被浪费,却无法调配。
> Tesla的突破:统一着色器架构
核心理念:所有处理单元都是相同的可编程核心,可以执行顶点、几何、像素任意类型的任务。
         调度器
           ↓
    统一计算核心阵列
    [核心][核心][核心]...
      ↓      ↓      ↓
   可以是顶点/几何/像素/通用计算
技术实现的关键:
- 标量处理器设计:每个CUDA核心是独立的标量ALU
- SIMT执行模型:32个线程组成warp,以lockstep方式执行
- 硬件线程调度器:在数百个线程间快速切换,隐藏延迟
这个设计看似简单,实则深刻:放弃专用性换取灵活性,用大量并行性换取单核效率。这是GPU走向通用计算的奠基石。
2.2 Fermi:走向专业计算
> 突破点:ECC与双精度
Tesla证明了统一架构的可行性,但要真正进入HPC领域,还差两个关键能力:
1. ECC内存保护
- 科学计算不能容忍位翻转错误
- Fermi引入硬件ECC,每64位数据用8位校验
- 代价:有效带宽损失12.5%,但可靠性提升
2. 双精度浮点性能
- Tesla的FP64性能仅为FP32的1/8
- Fermi将比例提升到1/2,真正满足科学计算需求
- 物理实现:每个SM包含16个FP64单元
> 缓存革命:引入存储层次
更深刻的改变是缓存系统的引入:
寄存器(每线程)
    ↓
L1 Cache(每SM, 可配置16KB/48KB)
    ↓
L2 Cache(全局共享, 768KB)
    ↓
GDDR5 全局内存
为什么这很重要?
- GPU的并行性依赖高延迟隐藏能力
- 缓存减少对全局内存的依赖,降低延迟
- 但引入缓存也带来一致性开销和复杂度
这是GPU第一次真正借鉴CPU的存储层次思想,标志着从"纯吞吐量机器"向"吞吐量+延迟平衡"的转变。
三、优化时代:能效的觉醒(2012-2014)
3.1 Kepler:性能功耗比的突破
> 时代背景:功耗墙降临
进入28nm时代,一个残酷的现实显现:晶体管继续缩小,但功耗密度不再显著改善。继续堆核心数量会让芯片过热。
Kepler的设计哲学转变:不再追求绝对性能,而是优化每瓦性能。
> SMX:重构的流多处理器
相比Fermi的16组CUDA核心,Kepler的SMX有192个CUDA核心但设计更简化:
关键改变:
- 单指令调度器驱动多个执行单元(更高效)
- 简化的控制逻辑(更低功耗)
- 更大的寄存器文件(支持更多并发线程)
核心思想:用更多的并行性换取单个执行单元的简化。这是GPU架构的一贯思路:宁可1000个简单核心,不要100个复杂核心。
> 动态并行:编程模型的扩展
Kepler引入的Dynamic Parallelism允许GPU内核直接启动子内核,无需返回CPU。
意义:
- 减少CPU-GPU通信开销
- 支持递归算法(树遍历、图搜索等)
- 让GPU更像独立计算设备而非协处理器
这标志着GPU从"被动的加速器"向"主动的计算节点"演进。
3.2 Maxwell:能效革命
> 设计哲学:效率第一
Maxwell时代,NVIDIA面临移动市场的挑战:如何在15W功耗预算内提供可用的游戏性能?
解决方案:彻底重构SM设计,引入128核心分块架构:
SMM (Maxwell的SM)
  ↓
4个Processing Block(每个32核心)
  ↓
每个Block有独立的:
- 指令缓存
- warp调度器  
- 寄存器文件
为什么这样更高效?
- 更小的调度单元减少控制逻辑复杂度
- 局部化的寄存器访问降低功耗
- 更细粒度的时钟门控(闲置单元完全断电)
结果:相比Kepler,Maxwell在相同性能下功耗降低约40%。这是GPU历史上最成功的能效优化。
> 深层启示:架构的"呼吸"
Maxwell教会我们:效率不仅来自工艺,更来自架构的精细化。
通过将大块SM分解为多个小Processing Block,架构获得了"呼吸"的能力:
- 轻载时关闭大部分单元
- 重载时全部激活
- 动态适应工作负载的波动
这种思想后来被Intel的大小核、Apple的CPU设计广泛采用。
四、技术飞跃:内存与互连(2016)
4.1 Pascal:突破内存墙
> HBM2:立体堆叠的革命
2016年,GPU遇到一个严重瓶颈:芯片的计算能力增长远快于内存带宽。
传统GDDR内存的问题:
- 带宽受限于PCB走线长度和信号完整性
- 功耗随频率平方增长
- 物理上无法继续提升
HBM2的突破:
     GPU Die
        ↓
    硅中介层(Interposer)
        ↓
  [HBM][HBM][HBM][HBM]
   堆栈 堆栈 堆栈 堆栈
技术优势:
- 通过硅通孔(TSV)实现超短互连距离
- 带宽提升到720GB/s(GP100),是GDDR5的3倍
- 功耗显著降低(更低电压、更短走线)
代价:
- 制造复杂度和成本大幅提升
- 良率挑战(整个堆栈中任何一层有缺陷都报废)
- 仅用于高端产品线
> NVLink:GPU间的直接对话
另一个瓶颈:多GPU系统受制于PCIe带宽。
NVLink的设计目标:让GPU之间像内存访问一样直接通信。
技术特性:
- 带宽160GB/s(单向),是PCIe 3.0的5倍
- 支持缓存一致性协议
- 可以直接访问对方的显存
深层意义:这不是简单的"更快的连接",而是重新定义了多GPU系统的编程模型。开发者可以把多个GPU当作一个大GPU来用。
4.2 统一内存:编程的简化
Pascal引入的Unified Memory允许CPU和GPU共享虚拟地址空间:
传统模型:
CPU内存 ←→ 显式拷贝 ←→ GPU内存
(程序员手动管理)
统一内存:
  共享虚拟地址空间
       ↓
  硬件自动迁移数据
  (页面错误触发)
价值:
- 降低编程复杂度(不需要显式内存管理)
- 支持超大数据集(超过显存容量)
- 但引入页面迁移开销
这是易用性与性能的权衡:对性能敏感的应用仍会手动管理内存,但大部分应用受益于简化的编程模型。
五、AI转折:专用硬件的崛起(2017-2020)
5.1 Volta:深度学习的专用武器
> 时代背景:深度学习的爆发
2017年,一个现实变得清晰:深度学习已成为GPU最重要的工作负载,而传统FP32计算对此并非最优。
深度学习的特殊性:
- 可以容忍较低精度(FP16甚至INT8)
- 核心操作是矩阵乘法(占90%计算量)
- 对吞吐量极度敏感,对单次计算延迟不敏感
> Tensor Core:混合精度矩阵引擎
Volta引入Tensor Core,一种专门用于矩阵乘累加的硬件单元:
计算方式:
D = A × B + C
其中:
- A, B 是FP16矩阵(输入)
- C, D 是FP32矩阵(累加器和输出)
- 单个指令完成4×4×4的矩阵乘法
性能对比:
- 一个Tensor Core在一个时钟周期内完成64次FP16乘加
- 相当于64个传统CUDA核心的工作
- GV100有640个Tensor Core = 相当于40,960个CUDA核心的矩阵计算能力
深层意义:这不是"加速",而是改变了计算的颗粒度。从标量运算到矩阵运算,抽象层次提升,效率指数级增长。
> 独立线程调度:灵活性回归
相比之前的"warp中所有线程lockstep执行",Volta引入独立线程调度:
改进:
- 每个线程有独立的程序计数器
- 支持更细粒度的分支和同步
- 允许warp内不同执行路径
权衡:
- 提升编程灵活性
- 但增加硬件复杂度和面积
- 对性能的影响取决于算法特性
5.2 Turing:图形与AI的融合
> RT Core:实时光追的梦想
2018年,Turing做了一件被认为不可能的事:消费级GPU实时光线追踪。
技术实现:
RT Core的两个核心功能:
1. BVH遍历加速
   - 硬件加速边界体积层次结构遍历
   - 相比软件实现快10倍
   
2. 光线-三角形相交测试  
   - 硬件加速几何求交
   - 单周期完成
为什么这改变了游戏?
- 传统光栅化:计算"从相机看到什么"
- 光线追踪:计算"光如何传播",物理正确
- RT Core让光追从"离线渲染"进入"实时游戏"
> 第二代Tensor Core:推理加速
Turing的Tensor Core增加INT8和INT4支持:
意义:
- 训练用FP16,推理可以用INT8(4倍效率提升)
- 推动AI从"数据中心"走向"边缘设备"
- 为实时AI应用铺平道路(DLSS就是典型应用)
DLSS的本质:用低分辨率渲染 + AI超分辨率,换取性能提升。这是硬件加速AI与图形渲染的完美结合。
5.3 Ampere:规模化的AI
> 第三代Tensor Core:稀疏性革命
Ampere引入结构化稀疏性支持:
核心思想:深度学习模型中大量权重接近0,可以被剪枝。
硬件支持:
- 要求2:4稀疏性(每4个元素中2个为0)
- 硬件自动跳过0值计算
- 性能提升2倍(理论上)
为什么是2:4而非随机稀疏?
- 随机稀疏的索引开销巨大
- 2:4结构化稀疏可以高效硬件实现
- 研究表明2:4稀疏对精度影响很小
BF16的引入:
- Brain Float 16:1符号位+8指数位+7尾数位
- 相比FP16,指数范围与FP32相同(但精度更低)
- 更适合深度学习(对数值范围敏感,对尾数精度不敏感)
> MIG:GPU的虚拟化
Multi-Instance GPU允许将一个物理GPU分割为最多7个独立实例:
技术实现:
- 硬件级资源隔离(SM、内存、缓存)
- 每个实例有独立的故障域
- 类似CPU的虚拟化技术,但在GPU上实现
应用场景:
- 云服务商可以将一个A100分割给多个用户
- 提升数据中心的资源利用率
- 满足小型推理任务的需求
深层意义:GPU从"单租户设备"向"多租户资源"演进,这是云原生化的关键。
六、分化时代:专业化的深入(2022-2024)
6.1 双架构策略:Ada与Hopper
> 为什么需要两套架构?
到2022年,一个事实变得清晰:游戏和AI对"好的GPU"的定义完全不同。
游戏的需求:
- 光栅化+光追混合渲染
- 实时性(60fps,延迟<16ms)
- 图形专用单元(ROP、纹理单元)
- 功耗敏感(消费级TDP 300-450W)
AI训练的需求:
- 大规模矩阵运算
- 高吞吐量(延迟不敏感)
- 巨大的内存带宽
- 功耗可达700W(数据中心环境)
NVIDIA的选择:让架构分岔,各自优化。
6.2 Ada Lovelace:游戏的极致
> 第三代RT Core:光追性能倍增
两个关键创新:
- 
不透明度微映射(Opacity Micromaps) - 预计算几何体的透明度信息
- 避免重复的光线-几何求交测试
- 对树叶、铁丝网等半透明物体加速显著
 
- 
位移微映射(Displacement Micromaps) - 直接在光线求交阶段计算几何细节
- 无需生成实际几何体
- 大幅减少内存占用
 
> DLSS 3:帧生成技术
突破点:不仅放大分辨率,还能生成中间帧。
技术原理:
原始: 帧1 → 帧2 (30fps)
         ↓
DLSS3: 帧1 → AI生成帧1.5 → 帧2 (60fps)
为什么这能work?
- Optical Flow技术捕捉运动矢量
- Tensor Core实时推理
- 在游戏循环中插入帧
争议:生成的帧不响应玩家输入,是否算"真正的帧率提升"?
6.3 Hopper:AI的巅峰
> Transformer引擎:软硬件深度协同
问题:Transformer模型的注意力机制计算复杂度是O(n²),随序列长度平方增长。
Hopper的方案:
- 
FP8精度支持 - E4M3和E5M2两种格式
- 相比FP16,吞吐量提升2倍
- 但需要仔细的量化策略
 
- 
软件协同: - 自动在FP8和FP16间切换
- 敏感层用高精度,其余用低精度
- 动态量化scale调整
 
本质:硬件提供能力,软件决策策略,两者深度耦合。
> 第四代Tensor Core:稀疏性2.0
相比Ampere的2:4稀疏性,Hopper进一步:
- 支持更灵活的稀疏模式
- 硬件自动检测稀疏度
- 对不规则稀疏也有加速(虽然不如结构化)
配合DPX指令:
- 动态规划加速
- 用于序列比对等算法
- 这是GPU走向通用计算的又一步
七、现在与未来:Blackwell及之后(2024-2026)
7.1 Blackwell:多芯片的突破
> 为什么需要MCM(Multi-Chip Module)?
摩尔定律的终结:
- 先进工艺成本指数级增长
- 良率随芯片面积下降
- 单片SoC的极限约800mm²
解决方案:将一个大芯片拆成多个小芯片,通过高速互连组合。
> Blackwell的技术实现
两个GPU Die通过NVLink-C2C互连:
   GPU Die 0      NVLink-C2C     GPU Die 1
  [SM][SM][SM] ←→ 10TB/s ←→ [SM][SM][SM]
       ↓                           ↓
    HBM3e                        HBM3e
关键技术挑战:
- 
缓存一致性: - 两个Die的L2如何保持一致?
- 延迟和带宽的权衡
 
- 
负载均衡: - 如何让两个Die的利用率接近?
- 编程模型的透明性
 
- 
功耗管理: - 总功耗可达1200W
- 如何散热和供电?
 
> FP4精度:极限量化
Blackwell支持4位浮点(1符号+2指数+1尾数):
意义:
- 相比FP8,吞吐量再提升2倍
- 专为大模型推理设计
- 对训练不适用(精度不足)
技术难点:
- 极端量化的数值稳定性
- 需要非常精细的校准
- 软件栈的成熟度
7.2 长期展望:架构的边界
> 计算范式的转变
从Tesla到Blackwell,我们见证了三次范式转变:
- 2008-2016:从图形到通用计算(CUDA革命)
- 2017-2022:从通用到专用(Tensor Core崛起)
- 2024+:从单片到多芯片(MCM时代)
下一次转变可能是什么?
> 物理极限的挑战
功耗墙:
- 1000W+的芯片已接近散热极限
- 液冷成为必需,但成本高昂
- 是否会出现"功耗破产"?
内存墙2.0:
- HBM3e带宽约5TB/s
- 但计算能力还在增长
- 下一步是什么?片上内存?3D堆叠计算?
互连墙:
- 数据在芯片间移动的能耗远大于计算
- NVLink已达物理极限
- 光互连是答案吗?
> 技术探索的方向
1. 近存计算(Processing-In-Memory)
- 将计算单元集成进内存
- 减少数据搬运
- GDDR6W、HBM-PIM的探索
2. 模拟计算
- 利用物理定律直接求解
- 对特定问题(优化、模拟)效率极高
- 但通用性差
3. 量子-经典混合
- 量子计算处理特定子问题
- GPU处理其余部分
- 但量子计算离实用还很远
八、核心洞察:技术演进的哲学
回顾GPU二十年的演进,我们可以提炼出几个深层洞察:
8.1 效率的多面性
不存在绝对的"高效",只有针对特定工作负载的效率:
- 游戏需要光追效率
- AI训练需要矩阵乘法效率
- 科学计算需要双精度效率
架构选择的本质:在多个维度的效率间权衡,而权衡由市场决定。
8.2 抽象层次的跃迁
每次重大突破都伴随抽象层次提升:
- 统一着色器:从固定功能到可编程
- CUDA:从图形API到通用编程
- Tensor Core:从标量到矩阵运算
- Transformer引擎:从硬件到软硬件协同
规律:提升抽象不是为了简化,而是为了在更高层次优化。
8.3 通用与专用的循环
GPU的历史是一个螺旋:
专用(固定管线) 
   ↓
通用(统一架构) 
   ↓  
专用(Tensor Core)
   ↓
通用(CUDA生态) 
   ↓
专用(Transformer引擎)
   ↓
...
每次"专用化"都建立在更高层次的"通用化"基础上。不是回到起点,而是螺旋上升。
8.4 内存决定一切
从始至终,内存系统是核心瓶颈:
- 计算便宜,数据移动昂贵
- 带宽比容量更关键
- 层次结构比单纯速度更重要
未来的架构创新,本质上都是如何更好地组织和移动数据。
8.5 生态系统的力量
CUDA的成功不仅是技术,更是生态:
- 开发者工具链的完善
- 大量优化库(cuBLAS、cuDNN等)
- 教育体系和社区
- 与主流框架的深度集成
技术壁垒易复制,生态壁垒难撼动。这解释了为什么AMD、Intel难以挑战NVIDIA的AI霸主地位。
九、结语:理解演进的意义
这篇长文梳理了GPU架构的演进历程,但技术细节不是目的。真正重要的是理解"为什么是这样演进":
- 市场需求塑造技术路线:游戏驱动图形创新,AI驱动计算革新
- 物理约束推动架构创新:功耗墙、内存墙迫使设计者不断突破
- 工程权衡无处不在:性能、功耗、成本、易用性永远在平衡
- 抽象层次不断提升:从画三角形到训练千亿参数模型,本质是抽象的胜利
对于技术人员:理解这些演进逻辑,才能在面对新技术时快速抓住本质,判断哪些是真正的创新,哪些是营销包装。
对于学习者:不要被术语和参数淹没。抓住技术演进的"为什么",比记住"是什么"重要一百倍。
对于思考者:技术的历史不是线性的进步,而是螺旋式的辩证发展。每一次"专用化"都建立在"通用化"的基础上,每一次"简化"都隐藏着新的复杂性。
2025年的我们站在Blackwell时代的起点。回看2008的Tesla,再看今天的H100,计算能力提升超过1000倍。但这不是终点,而是下一个十年的起点。
GPU的故事还在继续。下一个突破在哪里?也许是量子计算的混合架构,也许是光子互连的革命,也许是我们现在完全想象不到的范式。
但无论如何,理解过去,是为了更好地面对未来。
 
                   
                   
                   
                   
                             
                     
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
                     
              
             
                   57
					57
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
					 
					 
					


 
            