← Back to innerloop_iterationscheme
ParallelPerLevelIncreasing¶
Source: Distributed_Design_Optimizer/coordination/innerloop_iterationscheme/ParallelPerLevelIncreasing.py
Level-by-level iteration scheme module.
This module provides an iteration scheme where subsystems at each level are executed in parallel before moving to the next level.
Classes¶
ParallelPerLevelIncreasing¶
Inherits from: IterationSchemeBasis
Iteration scheme that executes subsystems level by level.
This scheme processes subsystems by their level, executing all subsystems at the same level in parallel before moving to the next level.
Methods¶
init(self) → None
Initialize the ParallelPerLevelIncreasing iteration scheme.
run_innerloop_jobs_multiprocessing(self, subsystemsIn: List[SubSystemInterface]) → Tuple[List[SubSystemInterface], List[int]]
Execute inner loop jobs level by level using multiprocessing.
Subsystems are grouped by their subsystem level and executed in parallel within each level. Processing proceeds from level 0 upward.
Args:
subsystemsIn: List of subsystems to execute.
Returns:
Tuple containing the list of executed subsystems and their indices.
print_startup_summary(self) → None
Nothing to print.
print_termination_summary(self) → None
Nothing to print.
print_beginning_of_run_innerloop_jobs_multiprocessing(self) → None
Print a banner before executing inner loop jobs with multiprocessing.