Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding the MRC LMS Jex cluster #561

Merged
merged 1 commit into from
Nov 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ jobs:
- "ipop_up"
- "janelia"
- "jax"
- "jex"
- "ku_sund_dangpu"
- "leicester"
- "lugh"
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ Currently documentation is available for the following systems:
- [iPOP-UP](docs/ipop_up.md)
- [Janelia Research Campus](docs/janelia.md)
- [JAX](docs/jax.md)
- [Jex](docs/jex.md)
- [KU SUND DANGPU](docs/ku_sund_dangpu.md)
- [LUGH](docs/lugh.md)
- [MAESTRO](docs/maestro.md)
Expand Down
32 changes: 32 additions & 0 deletions conf/jex.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
params {
config_profile_name = 'Jex'
config_profile_description = 'Nextflow config file for the MRC LMS Jex cluster'
config_profile_contact = 'George Young (@A-N-Other)'
config_profile_url = 'https://lms.mrc.ac.uk/research-facility/bioinformatics-facility/'
}

process {
executor = 'slurm'
queue = {
if ( task.time <= 6.h && task.cpus <= 8 && task.memory <= 64.GB ) {
'nice'
} else if ( task.memory > 256.GB ) {
'hmem'
} else {
'cpu'
}
}
clusterOptions = '--qos qos_batch'
}

singularity {
enabled = true
autoMounts = true
cacheDir = '/opt/resources/apps/singularity/cache'
A-N-Other marked this conversation as resolved.
Show resolved Hide resolved
}

params {
max_memory = 4000.GB
max_cpus = 16
max_time = 3.d
}
39 changes: 39 additions & 0 deletions docs/jex.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# nf-core/configs: Configuration for the MRC LMS Jex cluster

All `nf-core` pipelines have been configured for use on the
[MRC LMS](https://lms.mrc.ac.uk/) Jex cluster and can be used by running with
`-profile jex`.

The [`jex.config`](../conf/jex.config) file has been customised to suit the
cluster's SLURM system and streamlines the use of containerised `nf-core` workflows.
Using this profile, `docker` images containing the required software will be downloaded
and converted to `singularity` images prior to execution and jobs will be submitted
to the correct SLURM partitions and QoS groups. Converted `singularity` images are
cached in a central area to reduce duplication.

To run a pipeline, `nextflow` and `singularity` will need to be loaded into your
environment:

```bash
#
# NOTE:
# We use `module reset` rather than `module purge`, as Jex makes use of various
# default modules that provide a consistent user environment.
#

module reset

module load nextflow
module load singularityce
```

Full documentation on now to run `nextflow` on Jex can be found on the internal
[wiki](http://hpcwiki.lms.mrc.ac.uk). Remember:

> Jex provides a special SLURM partition for running workflow managers, including
> `nextflow`. Manager processes submitted with `--partition ctrl --qos qos_ctrl`
> have elevated priorities and wallclock limits of up to 30 days.

> Jex makes available various shared genome resources to avoid duplication.
> These are located within `/opt/resources` and can be searched and referenced using
> the `asset` command.
1 change: 1 addition & 0 deletions nfcore_custom.config
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ profiles {
ipop_up { includeConfig "${params.custom_config_base}/conf/ipop_up.config" }
janelia { includeConfig "${params.custom_config_base}/conf/janelia.config" }
jax { includeConfig "${params.custom_config_base}/conf/jax.config" }
jex { includeConfig "${params.custom_config_base}/conf/jex.config" }
ku_sund_dangpu { includeConfig "${params.custom_config_base}/conf/ku_sund_dangpu.config"}
leicester { includeConfig "${params.custom_config_base}/conf/leicester.config" }
lugh { includeConfig "${params.custom_config_base}/conf/lugh.config" }
Expand Down