NVIDIA OpenSHMEM 库 (NVSHMEM) 文档¶
NVSHMEM 实现了用于 NVIDIA ® GPU 集群的 OpenSHMEM 并行编程模型。 NVSHMEM 分区全局地址空间 (PGAS) 跨越 GPU 的内存,并包括一个 API,用于从 CUDA 内核、CUDA 流和 CPU 内部进行细粒度的 GPU-GPU 数据移动。
目录
- 简介
- 使用 NVSHMEM
- NVSHMEM 和 CUDA 模型
- 内存模型
- 执行模型
- 库常量
- 库句柄
- 环境变量
- NVSHMEM API
- API 概述
- 库设置、退出和查询
- NVSHMEM_INIT
- NVSHMEMX_INIT_ATTR
- NVSHMEMX_HOSTLIB_INIT_ATTR
- NVSHMEMX_HOSTLIB_FINALIZE
- NVSHMEMX_GET_UNIQUE_ID
- NVSHMEMX_SET_ATTR_UNIQUEID_ARGS
- NVSHMEMX_CUMODULE_INIT
- NVSHMEMX_INIT_STATUS
- NVSHMEM_MY_PE
- NVSHMEM_N_PES
- NVSHMEM_FINALIZE
- NVSHMEM_GLOBAL_EXIT
- NVSHMEM_PTR
- NVSHMEMX_MC_PTR
- NVSHMEM_INFO_GET_VERSION
- NVSHMEM_INFO_GET_NAME
- NVSHMEMX_VENDOR_GET_VERSION_INFO
- 线程支持
- 内核启动例程
- 内存管理
- 团队管理
- 远程内存访问
- 原子内存操作
- NVSHMEM_ATOMIC_FETCH
- NVSHMEM_ATOMIC_SET
- NVSHMEM_ATOMIC_COMPARE_SWAP
- NVSHMEM_ATOMIC_SWAP
- NVSHMEM_ATOMIC_FETCH_INC
- NVSHMEM_ATOMIC_INC
- NVSHMEM_ATOMIC_FETCH_ADD
- NVSHMEM_ATOMIC_ADD
- NVSHMEM_ATOMIC_FETCH_AND
- NVSHMEM_ATOMIC_AND
- NVSHMEM_ATOMIC_FETCH_OR
- NVSHMEM_ATOMIC_OR
- NVSHMEM_ATOMIC_FETCH_XOR
- NVSHMEM_ATOMIC_XOR
- 信号操作
- 集体通信
- 点对点同步
- NVSHMEM_WAIT_UNTIL
- NVSHMEM_WAIT_UNTIL_ALL
- NVSHMEM_WAIT_UNTIL_ANY
- NVSHMEM_WAIT_UNTIL_SOME
- NVSHMEM_WAIT_UNTIL_ALL_VECTOR
- NVSHMEM_WAIT_UNTIL_ANY_VECTOR
- NVSHMEM_WAIT_UNTIL_SOME_VECTOR
- NVSHMEM_TEST
- NVSHMEM_TEST_ALL
- NVSHMEM_TEST_ANY
- NVSHMEM_TEST_SOME
- NVSHMEM_TEST_ALL_VECTOR
- NVSHMEM_TEST_ANY_VECTOR
- NVSHMEM_TEST_SOME_VECTOR
- NVSHMEM_SIGNAL_WAIT_UNTIL
- 内存排序
- 示例
- 故障排除和常见问题解答
- NVSHMEM SLA
- 致谢