GPU线程调度 · 30章

🎯 从零到架构
1 GPU的前世今生 从图形卡到通用计算 · 三个关键里程碑 2 理解并行计算 Flynn分类法 · 数据/任务并行 · GPU优势 3 GPU核心概念 CUDA核心 · SM · Warp 定义与关系 4 线程层次结构 Grid · Block · Thread 三层模型 & 硬件映射 5 Warp调度机制 Warp创建 · 调度器 · 状态机 6 SIMT执行模型 单指令多线程本质 · 与SIMD区别 · 分支发散 7 Warp发散与收敛 if-else发散 · 优化减少发散技巧 8 线程同步 __syncthreads() · Block内同步代价 · 死锁 9 共享内存 & Bank Conflict 共享内存架构 · Bank冲突产生与避免 10 全局内存访问模式 合并访问原则 · 对齐与步长 11 常量内存 & 纹理内存 广播机制 · 纹理缓存优化 12 寄存器压力 & Local Memory 寄存器溢出 · Local Memory隐藏代价 13 Occupancy (占用率) 定义 · 计算方式 · 高Occupancy一定好? 14 Launch Configuration Grid/Block尺寸选择 · 硬件限制 15 Stream & 并发执行 CUDA Stream概念 · 默认Stream · 多Stream并发 16 异步操作与回调 异步内存拷贝 · 回调函数 · Event使用 17 动态并行 (Dynamic Parallelism) GPU从kernel启动kernel · 原理与限制 18 Warp Shuffle指令 寄存器直接交换 · 替代共享内存场景 19 Tensor Core架构 Volta引入 · 混合精度 · 矩阵乘加速 20 内存层级全景图 寄存器 · L1/Shared · L2 · Global延迟/带宽 21 NVIDIA GPU架构演进 Fermi → Hopper 关键变化 22 AMD GPU架构 CDNA/RDNA · Wavefront(64线程) vs Warp 23 Intel GPU架构 Xe架构 · Xe-Core/Subslice · EU调度 24 GPU虚拟化 & MIG 多实例GPU硬件隔离 · vGPU调度挑战 25 CUDA Graph kernel启动图结构化 · 减少CPU开销 26 持久化线程 (Persistent Threads) 线程长期驻留SM · 动态任务分配 27 GPU功耗 & 频率调度 DVFS · TDP限制下的调度策略 28 调试GPU调度问题 NVIDIA Nsight · Occupancy分析 · Warp监控 29 GPU调度 vs CPU调度 线程切换代价 · 调度粒度 · 上下文保存 30 未来趋势 Chiplet · 光互连 · 存内计算对调度影响