The following tables detail the algorithms supported by different product models for inter-server communication, as well as the communication operators compatible with each algorithm. Any item not listed in the tables indicates lack of support.
Collective Communication Operator |
Data Type |
Network Running Mode |
Operator Expansion Mode |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, float16, float32, and bfp16 |
|
AI_CPU/CCU_SCHED |
AllGather |
int8, int16, int32, int64, uint8, uint16, uint32, uint64, float16, float32, float64, bfp16, fp8-e5m2, fp8-e4m3, hif8, and fp8-e8m0 |
|
AI_CPU/CCU_SCHED |
AllReduce |
int8, int16, int32, float16, float32, and bfp16 |
|
AI_CPU/CCU_SCHED |
Broadcast |
int8, int16, int32, int64, uint8, uint16, uint32, uint64, float16, float32, float64, bf16, fp8-e5m2, fp8-e4m3, hif8, and fp8-e8m0 |
|
AI_CPU/CCU_SCHED |
Reduce |
int8, int16, int32, float16, float32, and bfp16 |
|
AI_CPU/CCU_SCHED |
Scatter |
int8, int16, int32, int64, uint8, uint16, uint32, uint64, float16, float32, float64, bf16, fp8-e5m2, fp8-e4m3, hif8, and fp8-e8m0 |
|
AI_CPU/CCU_SCHED |
Broadcast |
int8, int16, int32, int64, uint8, uint16, uint32, uint64, float16, float32, float64, bf16, fp8-e5m2, fp8-e4m3, hif8, and fp8-e8m0 |
|
AI_CPU/CCU_SCHED |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Reduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, int64 (supported only in single-operator mode), float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, int64 (supported only in single-operator mode), float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, int64 (supported only in single-operator mode), float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Reduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
Reduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
AllReduce |
int8, int16, int32, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
ReduceScatter |
int8, int16, int32, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AlltoAll |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The pairwise algorithm is automatically selected. |
AlltoAllV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The pairwise algorithm is automatically selected. |
AlltoAllVC |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The pairwise algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
AlltoAll |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AlltoAllV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AlltoAllVC |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
AlltoAllV |
int8, int16, int32, int64, float16, float32, and bfp16 |
Single-operator mode |
The pairwise algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Reduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or H-D_R algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
Reduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The H-D_R or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Collective Communication Operator |
Data Type |
Network Running Mode |
Handling Method for Unsupported Operators |
|---|---|---|---|
ReduceScatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGather |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllReduce |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Broadcast |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
ReduceScatterV |
int8, int16, int32, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
AllGatherV |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |
Scatter |
int8, int16, int32, int64, float16, float32, and bfp16 |
|
The NHR, H-D_R, or ring algorithm is automatically selected. |