Struct to specify sub-groups of replicas.
More...
#include <Collectives.hpp>
Struct to specify sub-groups of replicas.
Examples of derived sub-groups:
- IPU-link domain sub-rack:
type ==
CONSECUTIVE && replicaGroupSize == ipuLinkDomainSize/replica-size/N
@ CONSECUTIVE
Groups are consecutive in replica.
where N
is power of two and replicaGroupSize > 1
.
- Complete IPU-link domain / full rack:
type ==
CONSECUTIVE && replicaGroupSize == ipuLinkDomainSize/replica-size
- Using GW-links only:
type ==
ORTHOGONAL && replicaGroupSize == numberOfIpuLinkDomains
@ ORTHOGONAL
Groups are sliced orthogonal to the replica ordering.
◆ CommGroup()
gcl::CommGroup::CommGroup |
( |
const CommGroupType |
groupType, |
|
|
unsigned |
groupSize, |
|
|
unsigned |
replicaStride = 1 |
|
) |
| |
Construct CommGroup.
- Parameters
-
groupType | replica group type |
groupSize | replica group size |
replicaStride | replica group stride |
◆ operator<<
std::ostream & operator<< |
( |
std::ostream & |
os, |
|
|
const CommGroup & |
group |
|
) |
| |
|
friend |
String representation of the CommGroup.
- Parameters
-
os | ostream output destination. |
group | group to represent as string. |
◆ mReplicaGroupSize
unsigned gcl::CommGroup::mReplicaGroupSize = 0 |
|
protected |
Replica group size.
0 indicate the default size for the group type.
◆ mReplicaGroupStride
unsigned gcl::CommGroup::mReplicaGroupStride = 1 |
|
protected |
Replica group stride.
0 indicate the default replica stride for the group type.
The documentation for this struct was generated from the following file: