pub struct DistributedConfig {
pub num_gpus: usize,
pub gpu_ids: Vec<usize>,
pub backend: CommunicationBackend,
pub compression: CompressionConfig,
pub dynamic_batching: DynamicBatchingConfig,
pub fault_tolerance: FaultToleranceConfig,
pub monitoring: MonitoringConfig,
pub memory_optimization: MemoryOptimizationConfig,
}Expand description
Enhanced distributed training configuration with modern GPU optimizations
Fields§
§num_gpus: usizeNumber of GPUs to use
gpu_ids: Vec<usize>GPU device IDs to use
backend: CommunicationBackendCommunication backend (NCCL preferred for GPUs)
compression: CompressionConfigGradient compression configuration
dynamic_batching: DynamicBatchingConfigDynamic batching configuration
fault_tolerance: FaultToleranceConfigFault tolerance settings
monitoring: MonitoringConfigPerformance monitoring settings
memory_optimization: MemoryOptimizationConfigMemory optimization settings
Implementations§
Source§impl DistributedConfig
impl DistributedConfig
Sourcepub fn with_gpu_ids(self, gpu_ids: Vec<usize>) -> Self
pub fn with_gpu_ids(self, gpu_ids: Vec<usize>) -> Self
Set specific GPU IDs
Sourcepub fn with_gradient_compression(
self,
compression_type: CompressionType,
) -> Self
pub fn with_gradient_compression( self, compression_type: CompressionType, ) -> Self
Enable gradient compression
Sourcepub fn with_dynamic_batching(self, enabled: bool) -> Self
pub fn with_dynamic_batching(self, enabled: bool) -> Self
Enable dynamic batching
Sourcepub fn with_fault_tolerance(self, enabled: bool) -> Self
pub fn with_fault_tolerance(self, enabled: bool) -> Self
Enable fault tolerance
Sourcepub fn with_backend(self, backend: CommunicationBackend) -> Self
pub fn with_backend(self, backend: CommunicationBackend) -> Self
Set communication backend
Trait Implementations§
Source§impl Clone for DistributedConfig
impl Clone for DistributedConfig
Source§fn clone(&self) -> DistributedConfig
fn clone(&self) -> DistributedConfig
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 DistributedConfig
impl Debug for DistributedConfig
Source§impl Default for DistributedConfig
impl Default for DistributedConfig
Source§impl<'de> Deserialize<'de> for DistributedConfig
impl<'de> Deserialize<'de> for DistributedConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for DistributedConfig
impl RefUnwindSafe for DistributedConfig
impl Send for DistributedConfig
impl Sync for DistributedConfig
impl Unpin for DistributedConfig
impl UnwindSafe for DistributedConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ConfigSerializable for Twhere
T: Serialize + for<'de> Deserialize<'de>,
impl<T> ConfigSerializable for Twhere
T: Serialize + for<'de> Deserialize<'de>,
Source§fn save_to_file(&self, path: &Path) -> Result<(), TrustformersError>
fn save_to_file(&self, path: &Path) -> Result<(), TrustformersError>
Save to file
Source§fn load_from_file(path: &Path) -> Result<Self, TrustformersError>where
Self: Sized,
fn load_from_file(path: &Path) -> Result<Self, TrustformersError>where
Self: Sized,
Load from file
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