Parallel Simulation Provider
constructor(modelBuilder: ModelBuilderIfc, modelConfiguration: Map<String, String>? = null, baseRunParameters: ExperimentRunParametersIfc? = null, templateModel: Model? = null, simulationRunCache: SimulationRunCacheIfc? = null, shortCircuitSinglePoint: Boolean = true, dispatcher: CoroutineDispatcher = Dispatchers.IO.limitedParallelism(SimulationDispatcher.availableProcessors))(source)
Parameters
model Builder
builds a fresh model per point; must yield independent instances
model Configuration
opaque configuration forwarded to modelBuilder.build(...)
base Run Parameters
baseline run parameters shared by all points; if null, taken from the template model
template Model
an already-built model to adopt as the template and single-point reuse model; if null, one is built
simulation Run Cache
optional cache used only by the single-point (sequential) path
short Circuit Single Point
when true (default), size-1 requests run on the reused model instead of the parallel path
dispatcher
the bounded dispatcher governing worker concurrency; defaults to a dedicated view sized to the processors