multithreading in rule execute is not properly solved
Created by: MaNyh
There are multiple problems with the rule execute.
- The number of used processors is used in multiple rules. We need this information in the partitioning step (rule preprocessing) and in the clusterprofile. This should only be defined once and not twice.
- When an OpenFOAM container shell is started, srun is not available anymore. How can an OpenFOAM executable be called with srun when the environment in the container is not sourced at the start of an shell?
- Currently --oversubscribe is used when calling mpirun. This is confusing and probably not effective.
Problematic code can be found in
- workflow/execute.smk (https://github.com/MaNyh/NTRFlows/blob/main/workflow/rules/execute.smk)
- config/workflowsettings.yaml
- workflow/schemas/config.schema.yaml
Also keep in mind that usually execute is a cluster-rule. The workflow should be used with cluster-profiles as this makes the usage of the workflow way easier. The current profile "profiles/slurm" is only tested on the rrzn-cluster of the university of Hannover.