用户缓冲区注册
用户缓冲区注册是一个功能,它允许 MCCL 直接通过用户缓冲区发送/接收/操作数据,无需额外的内部复制(零复制)。它可以加速集体操作,并大大减少资源使用(例如#通道使用)。
内存分配器
MCCL 集体操作可以使用通过 MUSA 分配器(例如 musaMalloc)分配的缓冲区。
对于使用 VMM API 的分配器,分配器分配的缓冲区需要满足以下要求:
- 在支持的 GPU 上,分配缓冲区时需要使用共享标志
MU_MEM_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR,同时也要使用MU_MEM_HANDLE_TYPE_FABRIC。 - 缓冲区物理内存大小是 MUMEM 推荐粒度的倍数(即
muMemGetAllocationGranularity(..., MU_MEM_ALLOC_GRANULARITY_RECOMMENDED)) - 缓冲区虚拟头部地址至少与 MUMEM 推荐粒度对齐,大小是 MUMEM 推荐粒度的倍数。

