pub struct MultiGpuConfig {
pub num_devices: usize,
pub strategy: LoadBalancingStrategy,
pub max_queue_depth: usize,
pub utilization_sample_interval_ms: u64,
pub device_affinity: bool,
pub overload_threshold: f32,
pub adaptive_warmup_tasks: usize,
pub async_execution: bool,
pub device_memory_budget_mb: usize,
}Expand description
Configuration for multi-GPU manager
Fields§
§num_devices: usizeNumber of GPU devices to use
strategy: LoadBalancingStrategyLoad balancing strategy
max_queue_depth: usizeMaximum queue depth per device before rejecting tasks
utilization_sample_interval_ms: u64Interval for utilization sampling (ms)
device_affinity: boolEnable device affinity (prefer same device for related tasks)
overload_threshold: f32Threshold above which a device is considered overloaded (0.0-1.0)
adaptive_warmup_tasks: usizeNumber of warmup tasks before switching from round-robin to adaptive
async_execution: boolEnable async task execution across devices
device_memory_budget_mb: usizePer-device memory budget in MB
Trait Implementations§
Source§impl Clone for MultiGpuConfig
impl Clone for MultiGpuConfig
Source§fn clone(&self) -> MultiGpuConfig
fn clone(&self) -> MultiGpuConfig
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 MultiGpuConfig
impl Debug for MultiGpuConfig
Source§impl Default for MultiGpuConfig
impl Default for MultiGpuConfig
Source§impl<'de> Deserialize<'de> for MultiGpuConfig
impl<'de> Deserialize<'de> for MultiGpuConfig
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 MultiGpuConfig
impl RefUnwindSafe for MultiGpuConfig
impl Send for MultiGpuConfig
impl Sync for MultiGpuConfig
impl Unpin for MultiGpuConfig
impl UnsafeUnpin for MultiGpuConfig
impl UnwindSafe for MultiGpuConfig
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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.