pub enum CommunicationOp {
AllReduce {
reduction: ReductionOp,
},
Broadcast {
src_rank: usize,
},
Scatter {
src_rank: usize,
},
Gather {
dst_rank: usize,
},
AllGather,
ReduceScatter {
reduction: ReductionOp,
},
Send {
dst_rank: usize,
},
Recv {
src_rank: usize,
},
}Expand description
Communication operation for distributed execution.
Variants§
AllReduce
All-reduce: reduce values across all devices
Fields
§
reduction: ReductionOpReduction operation (sum, mean, max, min)
Broadcast
Broadcast: send from one device to all others
Scatter
Scatter: distribute data from one device to all
Gather
Gather: collect data from all devices to one
AllGather
All-gather: gather data from all devices to all
ReduceScatter
Reduce-scatter: reduce and scatter results
Fields
§
reduction: ReductionOpReduction operation
Send
Peer-to-peer send
Recv
Peer-to-peer receive
Trait Implementations§
Source§impl Clone for CommunicationOp
impl Clone for CommunicationOp
Source§fn clone(&self) -> CommunicationOp
fn clone(&self) -> CommunicationOp
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CommunicationOp
impl Debug for CommunicationOp
Source§impl PartialEq for CommunicationOp
impl PartialEq for CommunicationOp
impl Eq for CommunicationOp
impl StructuralPartialEq for CommunicationOp
Auto Trait Implementations§
impl Freeze for CommunicationOp
impl RefUnwindSafe for CommunicationOp
impl Send for CommunicationOp
impl Sync for CommunicationOp
impl Unpin for CommunicationOp
impl UnwindSafe for CommunicationOp
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more