Skip to content

Commit 5686272

Browse files
committed
fix: removed TODO item in the MPI section. Yes, the exectuor is has no special MPI features. To avoid confusion some redundancy is kept.
1 parent 5c21a1b commit 5686272

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

docs/further.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -199,19 +199,17 @@ TODO: Also, what exactly does the `--slurm-requeue` mode do? I assume it makes s
199199

200200
#### MPI-specific Resources
201201

202-
TODO: From what I can see, snakemake-executor-plugin-slurm does not do anything special to mpi jobs. So it might be sufficient to point to the main snakemake MPI support docs at https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html and maybe extend those (or clean them up). The only Slurm-specific info is probably to use `mpi="srun"` instead of `mpi="mpiexec"`, right? But maybe I am also overlooking any special things happening in the software package stack of the plugin (or the jobstep)?
203-
204202
Snakemake's SLURM executor plugin supports the execution of MPI ([Message Passing Interface](https://en.wikipedia.org/wiki/Message_Passing_Interface)) jobs.
205-
Per default, jobs can only run on a single cluster node (or machine) and parallelization is thus limited by the maximum number of cores that is available on any machine in the cluster.
206-
MPI jobs enable parallel computations spanning across multiple nodes, thus potentially parallelizing to more cores than any machine in you cluster can offer.
203+
204+
Per default, jobs can only run on a single cluster node (or machine) and parallelization is thus limited by the maximum number of cores that is available on any machine in the cluster. MPI jobs enable parallel computations spanning across multiple nodes, thus potentially parallelizing to more cores than any machine in you cluster can offer. [See the main documentation section of Snakemake, too.](https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#mpi-support)
207205

208206
| Snakemake | Description |
209207
|---------------|---------------------------------------------|
210208
| `mpi` | MPI launcher command, for example `srun` |
211209
| `tasks` | The number of SLURM tasks - equivalent to MPI-ranks |
212210

213211

214-
To effectively utilize MPI within a Snakemake workflow, it's recommended to use `srun` as the MPI launcher when operating in a SLURM environment.
212+
To effectively utilize MPI within a Snakemake workflow, it's recommended to use `srun` as the MPI launcher when operating in a SLURM environment. However, some programs do not work well with this MPI launcer or require a detailed topology layout - this can be added to the `srun` statement, if required.
215213

216214
Here's an example of defining an MPI rule in a Snakefile:
217215

0 commit comments

Comments
 (0)