EMBL HD Cluster Configuration

To use, run the pipeline with -profile embl_hd. This will download and launch the embl_hd.config which has been pre-configured with a setup suitable for the embl cluster.

Config file

See config file on GitHub

embl_hd.config
params {
    config_profile_contact     = "gitlab-data-sciences-sci-workflows-nextflow-config-6076-issue-@embl.de"
    config_profile_description = "The EMBL Heidelberg HPC cluster profile"
    config_profile_name        = 'EMBL_HD'
    config_profile_url         = 'https://git.embl.de/data-sciences/sci-workflows/nextflow-config'
}
 
apptainer {
    enabled = true
    autoMounts = true
    docker.enabled = false
    pullTimeout = "3 hours"                // the default is 20 minutes and fails with large images
    envWhitelist = 'CUDA_VISIBLE_DEVICES'  // allow the bounding of GPU visible device variable into the containers
}
 
process {
    def scratch_dir = System.getenv("SCRATCHDIR")
    maxRetries = 3
    cache = 'lenient'
    afterScript = 'sleep 10'
    queue = { (task.time <= 14.d && task.memory < 256.GB && (task.memory.div(task.cpus)) <= 4.GB) ? "htc-el8" : "bigmem" }
 
    withLabel:gpu {
        queue = 'gpu-el8'
        containerOptions = '--nv' //enable Nvidia support
    }
 
    withLabel:bigmem {
        queue = 'bigmem'
    }
 
    withLabel:low_qos {
        clusterOptions = '--qos=low'
    }
}
 
executor {
    name = "slurm"
    queueSize = 200
    submitRateLimit = "10/1sec"
    pollInterval = '10sec'
    exitReadTimeout = "5 min"
    retry.reason = "*"
}