Expand description
Distributed optimization using MPI for large-scale parallel computation
This module provides distributed optimization algorithms that can scale across multiple nodes using Message Passing Interface (MPI), enabling optimization of computationally expensive problems across compute clusters.
Modules§
- algorithms
- Distributed optimization algorithms
Structs§
- Communication
Config - Communication optimization configuration
- Distributed
Config - Configuration for distributed optimization
- Distributed
Optimization Context - Distributed optimization context
- Distributed
Stats - Performance statistics for distributed optimization
- Fault
Tolerance Config - Fault tolerance configuration
- Load
Balancing Config - Load balancing configuration
- MockMPI
- Minimal rank/size-only stub, for tests of logic that only reads
MPIInterface::rank/MPIInterface::size(e.g. the crate-privateWorkDistribution) and never actually exercises cross-rank communication. - Thread
Rank Mpi - An
MPIInterfaceimplementation that simulatessizeMPI ranks using real OS threads within a single process, so distributed algorithms (algorithms::DistributedDifferentialEvolution,algorithms::DistributedParticleSwarm) can be exercised end-to-end — with genuine cross-rank broadcast/gather/allreduce/send/recv — without an actual MPI runtime or multi-process setup. Seespawn_ranksto construct and drive a full communicator. - Work
Assignment - Work assignment for a process
Enums§
- Distribution
Strategy - Work distribution strategies
- Reduction
Op - Reduction operations for MPI
Traits§
- MPIInterface
- MPI interface abstraction for distributed optimization
Functions§
- spawn_
ranks - Build a
size-rank simulated communicator and runbodyon each simulated rank in its own thread, returning each rank’s result in rank order.bodyreceives a ready-to-useThreadRankMpihandle; construct aDistributedOptimizationContextfrom it to drive a real algorithm.