pub enum LoadBalanceStrategy {
RoundRobin,
LeastLoaded,
WeightedCapacity,
AdaptiveThroughput,
}Expand description
Strategy used by MultiGpuScheduler to assign work to devices.
Variants§
RoundRobin
Strict round-robin assignment across all available devices.
LeastLoaded
Always assign to the device with the smallest pending queue depth.
WeightedCapacity
Assign proportionally to each device’s weight in DeviceSlot.
AdaptiveThroughput
Dynamically measure throughput and prefer the fastest device.
Trait Implementations§
Source§impl Clone for LoadBalanceStrategy
impl Clone for LoadBalanceStrategy
Source§fn clone(&self) -> LoadBalanceStrategy
fn clone(&self) -> LoadBalanceStrategy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for LoadBalanceStrategy
Source§impl Debug for LoadBalanceStrategy
impl Debug for LoadBalanceStrategy
Source§impl Default for LoadBalanceStrategy
impl Default for LoadBalanceStrategy
impl Eq for LoadBalanceStrategy
Source§impl PartialEq for LoadBalanceStrategy
impl PartialEq for LoadBalanceStrategy
Source§fn eq(&self, other: &LoadBalanceStrategy) -> bool
fn eq(&self, other: &LoadBalanceStrategy) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for LoadBalanceStrategy
Auto Trait Implementations§
impl Freeze for LoadBalanceStrategy
impl RefUnwindSafe for LoadBalanceStrategy
impl Send for LoadBalanceStrategy
impl Sync for LoadBalanceStrategy
impl Unpin for LoadBalanceStrategy
impl UnsafeUnpin for LoadBalanceStrategy
impl UnwindSafe for LoadBalanceStrategy
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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