库句柄¶
NVSHMEM 库提供了一组预定义的命名常量句柄。所有命名常量都可以在初始化表达式或赋值中使用,但不一定可以在数组声明中或作为 C switch 语句中的标签使用。这意味着命名常量是链接时常量,但不一定是编译时常量。
-
NVSHMEM_TEAM_WORLD
¶
类型为 nvshmem_team_t
的句柄,对应于包含 NVSHMEM 程序中所有 PE 的世界团队。所有未指定团队的点对点通信操作和集合同步都在世界团队上执行。有关其用法的更多详细信息,请参见第 团队管理 节。
-
NVSHMEM_TEAM_SHARED
¶
类型为 nvshmem_team_t
的句柄,对应于共享内存域的 PE 团队。NVSHMEM_TEAM_SHARED
指的是所有 PE 的团队,这些 PE 会在对所有对称堆对象调用 nvshmem_ptr
时相互返回非空地址。也就是说,对于团队中所有目标 PE 上的所有对称堆对象,nvshmem_ptr
必须为本地 PE 返回一个非空指针。这意味着团队中所有 PE 都可以直接加载/存储访问每个 PE 上的对称堆对象。有关其用法的更多详细信息,请参见第 团队管理 节。
-
NVSHMEMX_TEAM_NODE
¶
类型为 nvshmem_team_t
的句柄,对应于包含与调用 PE 在同一节点中的所有 PE 的团队。在调用 nvshmem_team_my_pe
时使用此团队可能会提供适用于 cudaSetDevice
的索引。