Module parallel

Module parallel 

Source
Expand description

Parallel processing utilities for linear algebra operations

This module provides utilities for managing worker threads across various linear algebra operations, ensuring consistent behavior and optimal performance.

Re-exports§

pub use thread_pools::get_global_manager;
pub use thread_pools::AdvancedPerformanceStats;
pub use thread_pools::AdvancedPerformanceThreadPool;
pub use thread_pools::AdvancedThreadPoolConfig;
pub use thread_pools::AffinityStrategy;
pub use thread_pools::AnomalySeverity;
pub use thread_pools::AnomalyType;
pub use thread_pools::CacheAllocationPolicy;
pub use thread_pools::DecompositionType;
pub use thread_pools::DynamicSizingConfig;
pub use thread_pools::DynamicThreadManager;
pub use thread_pools::IterativeSolverType;
pub use thread_pools::MemoryMetrics;
pub use thread_pools::MonitoringConfig;
pub use thread_pools::OperationType;
pub use thread_pools::PerformanceAnomaly;
pub use thread_pools::PredictionModelParams;
pub use thread_pools::ProfileMetrics;
pub use thread_pools::ResourceIsolationConfig;
pub use thread_pools::ResourceUsagePattern;
pub use thread_pools::ScalingDecision;
pub use thread_pools::ScalingReason;
pub use thread_pools::ScopedThreadPool;
pub use thread_pools::ThreadPoolConfig;
pub use thread_pools::ThreadPoolManager;
pub use thread_pools::ThreadPoolProfile;
pub use thread_pools::ThreadPoolProfiler;
pub use thread_pools::ThreadPoolStats;
pub use thread_pools::WorkloadAdaptationConfig;
pub use thread_pools::WorkloadCharacteristics;
pub use thread_pools::WorkloadPattern;
pub use thread_pools::WorkloadPredictor;
pub use work_stealing::AdaptiveChunking;
pub use work_stealing::AdaptiveChunkingStats;
pub use work_stealing::CacheAwareStrategy;
pub use work_stealing::CacheAwareWorkStealer;
pub use work_stealing::CacheLocalityOptimizer;
pub use work_stealing::CacheOptimizationRecommendations;
pub use work_stealing::ChunkPerformance;
pub use work_stealing::LoadBalancingParams;
pub use work_stealing::MatrixOperationType;
pub use work_stealing::MemoryAccessPattern;
pub use work_stealing::NumaTopology;
pub use work_stealing::OptimizedSchedulerStats;
pub use work_stealing::OptimizedWorkStealingScheduler;
pub use work_stealing::PerformanceMonitor;
pub use work_stealing::PerformanceStats;
pub use work_stealing::SchedulerStats;
pub use work_stealing::StealingStrategy;
pub use work_stealing::WorkComplexity;
pub use work_stealing::WorkItem;
pub use work_stealing::WorkPriority;
pub use work_stealing::WorkStealingScheduler;
pub use work_stealing::matrix_ops::parallel_band_solve;
pub use work_stealing::matrix_ops::parallel_block_gemm;
pub use work_stealing::matrix_ops::parallel_cholesky_work_stealing;
pub use work_stealing::matrix_ops::parallel_eigvalsh_work_stealing;
pub use work_stealing::matrix_ops::parallel_gemm_work_stealing;
pub use work_stealing::matrix_ops::parallel_hessenberg_reduction;
pub use work_stealing::matrix_ops::parallel_lu_work_stealing;
pub use work_stealing::matrix_ops::parallel_matvec_work_stealing;
pub use work_stealing::matrix_ops::parallel_power_iteration;
pub use work_stealing::matrix_ops::parallel_qr_work_stealing;
pub use work_stealing::matrix_ops::parallel_svd_work_stealing;
pub use work_stealing::parallel_gemm_cache_aware;

Modules§

adaptive
Adaptive algorithm selection based on data size and worker configuration
advanced_work_stealing
Advanced work-stealing algorithms with intelligent scheduling
affinity
CPU affinity and thread pinning
algorithms
Parallel linear algebra algorithms
iter
Parallel iterator utilities for matrix operations
numa
NUMA-aware parallel computing
scheduler
Work-stealing scheduler optimizations
thread_pool
Thread pool configurations for linear algebra operations
thread_pools
Enhanced thread pool configurations and management
work_stealing
Work-stealing scheduler implementation for dynamic load balancing

Structs§

ScopedWorkers
Scoped worker configuration
WorkerConfig
Worker configuration for batched operations

Functions§

configure_workers
Configure worker threads for an operation
get_global_workers
Get the current global worker thread count
set_global_workers
Set the global worker thread count for all operations