昇腾社区首页
中文
注册

c10d_npu::ProcessGroupHCCL::batch_isend_irecv

产品支持情况

产品 是否支持
[object Object] Atlas A3 训练系列产品[object Object]
[object Object] Atlas A2 训练系列产品[object Object]

功能说明

发送或接收一批tensor,异步处理P2P操作序列中的每一个操作,并返回对应的请求。

定义文件

torch_npu\csrc\distributed\ProcessGroupHCCL.hpp

函数原型

[object Object]

参数说明

  • op_type (std::vector<std::string>&):必选参数,表示操作序列,isend或irecv。
  • tensors (std::vector<at::Tensor>&):必选参数,表示用于发送或接收的tensor本身,数量与op_type保持一致。
  • remote_rank_list (std::vector<uint32_t>):必选参数,表示对端的rank id, 这里指全局的rank id,数量与op_type保持一致。

返回值说明

c10::intrusive_ptr<c10d::Work>

表示所有的isend和irecv任务,因为是异步操作的,所以将work返回,当进行tensor读取时,需要先执行work.wait(),保证batch_isend_irecv完成。

约束说明