HcclAllReduce

函数原型

HcclResult HcclAllReduce(void *sendBuf, void *recvBuf, uint64_t count, HcclDataType dataType, HcclReduceOp op, HcclComm comm, aclrtStream stream);

功能说明

集合通信域all-reduce操作接口,将所有rank的sendBuf相加(或其他操作)后,再把结果发送到所有rank的recvBuf。

参数说明

参数名

输入/输出

描述

sendBuf

输入

源数据buffer地址。

recvBuf

输出

目的数据buffer地址,集合通信结果输出至此buffer中。

count

输入

参与allreduce操作的数据个数,比如只有一个int32数据参与,则count=1。

dataType

输入

allreduce操作的数据类型,目前支持int8/int32/fp16/fp32等数据类型。

op

输入

reduce的操作类型,目前支持sum/prod/max/min等操作类型。

comm

输入

集合通信操作所在的通信域。

stream

输入

本rank所使用的stream。

返回值

HcclResult:接口成功返回HCCL_SUCCESS。其他失败。

约束说明

1. 所有rank的count、dataType、op均应相同。