🚀 NVSHMEM 设备端实战
CUDA内核 · 30章 从入门到分布式
🧑🏫
风格 · 明快易学
📚
点击卡片跳转对应章节
→
共 30 章 · 完整目录
01
NVSHMEM概述
通信模型与场景
对称内存
PE概念
多GPU
02
环境搭建与编译
安装·nvcc·链接
nvshmem库
版本检查
03
初始化与终止
init/finalize
PE数量
对称内存分配
04
设备端点对点
put/get 阻塞与非阻塞
CUDA内核
语义
05
集合通信(上)
barrier·sync
同步机制
性能陷阱
06
集合通信(下)
broadcast·reduce
collect
求和/积
07
设备端原子操作
fetch_add·CAS
锁-free
原子语义
08
对称内存管理
free·realloc
生命周期
cudaMalloc对比
09
设备端信号量
signal·wait
信号同步
模式
10
P2P+信号量
生产者-消费者
多GPU流水线
实战
11
NVSHMEM与CUDA流
stream_put
流同步
多流并发
12
设备端内存屏障
quiet·fence
内存序
可见性
13
Team概念
创建与销毁
team_t
集合操作
14
设备端Team通信
广播·归约
子集群
典型用例
15
共享内存窗口
init_attr·窗口
对称内存关系
16
动态对称内存
malloc_managed
统一内存
混合使用
17
NVSHMEM与CUDA事件
event_record
事件驱动
同步
18
非阻塞通信深入
put_nbi·get_nbi
完成状态
检查
19
Profiling与调试
Nsight Systems
profiling_start
调试技巧
20
设备端错误处理
error_check
错误码
异常恢复
21
多节点集群
InfiniBand·NVLink
ROCE
跨节点
22
Alltoall通信
全交换模式
性能优化
alltoall
23
Fcollect操作
向量化收集
Allgather区别
24
锁机制
lock·unlock
分布式锁
实现
25
Wait操作
wait_until
条件等待
超时
26
NVSHMEM与CUDA图
graph_put
图捕获
重放
27
设备端内存注册
register·deregister
RDMA
注册内存
28
扩展API
put_on_stream
自定义流绑定
29
实战:多GPU矩阵乘法
分布式分块
性能对比
分块策略
30
实战:分布式Stencil
3D halo交换
多GPU扩展性
优化