Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,38 @@ The following parameters can be set
}
```

## Tasking / Workers

The usage of workers can be enabled by configuring the tasking parameters to values other than the default.
When using workers, a separate MPI process group is started per Micro Manager rank. This should allow for parallel
micro simulation computation.
With `backend`, the communication between the Micro Manager rank and its workers can be set to use either a
socket based or MPI based approach. For system with SLURM: By setting `is_slurm` to true the worker process is
attempted to be started with `srun` instead of `mpiexec`. In this case, `backend` must be set to `"socket"`.
`num_workers` controls the amount of workers per Micro Manager rank. When `num_workers` is less or equal than `1`, then
local execution is assumed, thus no worker processes are created.
`mpi_impl` should be set to the underlying MPI implementation, as this is required for pinning.

| Parameter | Description | Default |
|-----------------|--------------------------------------------------------|------------|
| `backend` | Communication backend. Options: ["socket", "mpi"] | `"socket"` |
| `is_slurm` | Launch worker with `srun`? | `"False"` |
| `"num_workers"` | Number of workers pre Micro Manager rank. | `1` |
| `"mpi_impl"` | Implementation type of MPI. Options: ["intel", "open"] | `"open"` |

The following configuration block should be provided on the same level as the `"simulation_param"`.
The given example uses socket based communication, launches with `mpiexec`, uses 4 workers per rank and
assumes Intel MPI.

```json
"tasking": {
"backend": "socket",
"is_slurm": false,
"num_workers": 4,
"mpi_impl": "intel"
}
```

## Interpolate a crashed micro simulation

If the optional dependency `sklearn` is installed, the Micro Manager will derive the output of a crashed micro simulation by interpolating outputs from similar simulations. To enable this, set
Expand Down