This class abstracts the semantics of an allgather skeleton by exposing only the necessary information in its representation. More...
Public Member Functions | |
gather_impl::gather_op< T > | get_op (void) const |
Public Types | |
using | base_type = decltype(skeletons::allreduce< Tag, Span >(gather_impl::gather_op< T >())) |
using | skeleton_tag_type = tags::allgather< Tag > |
This class abstracts the semantics of an allgather skeleton by exposing only the necessary information in its representation.
An allgather skeleton gathers data from all partitions and distributes the combined data to all partitions.
This abstraction not only makes the reconstruction of an allgather skeleton easier, but also provides access to the underlying operations of the enclosed reduction operation. Furthermore, it reduces the symbol size for an allgather skeleton, hence, reducing the total compilation time.
T | type of the element used in allgather |
Span | the iteration space for elements on each level of both the reduction and the broadcast tree. |
Tag | determines the type of the allgather skeleton |