pub struct SimulatedParallelExecutor { /* private fields */ }Expand description
Simulated multi-GPU executor for development/testing
Uses threading to simulate multiple GPUs within a single process. Useful for testing parallel algorithms without actual multi-GPU hardware.
Implementations§
Trait Implementations§
Source§impl ParallelExecutor for SimulatedParallelExecutor
impl ParallelExecutor for SimulatedParallelExecutor
Source§fn config(&self) -> &ParallelConfig
fn config(&self) -> &ParallelConfig
Get the parallelism configuration
Source§fn world_size(&self) -> usize
fn world_size(&self) -> usize
Get world size
Source§fn barrier<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn barrier<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Barrier synchronization across all ranks
Source§fn all_reduce<'life0, 'life1, 'async_trait>(
&'life0 self,
data: &'life1 mut [f32],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn all_reduce<'life0, 'life1, 'async_trait>(
&'life0 self,
data: &'life1 mut [f32],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
All-reduce operation (sum by default)
Source§fn all_gather<'life0, 'life1, 'async_trait>(
&'life0 self,
local_data: &'life1 [f32],
) -> Pin<Box<dyn Future<Output = Result<Vec<f32>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn all_gather<'life0, 'life1, 'async_trait>(
&'life0 self,
local_data: &'life1 [f32],
) -> Pin<Box<dyn Future<Output = Result<Vec<f32>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
All-gather operation
Auto Trait Implementations§
impl !RefUnwindSafe for SimulatedParallelExecutor
impl !UnwindSafe for SimulatedParallelExecutor
impl Freeze for SimulatedParallelExecutor
impl Send for SimulatedParallelExecutor
impl Sync for SimulatedParallelExecutor
impl Unpin for SimulatedParallelExecutor
impl UnsafeUnpin for SimulatedParallelExecutor
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
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more