01
CUDA编程模型概述
GPU架构演进 · CUDA编程模型 · 主机与设备 · 核函数概念
基础入门
02
线程层次结构
Grid/Block/Thread · 线程索引计算 · 线程束Warp
核心线程模型
03
内存层次结构
全局/共享/寄存器/本地/常量/纹理内存
存储优化
04
核函数启动配置
<<<grid, block>>> · 动态并行 · 启动参数优化
配置性能
05
流与并发执行
CUDA流 · 默认/非默认流 · 流同步 · 流回调
并发异步
06
事件与计时
事件创建/销毁 · 记录与同步 · 精确计时技巧
调试性能
07
任务依赖与图执行
CUDA Graphs · 图创建/实例化 · 图执行与更新
高级调度
08
动态并行
设备端核函数启动 · 嵌套并行 · 递归核函数
动态递归
09
Occupancy优化
占用率计算 · 寄存器/共享内存影响 · launch_bounds
调优占用率
10
Warp级原语
__shfl系列 · Warp Vote · Warp Match指令
SIMTWarp
11
协作组 (Cooperative Groups)
线程块/网格/集群组 · 同步与通信
协作同步
12
异步操作与回调
异步内存拷贝 · 异步核函数 · CUDA回调函数
异步回调
13
MPS (多进程服务)
MPS架构 · 配置与使用 · 性能调优
多进程MPS
14
MIG (多实例GPU)
MIG概念 · 配置 · 任务隔离
隔离MIG
15
CUDA运行时API
cuInit · cuDeviceGet · cuCtxCreate 等核心API
API运行时
16
驱动API vs 运行时API
两者区别 · 混合使用 · 性能对比
驱动对比
17
CUDA上下文管理
上下文创建/销毁 · 切换开销 · cuCtxPushCurrent
上下文切换
18
统一内存 (UM)
统一内存概念 · 页面迁移 · UM性能优化
UM迁移
19
CUDA IPC
进程间通信 · 共享内存句柄 · 多GPU协作
IPC进程
20
NCCL基础
NCCL通信原语 · AllReduce/Broadcast/AllGather
NCCL集合通信
21
NCCL高级
组操作 · 与CUDA流集成 · 性能调优
NCCL高级
22
CUDA与多线程
CPU多线程+CUDA · 线程安全 · 每线程独立流
多线程并发
23
任务队列与调度器
自定义任务队列 · 工作窃取 · 负载均衡
调度队列
24
CUDA与MPI混合编程
MPI+CUDA · GPU Direct RDMA · 点对点通信
MPI分布式
25
CUDA与OpenMP混合
OpenMP卸载到GPU · target region · 数据映射
OpenMP卸载
26
CUDA与std::async
异步任务启动 · future/promise · GPU任务封装
C++异步
27
CUDA任务调度框架设计
任务图构建 · 拓扑排序 · 依赖解析
框架设计
28
性能剖析工具
Nsight Systems · Nsight Compute · 瓶颈定位
工具剖析
29
常见调度陷阱
死锁 · 竞态条件 · 内存泄漏 · 过度同步
陷阱调试
30
实战案例
大规模矩阵乘法 · 多GPU流水线 · 动态任务分发
实战综合