pub enum NcclWorldMsg {
AllReduceF32 {
tensors: Vec<GpuRef<f32>>,
op: ReduceOp,
reply: Sender<Result<(), GpuError>>,
},
ChildReady {
device_idx: usize,
device_ref: ActorRef<DeviceMsg>,
},
DeviceContextChanged {
device_idx: usize,
new_generation: u64,
},
}Variants§
AllReduceF32
ChildReady
Internal: child reports it’s ready.
DeviceContextChanged
Internal: a per-device generation watch fired, meaning a
ContextActor rebuilt its CUDA context and the existing NCCL
communicators are now invalid. The world tears the
collectives down and rebuilds.
Auto Trait Implementations§
impl Freeze for NcclWorldMsg
impl !RefUnwindSafe for NcclWorldMsg
impl Send for NcclWorldMsg
impl Sync for NcclWorldMsg
impl Unpin for NcclWorldMsg
impl UnsafeUnpin for NcclWorldMsg
impl !UnwindSafe for NcclWorldMsg
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