Product |
Supported |
|---|---|
Atlas 350 Accelerator Card |
√ |
√ |
|
√ |
|
☓ |
|
√ |
|
☓ |
For
For the
Re-sorts the inputs of all ranks in the communicator by rank ID, combines the inputs, and sends the results to the outputs of all ranks.
Unlike AllGather, the AllGatherV operator allows different data sizes to be configured for the input of different ranks in the communicator.

For the AllGatherV operation, each rank receives a set of data that is resorted by rank ID, that is, AllGatherV outputs of all ranks are the same.
1 | HcclResult HcclAllGatherV(void *sendBuf, uint64_t sendCount, void *recvBuf, const void *recvCounts, const void *recvDispls, HcclDataType dataType, HcclComm comm, aclrtStream stream) |
Parameter |
Input/Output |
Description |
|---|---|---|
sendBuf |
Input |
Address of the send buffer. |
sendCount |
Input |
Size of sendBuf data involved in the AllGatherV operation. |
recvBuf |
Output |
Address of the buffer to receive collective communication results. The addresses configured for recvBuf and sendBuf must be different. |
recvCounts |
Output |
Size of data in recvBuf of each rank involved in the AllGatherV operation, which is an array of the uint64 type. The ith element of this array indicates the amount of data to be received from rank i. The data size must be the same as the value of sendCount of rank i. |
recvDispls |
Output |
Offset of data of each rank in recvBuf involved in the AllGatherV operation (unit: dataType), which is an array of the uint64 type. The ith element of this array indicates the start offset of the data received from rank i in recvBuf. |
dataType |
Input |
Data type of the AllGatherV operation, which is of the HcclDataType type. Atlas 350 Accelerator Card: The supported data types are int8, uint8, int16, uint16, int32, uint32, int64, uint64, float8-e5m2, float8-e4m3, float8-e8m0, hifloat8, float16, float32, float64, and bfp16. Atlas 300I Duo Inference Card: The supported data types are int8, uint8, int16, uint16, int32, uint32, int64, uint64, float16, float32, and float64. |
comm |
Input |
Communicator where the operation is performed. |
stream |
Input |
Stream of the rank. |
HcclResult: HCCL_SUCCESS on success, or else failure.