📡 多GPU集群通信 · NVSHMEM

🎒 风格 · 30章完整目录
📚 共30章 · 30个实验/专题 ⚡ 从单卡到集群 · PGAS与集合通信 NVSHMEM定位 核心概念
01
为什么需要多GPU?从单卡到集群的演进,课程目标与学习路径。
02
CUDA核心与SM、内存层次结构(Global/Shared/Register)、PCIe与NVLink互联。
03
单进程多线程(SPMD)、多进程多GPU、CUDA Stream与Event同步。
04
节点内(NVSwitch)与节点间(InfiniBand/RoCE)拓扑,胖树与Dragonfly结构。
05
AllReduce、AllGather、ReduceScatter、Broadcast的数学定义与实现。
06
分步拆解(Scatter-Reduce + AllGather),带宽最优性证明。
07
树形拓扑的优缺点,对比Ring算法。
08
通信库对比NCCL/MPI/GLOO
NCCL、MPI、GLOO的架构差异与适用场景,性能基准测试解读。
09
NCCL深入拓扑感知
NCCL Unique ID、Comm初始化、拓扑感知与NVLink/NVSwitch优化。
10
MPI for GPUCUDA-Aware
CUDA-Aware MPI、MPI_Init与GPU绑定、MPI_Allreduce的GPU实现。
11
CUDA Graph、Stream优先级、异步通信与Kernel Launch的流水线设计。
12
Bus带宽、算法带宽、强扩展与弱扩展、Amdahl定律在通信中的体现。
13
PCIe带宽瓶颈、NVLink带宽利用率、网络拥塞与Tail Latency。
14
什么是Partitioned Global Address Space (PGAS)?NVSHMEM在生态中的位置。
15
PE、Symmetric Heap、Put/Get操作、Fence与Quiet语义。
16
SPMD启动、PE间数据移动、同步原语(Barrier/Sync)。
17
API风格差异、适用场景(点对点vs集合)、延迟与带宽权衡。
18
NVSHMEM高级特性Atomic/Signal
Atomic操作、Signal操作、Team与Subgroup划分。
19
Stream-Ordered Put/Get、多Stream并发与依赖管理。
20
Symmetric Heap对齐、减少Fence开销、利用NVLink Direct Access。
21
NVIDIA DGX与HGX架构、NVSwitch配置、InfiniBand子网管理器设置。
22
RDMA、GPUDirect RDMA、GDRCopy、NVIDIA Magnum IO软件栈。
23
集合通信调优环境变量
NCCL环境变量(NCCL_ALGO、NCCL_PROTO、NCCL_NTHREADS)、NVSHMEM调优参数。
24
NCCL Debug日志、NVSHMEM错误码、网络丢包与超时处理。
25
GPT/BERT训练中的通信模式、3D并行(DP+TP+PP)与通信拓扑。
26
根据模型大小、集群规模、硬件拓扑选择NCCL/MPI/NVSHMEM。
27
NVLink-C2C、CXL互连、UEC(Ultra Ethernet Consortium)对通信的影响。
28
使用NCCL编写AllReduce程序,对比Ring与Tree算法性能。
29
使用NVSHMEM实现点对点流水线,测量Put/Get延迟与带宽。
30
关键概念回顾、常见误区、进阶学习资源推荐。

⚡ 点击目录卡片跳转至对应章节 · 30章完整覆盖