Skip to main content

Module distributed

Module distributed 

Source
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§

CommunicationConfig
Communication optimization configuration
DistributedConfig
Configuration for distributed optimization
DistributedOptimizationContext
Distributed optimization context
DistributedStats
Performance statistics for distributed optimization
FaultToleranceConfig
Fault tolerance configuration
LoadBalancingConfig
Load balancing configuration
MockMPI
Minimal rank/size-only stub, for tests of logic that only reads MPIInterface::rank/MPIInterface::size (e.g. the crate-private WorkDistribution) and never actually exercises cross-rank communication.
ThreadRankMpi
An MPIInterface implementation that simulates size MPI 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. See spawn_ranks to construct and drive a full communicator.
WorkAssignment
Work assignment for a process

Enums§

DistributionStrategy
Work distribution strategies
ReductionOp
Reduction operations for MPI

Traits§

MPIInterface
MPI interface abstraction for distributed optimization

Functions§

spawn_ranks
Build a size-rank simulated communicator and run body on each simulated rank in its own thread, returning each rank’s result in rank order. body receives a ready-to-use ThreadRankMpi handle; construct a DistributedOptimizationContext from it to drive a real algorithm.