pub struct WorkStealingConfig {
pub numa_aware: bool,
pub work_stealing: bool,
pub adaptive_scheduling: bool,
pub num_threads: usize,
pub initial_chunk_size: usize,
pub min_chunk_size: usize,
pub thread_affinity: ThreadAffinityStrategy,
pub memory_strategy: MemoryStrategy,
pub prefetch_distance: usize,
}Expand description
Configuration for advanced-parallel processing
Fields§
§numa_aware: boolEnable NUMA-aware memory allocation and thread placement
work_stealing: boolEnable work-stealing algorithm
adaptive_scheduling: boolEnable adaptive scheduling based on workload
num_threads: usizeNumber of worker threads (0 = auto-detect)
initial_chunk_size: usizeWork chunk size for initial distribution
min_chunk_size: usizeMinimum chunk size for work stealing
thread_affinity: ThreadAffinityStrategyThread affinity strategy
memory_strategy: MemoryStrategyMemory allocation strategy
prefetch_distance: usizePrefetching distance for memory operations
Implementations§
Source§impl WorkStealingConfig
impl WorkStealingConfig
Sourcepub fn with_numa_aware(self, enabled: bool) -> Self
pub fn with_numa_aware(self, enabled: bool) -> Self
Configure NUMA awareness
Sourcepub fn with_work_stealing(self, enabled: bool) -> Self
pub fn with_work_stealing(self, enabled: bool) -> Self
Configure work stealing
Sourcepub fn with_adaptive_scheduling(self, enabled: bool) -> Self
pub fn with_adaptive_scheduling(self, enabled: bool) -> Self
Configure adaptive scheduling
Sourcepub fn with_threads(self, numthreads: usize) -> Self
pub fn with_threads(self, numthreads: usize) -> Self
Set number of threads
Sourcepub fn with_chunk_sizes(self, initial: usize, minimum: usize) -> Self
pub fn with_chunk_sizes(self, initial: usize, minimum: usize) -> Self
Configure chunk sizes
Sourcepub fn with_thread_affinity(self, strategy: ThreadAffinityStrategy) -> Self
pub fn with_thread_affinity(self, strategy: ThreadAffinityStrategy) -> Self
Set thread affinity strategy
Sourcepub fn with_memory_strategy(self, strategy: MemoryStrategy) -> Self
pub fn with_memory_strategy(self, strategy: MemoryStrategy) -> Self
Set memory allocation strategy
Trait Implementations§
Source§impl Clone for WorkStealingConfig
impl Clone for WorkStealingConfig
Source§fn clone(&self) -> WorkStealingConfig
fn clone(&self) -> WorkStealingConfig
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 WorkStealingConfig
impl Debug for WorkStealingConfig
Auto Trait Implementations§
impl Freeze for WorkStealingConfig
impl RefUnwindSafe for WorkStealingConfig
impl Send for WorkStealingConfig
impl Sync for WorkStealingConfig
impl Unpin for WorkStealingConfig
impl UnwindSafe for WorkStealingConfig
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> 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<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.