Skip to content

Add support for modules #50

@lchladek

Description

@lchladek

DelftBlue uses the module command LMod to load software, as defined in the DHPC docs.

My use case (an example) is running an R script via Gourd:

module load 2024r1
module load r/4.3.0
Rscript --vanilla my_script.R <my_args>

gourd.toml should have a 'modules' specification in the SLURM config like:

[slurm]
modules = ["2024r1", "r/4.3.0"]

This would add the 'modules' lines to the Sbatch script, potentially adding further checks on if the modules are available/can be installed.
This would allow me to use Rscript --vanilla my_script.R as the Gourd program; the current workaround is for the Gourd program to be a wrapper bash script that loads the modules and executes Rscript.
This is annoying:

  • I have to write a wrapper script, which isn't user-friendly
  • I have to detect from the wrapper if I'm running locally or on the cluster, and run 'modules' based on that
  • I have to forward args through the script

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions