how to distribute stitching over slurm¶
You can launch the stitching on a computer having access to the slurm sbatch
command then you can distribution stitching over slurm.
The stitching configuration file contains a dedicated slurm
section which allow you to define the distribution to be done.
It contains the following keys:
partition
: name of the partition to use for launching the jobsmem
: memory to allocate for each job.n_jobs
: define on how many jobs the stitching should be splitted.python_venv
: python virtual environment to source before applying stitching. It must contain nabu.modules
: modules to be loaded before applying stitching. One must contain nabu. If provided thenpython_venv
should be empty. Examples:modules = "tomotools"
modules = ("tomotools/dev", "second_module")
Distribution will be done as follow (presudo-code):
compute_shifts [locally or remotly] (option locally will enforce to do this calculation locally)
for each part of the stitching:
apply_stitching_on_this_part()
concatenate_the_different_part [locally or remotly] (option locally will enforce to do this calculation locally)