🚀 CUDA流 & 并发内核
📘 30章 · 从基础到综合实战
⭐ 流式并发
⚡ Hyper-Q
🧩 多流优化
01
CUDA流基础
默认流
CUDA流的概念、默认流与创建显式流、流的同步机制。
02
并发内核执行
多流
使用多个流实现内核并发、网格级并发与流级并发。
03
流调度与硬件
Hyper-Q
GPU硬件队列与流调度、Hyper-Q技术详解。
04
流优先级
调度
创建具有不同优先级的流、优先级对调度的影响。
05
流回调
cudaStreamAddCallback
使用cudaStreamAddCallback、回调函数的执行时机与注意事项。
06
事件与流
同步
事件的基本使用、事件同步流、事件测量内核执行时间。
07
流间依赖
生产者-消费者
使用事件建立流间依赖关系、实现生产者-消费者模式。
08
MPS与流
多进程
多进程服务(MPS)下的流行为、MPS与多流并发。
09
动态并行与流
子网格
在动态并行中使用流、子网格与流的交互。
10
流与内存操作
cudaMemcpyAsync
异步内存复制(cudaMemcpyAsync)、固定内存(pinned memory)的重要性。
11
流与零拷贝
零拷贝
使用零拷贝内存实现流式数据传输、适用场景与性能分析。
12
流与统一内存
按需迁移
统一内存的流式访问、按需迁移与预取。
13
流与纹理内存
纹理对象
在流中使用纹理对象、纹理缓存的流式管理。
14
多GPU与流
点对点
多GPU环境下的流管理、点对点访问与流。
15
流与CUDA图
图捕获
将流操作捕获为CUDA图、图的实例化与重放。
16
流与CUDA图高级
动态图
动态图、更新图、图与流的混合使用。
17
流与库函数
cuBLAS/cuFFT
在cuBLAS/cuFFT中使用流、库函数的异步执行。
18
流与NCCL
多节点
NCCL通信与流的集成、多节点通信中的流管理。
19
流调试工具
Nsight Systems
Nsight Systems分析流行为、可视化流时间线。
20
流性能优化
重叠
重叠计算与数据传输、最大化硬件利用率。
21
流与MIG
多实例GPU
多实例GPU(MIG)下的流隔离、MIG与并发内核。
22
流与持久线程
持久线程
持久线程模型中的流使用、与常规流的对比。
23
流与运行时API
错误处理
运行时API的流相关函数详解、错误处理。
24
流与驱动API
互操作
驱动API中的流管理、与运行时API的互操作性。
25
流与内核启动配置
占用率
网格/块维度对流并发的影响、占用率优化。
26
流与设备内存分配
cudaMallocAsync
异步内存分配(cudaMallocAsync)、流序内存分配。
27
流与CUDA虚拟内存
细粒度
虚拟内存映射与流、细粒度内存控制。
28
流与CUDA IPC
进程间
进程间通信中的流共享、跨进程同步。
29
流与CUDA Graphs高级
可更新图
独立图与可更新图、图执行的流绑定。
30
综合实战
图像处理流水线
构建多流并发图像处理流水线、性能调优与最佳实践总结。