GPU计算单元与线程调度入门
📚 共计 30 章节
第1章
GPU的前世今生:从图形卡到通用计算巨人
从图形渲染到科学计算,GPU的进化之路
历史
架构
第2章
GPU架构核心:流式多处理器(SM)的内部世界
SM构成、调度与指令分发
核心
SM
第3章
CUDA核心与Tensor Core:计算单元的家族图谱
不同计算单元的分工与矩阵加速
CUDA
Tensor
第4章
线程的诞生:从Grid到Block再到Thread的层级结构
线程层次与索引映射
线程
层级
第5章
线程束(Warp):GPU调度的最小原子单位
Warp形成、调度与发散
Warp
调度
第6章
SIMT执行模型:单指令多线程的魔法
SIMT vs SIMD,线程掩码
SIMT
执行
第7章
线程调度器:如何让数千个核心忙起来
调度策略、占用率与延迟隐藏
调度
性能
第8章
分支发散:当线程走不同的路时会发生什么
分支预测与性能惩罚
分支
发散
第9章
共享内存:线程间的快速通信通道
Bank冲突、分配与同步
共享内存
优化
第10章
同步机制:__syncthreads()的妙用与陷阱
块内同步、死锁与内存可见性
同步
屏障
第11章
全局内存访问模式:合并访问的艺术
对齐、连续与广播
内存
带宽
第12章
常量内存与纹理内存:只读数据的优化存储
缓存特性与适用场景
常量
纹理
第13章
寄存器压力:每个线程的私有金库
寄存器分配、溢出与占用率
寄存器
优化
第14章
本地内存:当寄存器不够用时的备胎
本地内存与全局内存的关系
本地内存
溢出
第15章
内存层级全景图:从片内到片外的速度阶梯
寄存器、共享、全局、常量、纹理
层级
延迟
第16章
Occupancy:如何填满SM的计算槽位
占用率计算与资源权衡
占用率
SM
第17章
Launch Bounds:限制线程数以提升性能
__launch_bounds__ 与 maxThreadsPerBlock
限制
调优
第18章
动态并行:GPU自己启动自己的递归能力
嵌套内核与递归
动态
并行
第19章
流(Stream):任务并行的流水线技术
多流并发与依赖
流
并发
第20章
事件(Event):精确测量GPU时间的工具
cudaEvent 时间戳与同步
事件
性能
第21章
异步操作与回调:CPU与GPU的协作舞步
异步拷贝、回调函数
异步
回调
第22章
MPS(多进程服务):多进程共享GPU的解决方案
MPS 架构与隔离
MPS
多进程
第23章
MIG(多实例GPU):A100/H100的硬件分区技术
MIG 分区与资源隔离
MIG
分区
第24章
Warp Shuffle:寄存器级别的数据交换
shfl 指令与归约
Shuffle
寄存器
第25章
矩阵乘法优化:从朴素到极致
tiling、共享内存、向量化
矩阵
优化
第26章
归约(Reduction)算法:并行求和的艺术
树形归约、warp归约
归约
并行
第27章
直方图计算:原子操作的实战应用
原子加、共享内存直方图
原子
直方图
第28章
稀疏计算:处理零值的高效策略
稀疏矩阵、结构化稀疏
稀疏
优化
第29章
图并行:GNN在GPU上的加速实现
图神经网络、消息传递
GNN
图
第30章
GPU性能调优工具:NVIDIA Nsight与Profiler实战
Nsight Systems、Nsight Compute
工具
调优