diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e4d68ca..55488be 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -69,6 +69,7 @@ jobs: - "jax" - "ku_sund_dangpu" - "lugh" + - "mana" - "marvin" - "medair" - "mjolnir_globe" @@ -87,6 +88,7 @@ jobs: - "sanger" - "sbc_sharc" - "seg_globe" + - "tigem" - "uct_hpc" - "unibe_ibu" - "uppmax" diff --git a/README.md b/README.md index 838d288..ddf9267 100644 --- a/README.md +++ b/README.md @@ -125,6 +125,7 @@ Currently documentation is available for the following systems: - [KU SUND DANGPU](docs/ku_sund_dangpu.md) - [LUGH](docs/lugh.md) - [MAESTRO](docs/maestro.md) +- [Mana](docs/mana.md) - [MARVIN](docs/marvin.md) - [MEDAIR](docs/medair.md) - [MJOLNIR_GLOBE](docs/mjolnir_globe.md) @@ -141,6 +142,7 @@ Currently documentation is available for the following systems: - [SANGER](docs/sanger.md) - [SBC_SHARC](docs/sbc_sharc.md) - [SEG_GLOBE](docs/seg_globe.md) +- [TIGEM](docs/tigem.md) - [UCT_HPC](docs/uct_hpc.md) - [UNIBE_IBU](docs/unibe_ibu.md) - [UPPMAX](docs/uppmax.md) diff --git a/conf/ccga_med.config b/conf/ccga_med.config index d55fde2..c9b7b44 100644 --- a/conf/ccga_med.config +++ b/conf/ccga_med.config @@ -13,8 +13,8 @@ params { singularity { enabled = true - runOptions = "-B /work_ifs -B /scratch" - cacheDir = "/work_ifs/ikmb_repository/singularity_cache/" + runOptions = "-B /work_ifs -B /scratch -B /work_beegfs" + cacheDir = "/work_beegfs/ikmb_repository/singularity_cache/" } executor { @@ -31,7 +31,7 @@ process { params { // illumina iGenomes reference file paths on RZCluster - igenomes_base = '/work_ifs/ikmb_repository/references/iGenomes/references/' + igenomes_base = '/work_beegfs/ikmb_repository/references/iGenomes/references/' saveReference = true max_memory = 250.GB max_cpus = 24 diff --git a/conf/mana.config b/conf/mana.config new file mode 100644 index 0000000..93d674c --- /dev/null +++ b/conf/mana.config @@ -0,0 +1,21 @@ +params { + config_profile_description = 'University of Hawaii at Manoa' + config_profile_url = 'http://www.hawaii.edu/its/ci/' + config_profile_contact = 'Cedric Arisdakessian' + + max_memory = 400.GB + max_cpus = 96 + max_time = 72.h +} + +process { + executor = 'slurm' + queue = 'shared,exclusive,kill-shared,kill-exclusive' + module = 'tools/Singularity' +} + +singularity { + enabled = true + cacheDir = "$HOME/.singularity_images_cache" + autoMounts = true +} diff --git a/conf/pipeline/mag/eva.config b/conf/pipeline/mag/eva.config index 81d8d0c..37a531d 100644 --- a/conf/pipeline/mag/eva.config +++ b/conf/pipeline/mag/eva.config @@ -4,6 +4,11 @@ params { config_profile_description = 'nf-core/mag EVA profile provided by nf-core/configs' } +env { + OPENBLAS_NUM_THREADS=1 + OMP_NUM_THREADS=1 +} + process { withName: FASTQC { diff --git a/conf/tigem.config b/conf/tigem.config new file mode 100644 index 0000000..b89a4ed --- /dev/null +++ b/conf/tigem.config @@ -0,0 +1,14 @@ +params { + config_profile_description = 'Telethon Institute of Genetic and Medicine (TIGEM) provided by nf-core/configs.' + config_profile_contact = 'Giuseppe Martone (@giusmar)' + config_profile_url = 'https://github.com/giusmar' +} + +process.executor = 'slurm' +google.zone = 'europe-west1' + +singularity { + enabled = true + autoMounts = true + cacheDir = 'work/singularity' +} diff --git a/docs/mana.md b/docs/mana.md new file mode 100644 index 0000000..4d0be0d --- /dev/null +++ b/docs/mana.md @@ -0,0 +1,45 @@ +# nf-core/configs Mana (at University of Hawaii at Manoa) Configuration + +To use, run the pipeline with `-profile mana`. It will use the following parameters for Mana (UHM HPCC): + +- Load singularity and use it as default container technology +- Setup a container cache directory in your home (~/.singularity_images_cache) +- Select appropriate queues (currently: `shared,exclusive,kill-shared,kill-exclusive`) +- Set the maximum available resources (available in 09/02/2022): + - CPUs: 96 + - Memory: 400.GB + - Time: 72.h + +## Pre-requisites + +In order to run a nf-core pipeline on Mana, you will need to setup nextflow in your environment. +At the moment, nextflow is not available as a module (but might be in the future). + +### Install nextflow in a conda environment + +Before we start, we will need to work on an interactive node (currently, mana doesn't let you execute any program in the login node): + +```bash +# Request an interactive sandbox node for 30 min +srun --pty -t 30 -p sandbox /bin/bash +``` + +To setup nextflow on your account, follow these steps. + +```bash +# Load the latest anaconda3 module +module load lang/Anaconda3/2022.05 + +# Initialize environment +. $(conda info --base)/etc/profile.d/conda.sh + +# Install nextflow (here in base environment, but you can create a new one if you'd like) +conda install -c bioconda nextflow +``` + +If you want these settings to be persistent, you can add the first 2 commands in your .bash_profile file like this: + +```bash +echo "module load lang/Anaconda3/2022.05" >> ~/.bash_profile +echo "$(conda info --base)/etc/profile.d/conda.sh" >> ~/.bash_profile +``` diff --git a/docs/tigem.md b/docs/tigem.md new file mode 100644 index 0000000..e562fe4 --- /dev/null +++ b/docs/tigem.md @@ -0,0 +1,7 @@ +# nf-core/configs: TIGEM configuration + +To use, run the pipeline with `-profile tigem`. This will download and launch the tigem.config which has been pre-configured with a setup suitable for the TIGEM personal biocluster. + +--- + +This configuration profile can be used on TIGEM clusters, with the pre-installed SLURM job scheduling system. An additional parameter is `google.zone` to allow downloading data from GCP for a specific time zone. It should not interfere with any local or other AWS configuration. diff --git a/nfcore_custom.config b/nfcore_custom.config index aba5349..83390c4 100644 --- a/nfcore_custom.config +++ b/nfcore_custom.config @@ -52,6 +52,7 @@ profiles { ku_sund_dangpu {includeConfig "${params.custom_config_base}/conf/ku_sund_dangpu.config"} lugh { includeConfig "${params.custom_config_base}/conf/lugh.config" } maestro { includeConfig "${params.custom_config_base}/conf/maestro.config" } + mana { includeConfig "${params.custom_config_base}/conf/mana.config" } marvin { includeConfig "${params.custom_config_base}/conf/marvin.config" } medair { includeConfig "${params.custom_config_base}/conf/medair.config" } mjolnir_globe { includeConfig "${params.custom_config_base}/conf/mjolnir_globe.config" } @@ -69,6 +70,7 @@ profiles { sanger { includeConfig "${params.custom_config_base}/conf/sanger.config"} sbc_sharc { includeConfig "${params.custom_config_base}/conf/sbc_sharc.config"} seg_globe { includeConfig "${params.custom_config_base}/conf/seg_globe.config"} + tigem { includeConfig "${params.custom_config_base}/conf/tigem.config"} uct_hpc { includeConfig "${params.custom_config_base}/conf/uct_hpc.config" } unibe_ibu { includeConfig "${params.custom_config_base}/conf/unibe_ibu.config" } uppmax { includeConfig "${params.custom_config_base}/conf/uppmax.config" }