diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..835c83d --- /dev/null +++ b/.editorconfig @@ -0,0 +1,12 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true +indent_size = 4 +indent_style = space + +[*.{md,yml,yaml}] +indent_size = 2 diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 13943d9..97cf785 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -5,16 +5,17 @@ about: A new cluster config Please follow these steps before submitting your PR: -* [ ] If your PR is a work in progress, include `[WIP]` in its title -* [ ] Your PR targets the `master` branch -* [ ] You've included links to relevant issues, if any +- [ ] If your PR is a work in progress, include `[WIP]` in its title +- [ ] Your PR targets the `master` branch +- [ ] You've included links to relevant issues, if any Steps for adding a new config profile: -* [ ] Add your custom config file to the `conf/` directory -* [ ] Add your documentation file to the `docs/` directory -* [ ] Add your custom profile to the `nfcore_custom.config` file in the top-level directory -* [ ] Add your custom profile to the `README.md` file in the top-level directory -* [ ] Add your profile name to the `profile:` scope in `.github/workflows/main.yml` + +- [ ] Add your custom config file to the `conf/` directory +- [ ] Add your documentation file to the `docs/` directory +- [ ] Add your custom profile to the `nfcore_custom.config` file in the top-level directory +- [ ] Add your custom profile to the `README.md` file in the top-level directory +- [ ] Add your profile name to the `profile:` scope in `.github/workflows/main.yml` -* [Using an existing config](#using-an-existing-config) - * [Configuration and parameters](#configuration-and-parameters) - * [Offline usage](#offline-usage) -* [Adding a new config](#adding-a-new-config) - * [Checking user hostnames](#checking-user-hostnames) - * [Testing](#testing) - * [Documentation](#documentation) - * [Uploading to `nf-core/configs`](#uploading-to-nf-coreconfigs) -* [Adding a new pipeline-specific config](#adding-a-new-pipeline-specific-config) - * [Pipeline-specific institutional documentation](#pipeline-specific-institutional-documentation) - * [Pipeline-specific documentation](#pipeline-specific-documentation) - * [Enabling pipeline-specific configs within a pipeline](#enabling-pipeline-specific-configs-within-a-pipeline) - * [Create the pipeline-specific `nf-core/configs` files](#create-the-pipeline-specific-nf-coreconfigs-files) -* [Help](#help) +- [Using an existing config](#using-an-existing-config) + - [Configuration and parameters](#configuration-and-parameters) + - [Offline usage](#offline-usage) +- [Adding a new config](#adding-a-new-config) + - [Checking user hostnames](#checking-user-hostnames) + - [Testing](#testing) + - [Documentation](#documentation) + - [Uploading to `nf-core/configs`](#uploading-to-nf-coreconfigs) +- [Adding a new pipeline-specific config](#adding-a-new-pipeline-specific-config) + - [Pipeline-specific institutional documentation](#pipeline-specific-institutional-documentation) + - [Pipeline-specific documentation](#pipeline-specific-documentation) + - [Enabling pipeline-specific configs within a pipeline](#enabling-pipeline-specific-configs-within-a-pipeline) + - [Create the pipeline-specific `nf-core/configs` files](#create-the-pipeline-specific-nf-coreconfigs-files) +- [Help](#help) ## Using an existing config @@ -86,68 +86,70 @@ See [`nf-core/configs/docs`](https://github.com/nf-core/configs/tree/master/docs Currently documentation is available for the following systems: -* [ABIMS](docs/abims.md) -* [ALICE](docs/alice.md) -* [AWSBATCH](docs/awsbatch.md) -* [AWS_TOWER](docs/aws_tower.md) -* [AZUREBATCH](docs/azurebatch.md) -* [BIGPURPLE](docs/bigpurple.md) -* [BI](docs/bi.md) -* [BINAC](docs/binac.md) -* [BIOHPC_GEN](docs/biohpc_gen.md) -* [CAMBRIDGE](docs/cambridge.md) -* [CBE](docs/cbe.md) -* [CCGA_DX](docs/ccga_dx.md) -* [CCGA_MED](docs/ccga_med.md) -* [CFC](docs/cfc.md) -* [CHEAHA](docs/cheaha.md) -* [Computerome](docs/computerome.md) -* [CRICK](docs/crick.md) -* [CZBIOHUB_AWS](docs/czbiohub.md) -* [DENBI_QBIC](docs/denbi_qbic.md) -* [EBC](docs/ebc.md) -* [EVA](docs/eva.md) -* [FGCZ](docs/fgcz.md) -* [GENOTOUL](docs/genotoul.md) -* [GENOUEST](docs/genouest.md) -* [GIS](docs/gis.md) -* [GOOGLE](docs/google.md) -* [HASTA](docs/hasta.md) -* [HEBBE](docs/hebbe.md) -* [ICR_DAVROS](docs/icr_davros.md) -* [IMPERIAL](docs/imperial.md) -* [JAX](docs/jax.md) -* [LUGH](docs/lugh.md) -* [MAESTRO](docs/maestro.md) -* [MARVIN](docs/marvin.md) -* [MPCDF](docs/mpcdf.md) -* [MUNIN](docs/munin.md) -* [NU_GENOMICS](docs/nu_genomics.md) -* [NIHBIOWULF](docs/nihbiowulf.md) -* [OIST](docs/oist.md) -* [PASTEUR](docs/pasteur.md) -* [PHOENIX](docs/phoenix.md) -* [PRINCE](docs/prince.md) -* [ROSALIND](docs/rosalind.md) -* [SANGER](docs/sanger.md) -* [SEG_GLOBE](docs/seg_globe.md) -* [UCT_HPC](docs/uct_hpc.md) -* [UNIBE_IBU](docs/unibe_ibu.md) -* [UPPMAX](docs/uppmax.md) -* [UTD_GANYMEDE](docs/utd_ganymede.md) -* [UTD_SYSBIO](docs/utd_sysbio.md) -* [UZH](docs/uzh.md) -* [VAI](docs/vai.md) +- [ABIMS](docs/abims.md) +- [ALICE](docs/alice.md) +- [AWSBATCH](docs/awsbatch.md) +- [AWS_TOWER](docs/aws_tower.md) +- [AZUREBATCH](docs/azurebatch.md) +- [BIGPURPLE](docs/bigpurple.md) +- [BI](docs/bi.md) +- [BINAC](docs/binac.md) +- [BIOHPC_GEN](docs/biohpc_gen.md) +- [CAMBRIDGE](docs/cambridge.md) +- [CBE](docs/cbe.md) +- [CCGA_DX](docs/ccga_dx.md) +- [CCGA_MED](docs/ccga_med.md) +- [Cedars-Sinai](docs/cedars.md) +- [CFC](docs/cfc.md) +- [CHEAHA](docs/cheaha.md) +- [Computerome](docs/computerome.md) +- [CRICK](docs/crick.md) +- [CZBIOHUB_AWS](docs/czbiohub.md) +- [DENBI_QBIC](docs/denbi_qbic.md) +- [EBC](docs/ebc.md) +- [EVA](docs/eva.md) +- [FGCZ](docs/fgcz.md) +- [GENOTOUL](docs/genotoul.md) +- [GENOUEST](docs/genouest.md) +- [GIS](docs/gis.md) +- [GOOGLE](docs/google.md) +- [HASTA](docs/hasta.md) +- [HEBBE](docs/hebbe.md) +- [ICR_DAVROS](docs/icr_davros.md) +- [IMPERIAL](docs/imperial.md) +- [JAX](docs/jax.md) +- [LUGH](docs/lugh.md) +- [MAESTRO](docs/maestro.md) +- [MARVIN](docs/marvin.md) +- [MPCDF](docs/mpcdf.md) +- [MUNIN](docs/munin.md) +- [NU_GENOMICS](docs/nu_genomics.md) +- [NIHBIOWULF](docs/nihbiowulf.md) +- [OIST](docs/oist.md) +- [PASTEUR](docs/pasteur.md) +- [PHOENIX](docs/phoenix.md) +- [PRINCE](docs/prince.md) +- [ROSALIND](docs/rosalind.md) +- [SANGER](docs/sanger.md) +- [SEG_GLOBE](docs/seg_globe.md) +- [UCT_HPC](docs/uct_hpc.md) +- [UNIBE_IBU](docs/unibe_ibu.md) +- [UPPMAX](docs/uppmax.md) +- [UTD_GANYMEDE](docs/utd_ganymede.md) +- [UTD_SYSBIO](docs/utd_sysbio.md) +- [UZH](docs/uzh.md) +- [VAI](docs/vai.md) +- [VSC_UGENT](docs/vsc_ugent.md) ### Uploading to `nf-core/configs` [Fork](https://help.github.com/articles/fork-a-repo/) the [`nf-core/configs`](https://github.com/nf-core/configs/) repository to your own GitHub account. Within the local clone of your fork: -* **add** the custom config file to the [`conf/`](https://github.com/nf-core/configs/tree/master/conf) directory -* **add** the documentation file to the [`docs/`](https://github.com/nf-core/configs/tree/master/docs) directory -* **edit** and add your custom profile to the [`nfcore_custom.config`](https://github.com/nf-core/configs/blob/master/nfcore_custom.config) file in the top-level directory of the clone -* **edit** and add your custom profile to the [`README.md`](https://github.com/nf-core/configs/blob/master/README.md) file in the top-level directory of the clone +- **add** the custom config file to the [`conf/`](https://github.com/nf-core/configs/tree/master/conf) directory +- **add** the documentation file to the [`docs/`](https://github.com/nf-core/configs/tree/master/docs) directory +- **edit** and add your custom profile to the [`nfcore_custom.config`](https://github.com/nf-core/configs/blob/master/nfcore_custom.config) file in the top-level directory of the clone +- **edit** and add your custom profile to the [`README.md`](https://github.com/nf-core/configs/blob/master/README.md) file in the top-level directory of the clone In order to ensure that the config file is tested automatically with GitHub Actions please add your profile name to the `profile:` scope (under strategy matrix) in [`.github/workflows/main.yml`](.github/workflows/main.yml). If you forget to do this the tests will fail with the error: @@ -186,25 +188,30 @@ Note that pipeline-specific configs are not required and should only be added if Currently documentation is available for the following pipelines within specific profiles: -* ampliseq - * [BINAC](docs/pipeline/ampliseq/binac.md) - * [UPPMAX](docs/pipeline/ampliseq/uppmax.md) -* eager - * [EVA](docs/pipeline/eager/eva.md) -* rnafusion - * [MUNIN](docs/pipeline/rnafusion/munin.md) -* sarek - * [MUNIN](docs/pipeline/sarek/munin.md) - * [UPPMAX](docs/pipeline/sarek/uppmax.md) -* rnavar - * [MUNIN](docs/pipeline/rnavar/munin.md) +- ampliseq + - [BINAC](docs/pipeline/ampliseq/binac.md) + - [UPPMAX](docs/pipeline/ampliseq/uppmax.md) +- eager + - [EVA](docs/pipeline/eager/eva.md) +- mag + - [EVA](docs/pipeline/mag/eva.md) +- rnafusion + - [MUNIN](docs/pipeline/rnafusion/munin.md) +- rnavar + - [MUNIN](docs/pipeline/rnavar/munin.md) +- sarek + - [MUNIN](docs/pipeline/sarek/munin.md) + - [UPPMAX](docs/pipeline/sarek/uppmax.md) +- taxprofiler + - [EVA](docs/pipeline/taxprofiler/eva.md) + - [hasta](docs/pipeline/taxprofiler/hasta.md) ### Pipeline-specific documentation Currently documentation is available for the following pipeline: -* viralrecon - * [genomes](docs/pipeline/viralrecon/genomes.md) +- viralrecon + - [genomes](docs/pipeline/viralrecon/genomes.md) ### Enabling pipeline-specific configs within a pipeline @@ -233,7 +240,7 @@ We will be notified automatically when you have created your pull request, and p [Fork](https://help.github.com/articles/fork-a-repo/) the [`nf-core/configs`](https://github.com/nf-core/configs/) repository to your own GitHub account. And add or edit the following files in the local clone of your fork. -* `pipeline/.config` +- `pipeline/.config` If not already created, create the `pipeline/.config` file, and add your custom profile to the profile scope @@ -243,18 +250,18 @@ profiles { } ``` -* `conf/pipeline//.config` +- `conf/pipeline//.config` Add the custom configuration file to the `conf/pipeline//` directory. Make sure to add an extra `params` section with `params.config_profile_description`, `params.config_profile_contact` to the top of `pipeline/.config` and set to reasonable values. Users will get information on who wrote the pipeline-specific configuration profile then when executing the nf-core pipeline and can report back if there are things missing for example. -* `docs/pipeline//.md` +- `docs/pipeline//.md` Add the documentation file to the `docs/pipeline//` directory. You will also need to edit and add your custom profile to the [`README.md`](https://github.com/nf-core/configs/blob/master/README.md) file in the top-level directory of the clone. -* `README.md` +- `README.md` Edit this file, and add the new pipeline-specific institutional profile to the list in the section Pipeline specific documentation diff --git a/conf/cedars.config b/conf/cedars.config new file mode 100644 index 0000000..d9b9027 --- /dev/null +++ b/conf/cedars.config @@ -0,0 +1,26 @@ +//Profile config names for nf-core/configs +params { + config_profile_description = 'Cedars-Sinai Medical Center HPC Profile' + config_profile_contact = 'Alex Rajewski (@rajewski)' + config_profile_url = 'https://www.cedars-sinai.edu/research/cores/informatics-computing/resources.html' + max_memory = 90.GB + max_cpus = 10 + max_time = 240.h +} + +// Specify the queing system +executor { + name = "sge" +} + +process { + penv = 'smp' + beforeScript = + """ + module load 'singularity/3.6.0' + """ +} + +singularity { + enabled = true +} diff --git a/conf/eva.config b/conf/eva.config index 7f89ac2..2440368 100644 --- a/conf/eva.config +++ b/conf/eva.config @@ -17,7 +17,7 @@ process { executor = 'sge' penv = 'smp' queue = 'all.q' - clusterOptions = { "-S /bin/bash -V -j y -o output.log -l h_vmem=${task.memory.toGiga()}G" } + clusterOptions = { "-S /bin/bash -V -j y -o output.sge -l h_vmem=${task.memory.toGiga()}G" } } executor { @@ -36,8 +36,8 @@ profiles { } process { - queue = 'archgen.q' - clusterOptions = { "-S /bin/bash -V -j y -o output.log -l h_vmem=${task.memory.toGiga()}G" } + queue = { task.memory > 700.GB ? 'bigmem.q' : 'archgen.q' } + clusterOptions = { "-S /bin/bash -V -j y -o output.sge -l h_vmem=${task.memory.toGiga()}G" } } singularity { diff --git a/conf/google.config b/conf/google.config index 4333d86..41f0e1f 100644 --- a/conf/google.config +++ b/conf/google.config @@ -15,7 +15,8 @@ google.zone = params.google_zone google.lifeSciences.debug = params.google_debug workDir = params.google_bucket google.lifeSciences.preemptible = params.google_preemptible + if (google.lifeSciences.preemptible) { - process.errorStrategy = { task.exitStatus==14 ? 'retry' : 'terminate' } + process.errorStrategy = { task.exitStatus in [8,10,14] ? 'retry' : 'terminate' } process.maxRetries = 5 } \ No newline at end of file diff --git a/conf/hasta.config b/conf/hasta.config index c5dd5e4..7e97e5a 100644 --- a/conf/hasta.config +++ b/conf/hasta.config @@ -10,6 +10,7 @@ params { singularity { enabled = true + envWhitelist = ['_JAVA_OPTIONS'] } params { diff --git a/conf/ifb_core.config b/conf/ifb_core.config index 50a72f4..6331278 100644 --- a/conf/ifb_core.config +++ b/conf/ifb_core.config @@ -2,23 +2,22 @@ params { config_profile_description = 'The IFB core cluster profile' config_profile_contact = 'https://community.france-bioinformatique.fr' - config_profile_url = 'https://www.france-bioinformatique.fr/' + config_profile_url = 'https://ifb-elixirfr.gitlab.io/cluster/doc/cluster-desc/' } singularity { - // need one image per execution enabled = true runOptions = '-B /shared' } process { executor = 'slurm' + queue = { task.time <= 24.h ? 'fast' : 'long' } } params { igenomes_ignore = true - // Max resources requested by a normal node on genotoul. - max_memory = 240.GB - max_cpus = 28 - max_time = 96.h + max_memory = 252.GB + max_cpus = 56 + max_time = 720.h } diff --git a/conf/munin.config b/conf/munin.config index 4f9c209..5f794d6 100644 --- a/conf/munin.config +++ b/conf/munin.config @@ -20,9 +20,9 @@ process { maxForks = 46 // Limit cpus for Mutect2 - withName:'Mutect2|Mutect2Single' { + withName:'Mutect2|Mutect2Single|PileupSummariesForMutect2' { time = {48.h * task.attempt} - maxForks = 23 + maxForks = 12 } } diff --git a/conf/pipeline/eager/eva.config b/conf/pipeline/eager/eva.config index 17b5b34..f35f1ed 100644 --- a/conf/pipeline/eager/eva.config +++ b/conf/pipeline/eager/eva.config @@ -57,36 +57,41 @@ process { memory = { check_max( 256.GB * task.attempt, 'memory' ) } time = '365.d' } - + // Fixes for SGE and Java incompatibility due to Java using more memory than you tell it to use withName: makeSeqDict { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: fastqc { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + + withName: fastqc_after_clipping { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: adapter_removal { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: bwa { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga())}G,h=!(bionode01|bionode02|bionode03|bionode04|bionode05|bionode06)" } } - + withName: bwamem { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga())}G,h=!(bionode01|bionode02|bionode03|bionode04|bionode05|bionode06)" } } - + withName: circularmapper { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga())}G,h=!(bionode01|bionode02|bionode03|bionode04|bionode05|bionode06)" } } - + withName: bowtie2 { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga())}G,h=!(bionode01|bionode02|bionode03|bionode04|bionode05|bionode06)" } } @@ -94,22 +99,22 @@ process { withName: samtools_flagstat { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } } - + withName: samtools_flagstat_after_filter { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } } withName: dedup { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: markduplicates { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } memory = { check_max( 20.GB * task.attempt, 'memory' ) } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: library_merge { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } } @@ -117,12 +122,12 @@ process { withName: seqtype_merge { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } } - + withName: additional_library_merge { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } memory = { check_max( 4.GB * task.attempt, 'memory' ) } } - + withName: metagenomic_complexity_filter { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } } @@ -135,22 +140,22 @@ process { withName: maltextract { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: multivcfanalyzer { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: mtnucratio { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: vcf2genome { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: qualimap { @@ -161,41 +166,60 @@ process { withName: damageprofiler { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } memory = { check_max( 8.GB * task.attempt, 'memory' ) } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: circularmapper { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: circulargenerator { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } withName: preseq { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } errorStrategy = { task.exitStatus in [143,137,104,134,139] ? 'retry' : 'ignore' } } - + withName: genotyping_ug { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } - errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } + + withName:get_software_versions { + cache = false + clusterOptions = { "-S /bin/bash -V -l h=!(bionode06)" } + beforeScript = 'export _JAVA_OPTIONS="-XX:ParallelGCThreads=1 -Xmx512m"; export OPENBLAS_NUM_THREADS=1; export OMP_NUM_THREADS=1' + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toMega())}M" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + + withName:eigenstrat_snp_coverage { + beforeScript = 'export OPENBLAS_NUM_THREADS=1; export OMP_NUM_THREADS=1' + } + + withName:kraken_merge { + beforeScript = 'export OPENBLAS_NUM_THREADS=1; export OMP_NUM_THREADS=1' + } + withName:multiqc { + beforeScript = 'export OPENBLAS_NUM_THREADS=1; export OMP_NUM_THREADS=1;' + } } profiles { - + medium_data { - + params { // Specific nf-core/configs params config_profile_contact = 'James Fellows Yates (@jfy133)' config_profile_description = 'nf-core/eager medium-data EVA profile provided by nf-core/configs' } - + executor { queueSize = 8 } @@ -250,11 +274,16 @@ profiles { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: fastqc { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } + + withName: fastqc_after_clipping { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } withName: adapter_removal { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } @@ -264,7 +293,7 @@ profiles { withName: samtools_flagstat { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } } - + withName: samtools_flagstat_after_filter { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } } @@ -279,7 +308,7 @@ profiles { memory = { check_max( 32.GB * task.attempt, 'memory' ) } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: library_merge { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } } @@ -348,7 +377,7 @@ profiles { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: genotyping_ug { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } @@ -358,18 +387,17 @@ profiles { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } errorStrategy = { task.exitStatus in [143,137,104,134,139] ? 'retry' : 'ignore' } } - } } big_data { - + params { // Specific nf-core/configs params config_profile_contact = 'James Fellows Yates (@jfy133)' config_profile_description = 'nf-core/eager big-data EVA profile provided by nf-core/configs' } - + executor { queueSize = 6 } @@ -424,11 +452,16 @@ profiles { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: fastqc { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } + + withName: fastqc_after_clipping { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } withName: adapter_removal { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } @@ -438,7 +471,7 @@ profiles { withName: samtools_flagstat { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } } - + withName: samtools_flagstat_after_filter { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } } @@ -453,7 +486,7 @@ profiles { memory = { check_max( 48.GB * task.attempt, 'memory' ) } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: library_merge { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } memory = { check_max( 6.GB * task.attempt, 'memory' ) } @@ -510,7 +543,7 @@ profiles { withName: damageprofiler { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } - memory = { check_max( 32.GB * task.attempt, 'memory' ) } + memory = { check_max( 32.GB * task.attempt, 'memory' ) } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } @@ -523,20 +556,19 @@ profiles { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: genotyping_ug { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } } - + withName: preseq { clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 6)}G" } errorStrategy = { task.exitStatus in [143,137,104,134,139] ? 'retry' : 'ignore' } } - } } - + pathogen_loose { params { config_profile_description = 'Pathogen (loose) MPI-EVA profile, provided by nf-core/configs.' diff --git a/conf/pipeline/mag/eva.config b/conf/pipeline/mag/eva.config new file mode 100644 index 0000000..81d8d0c --- /dev/null +++ b/conf/pipeline/mag/eva.config @@ -0,0 +1,14 @@ +params { + // Specific nf-core/configs params + config_profile_contact = 'James Fellows Yates (@jfy133)' + config_profile_description = 'nf-core/mag EVA profile provided by nf-core/configs' +} + +process { + + withName: FASTQC { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + +} diff --git a/conf/pipeline/raredisease/hasta.config b/conf/pipeline/raredisease/hasta.config index 96e3332..a076dbc 100644 --- a/conf/pipeline/raredisease/hasta.config +++ b/conf/pipeline/raredisease/hasta.config @@ -7,4 +7,7 @@ process { cpus = { check_max( 16 * task.attempt, 'cpus' ) } memory = { check_max( 80.GB * task.attempt, 'memory' ) } } + withName:'QUALIMAP_BAMQC' { + ext.args = { "--java-mem-size=${task.memory.giga / 1.15 as long}G" } + } } \ No newline at end of file diff --git a/conf/pipeline/sarek/munin.config b/conf/pipeline/sarek/munin.config index 6a73b8c..77f76f0 100644 --- a/conf/pipeline/sarek/munin.config +++ b/conf/pipeline/sarek/munin.config @@ -23,7 +23,7 @@ params { // Specific nf-core/sarek process configuration process { withLabel:sentieon { - module = {params.sentieon ? 'sentieon/202112.00' : null} + module = {params.sentieon ? 'sentieon/202112.02' : null} container = {params.sentieon ? null : container} } } diff --git a/conf/pipeline/sarek/uppmax.config b/conf/pipeline/sarek/uppmax.config index 46d95a5..b52c4ff 100644 --- a/conf/pipeline/sarek/uppmax.config +++ b/conf/pipeline/sarek/uppmax.config @@ -26,3 +26,8 @@ if (hostname ==~ "r.*") { if (hostname ==~ "i.*") { params.single_cpu_mem = 15.GB } + +// Miarka-specific config +if (hostname ==~ "m.*") { + params.single_cpu_mem = 7.GB +} diff --git a/conf/pipeline/taxprofiler/eva.config b/conf/pipeline/taxprofiler/eva.config new file mode 100644 index 0000000..59b5fc6 --- /dev/null +++ b/conf/pipeline/taxprofiler/eva.config @@ -0,0 +1,29 @@ +params { + // Specific nf-core/configs params + config_profile_contact = 'James Fellows Yates (@jfy133)' + config_profile_description = 'nf-core/taxprofiler EVA profile provided by nf-core/configs' +} + +process { + + withName: BBMAP_BBDUK { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 2)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + + withName: MALT_RUN { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 4)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + + withName: METAPHLAN3 { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 3)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + + withName: MEGAN_RMA2INFO { + clusterOptions = { "-S /bin/bash -V -l h_vmem=${(task.memory.toGiga() * 4)}G" } + errorStrategy = { task.exitStatus in [1,143,137,104,134,139,140] ? 'retry' : 'finish' } + } + +} diff --git a/conf/pipeline/taxprofiler/hasta.config b/conf/pipeline/taxprofiler/hasta.config new file mode 100644 index 0000000..1241558 --- /dev/null +++ b/conf/pipeline/taxprofiler/hasta.config @@ -0,0 +1,16 @@ +params { + // Specific nf-core/configs params + config_profile_contact = 'Sofia Stamouli (@sofstam)' + config_profile_description = 'nf-core/taxprofiler HASTA profile provided by nf-core/configs' +} + +process { + + withName:'BBMAP_BBDUK' { + memory = { check_max( 80.GB * task.attempt, 'memory' ) } + } + + withName: 'MALT_RUN' { + memory = { check_max( 80.GB * task.attempt, 'memory' ) } + } +} diff --git a/conf/sahmri.config b/conf/sahmri.config new file mode 100644 index 0000000..b47db52 --- /dev/null +++ b/conf/sahmri.config @@ -0,0 +1,34 @@ +params { + config_profile_description = 'South Australian Health and Medical Research Institute (SAHMRI) HPC cluster profile.' + config_profile_contact = 'Nathan Watson-Haigh (nathan.watson-haigh@sahmri.com)' + config_profile_url = "https://sahmri.org.au" + max_memory = 375.GB + max_cpus = 32 + max_time = 14.d + igenomes_base = '/cancer/storage/shared/igenomes/references/' +} +process { + executor = 'slurm' + queue = 'sahmri_prod_hpc,sahmri_cancer_hpc' + maxRetries = 2 + + cpus = { check_max( 2 * task.attempt, 'cpus') } + memory = { check_max( 1.GB * task.attempt, 'memory') } + time = { check_max( 10.m * task.attempt, 'time') } +} +executor { + queueSize = 50 + submitRateLimit = '10 sec' +} +singularity { + enabled = true + autoMounts = true + beforeScript = 'export PATH=/apps/opt/singularity/latest/bin:${PATH}' + cacheDir = '/cancer/storage/shared/simg' +} +cleanup = true +profiles { + debug { + cleanup = false + } +} diff --git a/conf/uppmax.config b/conf/uppmax.config index 9f73c7d..e743072 100644 --- a/conf/uppmax.config +++ b/conf/uppmax.config @@ -23,7 +23,7 @@ singularity { def hostname = "r1" try { - hostname = "sinfo --local -N -h | grep -m 1 -F -v CLUSTER: | cut -f1 -d' ' ".execute().text.trim() + hostname = ['/bin/bash', '-c', 'sinfo --local -N -h | grep -m 1 -F -v CLUSTER: | cut -f1 -d" "'].execute().text.trim() } catch (java.io.IOException e) { System.err.println("WARNING: Could not run sinfo to determine current cluster, defaulting to rackham") } @@ -36,6 +36,20 @@ def clusterOptionsCreator = { m -> return base } + // cluster is miarka + if (hostname.startsWith("m")) { + // job will fit on a regular node + if (m <= 357.GB) { + return base + } + // job requires at least a 2TB node + if (m <= 2000.GB) { + return base + " --mem 2TB " + } + // job requires the largest node + return base + " -C mem4TB " + } + if (m <= 250.GB) { return base + " -p node -C mem256GB " } @@ -77,6 +91,14 @@ if (hostname.startsWith("i")) { params.config_profile_description = 'UPPMAX (Irma) cluster profile provided by nf-core/configs.' } +// Cluster: Miarka +if (hostname.startsWith("m")) { + params.max_memory = 357.GB + params.max_cpus = 48 + params.max_time = 480.h + params.config_profile_description = 'UPPMAX (Miarka) cluster profile provided by nf-core/configs.' +} + // Cluster: Rackham if (hostname.startsWith("r")) { params.max_cpus = 20 diff --git a/conf/vsc_ugent.config b/conf/vsc_ugent.config new file mode 100644 index 0000000..560367a --- /dev/null +++ b/conf/vsc_ugent.config @@ -0,0 +1,115 @@ +// Specify the work directory +workDir = "$VSC_SCRATCH_VO_USER/work" + +// Perform work directory cleanup when the run has succesfully completed +cleanup = true + +// Reduce the job submit rate to about 10 per second, this way the server won't be bombarded with jobs +executor { + submitRateLimit = '10 sec' +} + +// Specify that singularity should be used and where the cache dir will be for the images +singularity { + enabled = true + autoMounts = true + cacheDir = "$VSC_SCRATCH_VO_USER/singularity" +} + +// Define profiles for each cluster +profiles { + skitty { + params { + config_profile_description = 'HPC_SKITTY profile for use on the Skitty cluster of the VSC HPC.' + config_profile_contact = 'Nicolas Vannieuwkerke (@nvnieuwk)' + config_profile_url = 'https://www.ugent.be/hpc/en' + max_memory = 177.GB + max_cpus = 36 + max_time = 72.h + } + + process { + executor = 'slurm' + queue = 'skitty' + maxRetries = 2 + beforeScript = "export SINGULARITY_CACHEDIR=$VSC_SCRATCH_VO_USER/.singularity" + scratch = "$VSC_SCRATCH_VO_USER" + } + } + + swalot { + params { + config_profile_description = 'HPC_SWALOT profile for use on the Swalot cluster of the VSC HPC.' + config_profile_contact = 'Nicolas Vannieuwkerke (@nvnieuwk)' + config_profile_url = 'https://www.ugent.be/hpc/en' + max_memory = 116.GB + max_cpus = 20 + max_time = 72.h + } + + process { + executor = 'slurm' + queue = 'swalot' + maxRetries = 2 + beforeScript = "export SINGULARITY_CACHEDIR=$VSC_SCRATCH_VO_USER/.singularity" + scratch = "$VSC_SCRATCH_VO_USER" + } + } + + victini { + params { + config_profile_description = 'HPC_VICTINI profile for use on the Victini cluster of the VSC HPC.' + config_profile_contact = 'Nicolas Vannieuwkerke (@nvnieuwk)' + config_profile_url = 'https://www.ugent.be/hpc/en' + max_memory = 88.GB + max_cpus = 36 + max_time = 72.h + } + + process { + executor = 'slurm' + queue = 'victini' + maxRetries = 2 + beforeScript = "export SINGULARITY_CACHEDIR=$VSC_SCRATCH_VO_USER/.singularity" + scratch = "$VSC_SCRATCH_VO_USER" + } + } + + kirlia { + params { + config_profile_description = 'HPC_KIRLIA profile for use on the Kirlia cluster of the VSC HPC.' + config_profile_contact = 'Nicolas Vannieuwkerke (@nvnieuwk)' + config_profile_url = 'https://www.ugent.be/hpc/en' + max_memory = 738.GB + max_cpus = 36 + max_time = 72.h + } + + process { + executor = 'slurm' + queue = 'kirlia' + maxRetries = 2 + beforeScript = "export SINGULARITY_CACHEDIR=$VSC_SCRATCH_VO_USER/.singularity" + scratch = "$VSC_SCRATCH_VO_USER" + } + } + + doduo { + params { + config_profile_description = 'HPC_DODUO profile for use on the Doduo cluster of the VSC HPC.' + config_profile_contact = 'Nicolas Vannieuwkerke (@nvnieuwk)' + config_profile_url = 'https://www.ugent.be/hpc/en' + max_memory = 250.GB + max_cpus = 96 + max_time = 72.h + } + + process { + executor = 'slurm' + queue = 'doduo' + maxRetries = 2 + beforeScript = "export SINGULARITY_CACHEDIR=$VSC_SCRATCH_VO_USER/.singularity" + scratch = "$VSC_SCRATCH_VO_USER" + } + } +} \ No newline at end of file diff --git a/docs/alice.md b/docs/alice.md index 49545b2..8e93d9f 100644 --- a/docs/alice.md +++ b/docs/alice.md @@ -13,7 +13,7 @@ module load Nextflow/21.03.0 module load Java/11.0.2 ``` -We also highly recommend specifying a location of a cache directory to store singularity images (so you re-use them across runs, and not pull each time), by specifying the location with the `$NXF_SINGULARITY_CACHE_DIR` bash environment variable in your `.bash_profile` or `.bashrc`. +We also highly recommend specifying a location of a cache directory to store singularity images (so you re-use them across runs, and not pull each time), by specifying the location with the `$NXF_SINGULARITY_CACHE_DIR` bash environment variable in your `.bash_profile` or `.bashrc`. All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. The config contains a `cleanup` command that removes the `work/` directory automatically once the pipeline has completeed successfully. If the run does not complete successfully then the `work/` dir should be removed manually to save storage space. diff --git a/docs/bi.md b/docs/bi.md index 450d0df..a55a9fa 100644 --- a/docs/bi.md +++ b/docs/bi.md @@ -6,4 +6,4 @@ To use, run the pipeline with `-profile bi`. This will download and launch the [ Before running the pipeline you will need to follow the internal documentation to run Nextflow on our systems. Similar to that, you need to set an environment variable `NXF_GLOBAL_CONFIG` to the path of the internal global config which is not publicly available here. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/bigpurple.md b/docs/bigpurple.md index 3673820..4b8bf4e 100644 --- a/docs/bigpurple.md +++ b/docs/bigpurple.md @@ -21,5 +21,5 @@ git clone this repo, copy the `bigpurple.config` from the conf folder and then y `nextflow run nf-core/ -c bigpurple.config ` ->NB: You will need an account to use the HPC cluster BigPurple in order to run the pipeline. If in doubt contact MCIT. ->NB: You will need to install nextflow in your home directory - instructions are on nextflow.io (or ask the writer of this profile). The reason there is no module for nextflow on the cluster, is that the development cycle of nextflow is rapid and it's easy to update yourself: `nextflow self-update` +> NB: You will need an account to use the HPC cluster BigPurple in order to run the pipeline. If in doubt contact MCIT. +> NB: You will need to install nextflow in your home directory - instructions are on nextflow.io (or ask the writer of this profile). The reason there is no module for nextflow on the cluster, is that the development cycle of nextflow is rapid and it's easy to update yourself: `nextflow self-update` diff --git a/docs/binac.md b/docs/binac.md index ce91b91..750274f 100644 --- a/docs/binac.md +++ b/docs/binac.md @@ -13,5 +13,5 @@ module load devel/java_jdk/1.8.0u112 module load devel/singularity/3.0.1 ``` ->NB: You will need an account to use the HPC cluster BINAC in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster BINAC in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/biohpc_gen.md b/docs/biohpc_gen.md index 1078835..c007cad 100644 --- a/docs/biohpc_gen.md +++ b/docs/biohpc_gen.md @@ -12,6 +12,6 @@ module purge module load nextflow charliecloud/0.22 ``` ->NB: Charliecloud support requires Nextflow version `21.03.0-edge` or later. ->NB: You will need an account to use the LRZ Linux cluster as well as group access to the biohpc_gen cluster in order to run nf-core pipelines. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. +> NB: Charliecloud support requires Nextflow version `21.03.0-edge` or later. +> NB: You will need an account to use the LRZ Linux cluster as well as group access to the biohpc_gen cluster in order to run nf-core pipelines. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. diff --git a/docs/cambridge.md b/docs/cambridge.md index 4f18088..598ab7a 100644 --- a/docs/cambridge.md +++ b/docs/cambridge.md @@ -3,7 +3,7 @@ All nf-core pipelines have been successfully configured for use on the Cambridge HPC cluster at the [The University of Cambridge](https://www.cam.ac.uk/). To use, run the pipeline with `-profile cambridge`. This will download and launch the [`cambridge.config`](../conf/cambridge.config) which has been pre-configured with a setup suitable for the Cambridge HPC cluster. Using this profile, either a docker image containing all of the required software will be downloaded, -and converted to a Singularity image or a Singularity image downloaded directly before execution of the pipeline. +and converted to a Singularity image or a Singularity image downloaded directly before execution of the pipeline. The latest version of Nextflow is not installed by default on the Cambridge HPC cluster. You will need to install it into a directory you have write access to. Follow these instructions from the Nextflow documentation. @@ -15,4 +15,4 @@ has finished successfully because it can get quite large, and all of the main ou > NB: You will need an account to use the Cambridge HPC cluster in order to run the pipeline. If in doubt contact IT. > NB: Nextflow will need to submit the jobs via SLURM to the Cambridge HPC cluster and as such the commands above will have to be executed on one of the login -nodes. If in doubt contact IT. +> nodes. If in doubt contact IT. diff --git a/docs/cbe.md b/docs/cbe.md index b7628d0..b0b4e7b 100644 --- a/docs/cbe.md +++ b/docs/cbe.md @@ -14,5 +14,5 @@ module load nextflow/21.10.6 A local copy of the [AWS-iGenomes](https://registry.opendata.aws/aws-igenomes/) resource has been made available on CBE so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline. You can do this by simply using the `--genome ` parameter. ->NB: You will need an account to use the HPC cluster on CBE in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster on CBE in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/ccga_dx.md b/docs/ccga_dx.md index 162661d..2904cab 100644 --- a/docs/ccga_dx.md +++ b/docs/ccga_dx.md @@ -5,4 +5,5 @@ Deployment and testing of nf-core pipelines at the CCGA DX cluster is on-going. To use, run the pipeline with `-profile ccga_dx`. This will download and launch the [`ccga_dx.config`](../conf/ccga_dx.config) which has been pre-configured with a setup suitable for the CCGA cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. Before running the pipeline you will need to have Nextflow installed. ->NB: Access to the CCGA DX cluster is restricted to IKMB/CCGA employes. Please talk to Marc Hoeppner to get access (@marchoeppner). + +> NB: Access to the CCGA DX cluster is restricted to IKMB/CCGA employes. Please talk to Marc Hoeppner to get access (@marchoeppner). diff --git a/docs/ccga_med.md b/docs/ccga_med.md index 9aa4236..f796a05 100644 --- a/docs/ccga_med.md +++ b/docs/ccga_med.md @@ -13,4 +13,4 @@ module load nextflow module load singularity ``` ->NB: Access to the CCGA Med cluster is restricted to IKMB/CCGA employees. Please talk to Marc Hoeppner to get access (@marchoeppner). +> NB: Access to the CCGA Med cluster is restricted to IKMB/CCGA employees. Please talk to Marc Hoeppner to get access (@marchoeppner). diff --git a/docs/cedars.md b/docs/cedars.md new file mode 100644 index 0000000..2abaf5d --- /dev/null +++ b/docs/cedars.md @@ -0,0 +1,7 @@ +# Cedars-Sinai Medical Center HPC + +- You will need HPC access from EIS, which can be requested in the Service Center. +- You will need to load the nextflow module on the HPC before running any pipelines (`module load nextflow`). This should automatically load Java as well. +- Run this with `-profile cedars` +- By default this config file does not specify a queue for submission, and things will thus go to `all.q`. Because of that, the memory and cpu limits have been set accordingly. +- We highly recommend specifying a location of a cache directory to store singularity images (so you re-use them across runs, and not pull each time), by specifying the location with the `$NXF_SINGULARITY_CACHE_DIR` bash environment variable in your `.bash_profile` or `.bashrc` diff --git a/docs/cfc.md b/docs/cfc.md index f96a47d..3180ac4 100644 --- a/docs/cfc.md +++ b/docs/cfc.md @@ -13,7 +13,7 @@ module load devel/java_jdk/1.8.0u121 module load devel/singularity/3.4.2 ``` ->NB: You will need an account to use the HPC cluster CFC in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster CFC in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. The queues are set to be `qbic` or `compute` and will be chosen automatically for you depending on your job submission. diff --git a/docs/cheaha.md b/docs/cheaha.md index 27d42b4..9d871c3 100644 --- a/docs/cheaha.md +++ b/docs/cheaha.md @@ -15,16 +15,16 @@ module load Nextflow All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. ->NB: You will need an account to use the HPC cluster on Cheaha in order to run the pipeline. If in doubt contact UAB IT Research Computing.

->NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes (or alternatively in an interactive partition, but be aware of time limit). If in doubt contact UAB IT Research Computing.

->NB: Instead of using `module load Nextflow`, you may instead create a conda environment (e.g: `conda create -p $USER_DATA/nf-core_nextflow_env nf-core nextflow`) if you would like to have a more personalized environment of Nextflow (versions which may not be modules yet) and nf-core tools. This __requires__ you to instead do the following: +> NB: You will need an account to use the HPC cluster on Cheaha in order to run the pipeline. If in doubt contact UAB IT Research Computing.

+> NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes (or alternatively in an interactive partition, but be aware of time limit). If in doubt contact UAB IT Research Computing.

+> NB: Instead of using `module load Nextflow`, you may instead create a conda environment (e.g: `conda create -p $USER_DATA/nf-core_nextflow_env nf-core nextflow`) if you would like to have a more personalized environment of Nextflow (versions which may not be modules yet) and nf-core tools. This **requires** you to instead do the following: ```bash module purge module load Singularity module load Anaconda3 # change path/enviroment name if according to what you created -conda activate $USER_DATA/nf-core_nextflow_env +conda activate $USER_DATA/nf-core_nextflow_env ``` ->NB: while the jobs for each process of the pipeline are sent to the appropriate nodes, the current session must remain active while the pipeline is running. We recommend to use `screen` prior to loading any modules/environments. Once the pipeline starts you can detach the screen session by typing `Ctrl-a d` so you can safely logout of HPC, while keeping the pipeline active (and you may resume the screen session with `screen -r`). Other similar tools (e.g. `tmux`) may also be used. +> NB: while the jobs for each process of the pipeline are sent to the appropriate nodes, the current session must remain active while the pipeline is running. We recommend to use `screen` prior to loading any modules/environments. Once the pipeline starts you can detach the screen session by typing `Ctrl-a d` so you can safely logout of HPC, while keeping the pipeline active (and you may resume the screen session with `screen -r`). Other similar tools (e.g. `tmux`) may also be used. diff --git a/docs/crick.md b/docs/crick.md index 156e1bc..7f2fe85 100644 --- a/docs/crick.md +++ b/docs/crick.md @@ -1,23 +1,23 @@ -# nf-core/configs: Crick (CAMP HPC) Configuration - -All nf-core pipelines have been successfully configured for use on the CAMP HPC cluster at the [The Francis Crick Institute](https://www.crick.ac.uk/). - -To use, run the pipeline with `-profile crick`. This will download and launch the [`crick.config`](../conf/crick.config) which has been pre-configured with a setup suitable for the CAMP HPC cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. - -Before running the pipeline you will need to load Nextflow and Singularity using the environment module system on CAMP. Please check the main README of the pipeline to make sure that the version of Nextflow is compatible with that required to run the pipeline. You can do this by issuing the commands below: - -```bash -## Load Nextflow and Singularity environment modules -module purge -module load Nextflow/21.04.0 -module load Singularity/3.4.2 -``` - -A local copy of the [AWS-iGenomes](https://github.com/ewels/AWS-iGenomes) resource has been made available on CAMP so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline. You can do this by simply using the `--genome ` parameter. Some of the more exotic genomes may not have been downloaded onto CAMP so have a look in the `igenomes_base` path specified in [`crick.config`](../conf/crick.config), and if your genome of interest is not present please contact [BABS](mailto:bioinformatics@crick.ac.uk). - -Alternatively, if you are running the pipeline regularly for genomes that arent available in the iGenomes resource, we recommend creating a config file with paths to your reference genome indices (see [`reference genomes documentation`](https://nf-co.re/usage/reference_genomes) for instructions). - -All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. - ->NB: You will need an account to use the HPC cluster on CAMP in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +# nf-core/configs: Crick (CAMP HPC) Configuration + +All nf-core pipelines have been successfully configured for use on the CAMP HPC cluster at the [The Francis Crick Institute](https://www.crick.ac.uk/). + +To use, run the pipeline with `-profile crick`. This will download and launch the [`crick.config`](../conf/crick.config) which has been pre-configured with a setup suitable for the CAMP HPC cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. + +Before running the pipeline you will need to load Nextflow and Singularity using the environment module system on CAMP. Please check the main README of the pipeline to make sure that the version of Nextflow is compatible with that required to run the pipeline. You can do this by issuing the commands below: + +```bash +## Load Nextflow and Singularity environment modules +module purge +module load Nextflow/21.04.0 +module load Singularity/3.4.2 +``` + +A local copy of the [AWS-iGenomes](https://github.com/ewels/AWS-iGenomes) resource has been made available on CAMP so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline. You can do this by simply using the `--genome ` parameter. Some of the more exotic genomes may not have been downloaded onto CAMP so have a look in the `igenomes_base` path specified in [`crick.config`](../conf/crick.config), and if your genome of interest is not present please contact [BABS](mailto:bioinformatics@crick.ac.uk). + +Alternatively, if you are running the pipeline regularly for genomes that arent available in the iGenomes resource, we recommend creating a config file with paths to your reference genome indices (see [`reference genomes documentation`](https://nf-co.re/usage/reference_genomes) for instructions). + +All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. + +> NB: You will need an account to use the HPC cluster on CAMP in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/czbiohub.md b/docs/czbiohub.md index 376460b..501db67 100644 --- a/docs/czbiohub.md +++ b/docs/czbiohub.md @@ -22,7 +22,7 @@ Now you can run pipelines with abandon! ### 2. Make a GitHub repo for your workflows (optional :) -To make sharing your pipelines and commands easy between your teammates, it's best to share code in a GitHub repository. One way is to store the commands in a Makefile ([example](https://github.com/czbiohub/kh-workflows/blob/master/nf-kmer-similarity/Makefile)) which can contain multiple `nextflow run` commands so that you don't need to remember the S3 bucket or output directory for every single one. [Makefiles](https://kbroman.org/minimal_make/) are broadly used in the software community for running many complex commands. Makefiles can have a lot of dependencies and be confusing, so we're only going to write *simple* Makefiles. +To make sharing your pipelines and commands easy between your teammates, it's best to share code in a GitHub repository. One way is to store the commands in a Makefile ([example](https://github.com/czbiohub/kh-workflows/blob/master/nf-kmer-similarity/Makefile)) which can contain multiple `nextflow run` commands so that you don't need to remember the S3 bucket or output directory for every single one. [Makefiles](https://kbroman.org/minimal_make/) are broadly used in the software community for running many complex commands. Makefiles can have a lot of dependencies and be confusing, so we're only going to write _simple_ Makefiles. ```bash rnaseq: @@ -120,12 +120,12 @@ You can do this by simply using the `--genome ` parameter. For Human and Mouse, we use [GENCODE](https://www.gencodegenes.org/) gene annotations. This doesn't change how you would specify the genome name, only that the pipelines run with the `czbiohub_aws` profile would be with GENCODE rather than iGenomes. ->NB: You will need an account to use the HPC cluster on PROFILE CLUSTER in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster on PROFILE CLUSTER in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. ## High Priority Queue -If you would like to run with the *High Priority* queue, specify the `highpriority` config profile after `czbiohub_aws`. When applied after the main `czbiohub_aws` config, it overwrites the process `queue` identifier. +If you would like to run with the _High Priority_ queue, specify the `highpriority` config profile after `czbiohub_aws`. When applied after the main `czbiohub_aws` config, it overwrites the process `queue` identifier. To use it, submit your run with with `-profile czbiohub_aws,highpriority`. diff --git a/docs/denbi_qbic.md b/docs/denbi_qbic.md index 0b759bd..815652d 100644 --- a/docs/denbi_qbic.md +++ b/docs/denbi_qbic.md @@ -4,5 +4,5 @@ All nf-core pipelines have been successfully configured for use on the de.NBI Cl To use, run the pipeline with `-profile denbi_qbic`. This will download and launch the [`denbi_qbic.config`](../conf/denbi_qbic.config) which has been pre-configured with a setup suitable for the automatically created cluster. Using this profile, a Docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. ->NB: You will need an account to use de.NBI Cluster in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use de.NBI Cluster in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/eva.md b/docs/eva.md index 24a964c..d71be10 100644 --- a/docs/eva.md +++ b/docs/eva.md @@ -4,7 +4,11 @@ All nf-core pipelines have been successfully configured for use on the Departmen To use, run the pipeline with `-profile eva`. You can further with optimise submissions by specifying which cluster queue you are using e,g, `-profile eva,archgen`. This will download and launch the [`eva.config`](../conf/eva.config) which has been pre-configured with a setup suitable for the `all.q` queue. The number of parallel jobs that run is currently limited to 8. -Using this profile, a docker image containing all of the required software will be downloaded, and converted to a `singularity` image before execution of the pipeline. The image will currently be centrally stored here: +Using this profile, a docker image containing all of the required software will be downloaded, and converted to a `singularity` image before execution of the pipeline. + +Institute-specific pipeline profiles exists for: + +- eager ## Additional Profiles @@ -16,12 +20,13 @@ If you specify `-profile eva,archgen` you will be able to use the nodes availabl Note the following characteristics of this profile: -- By default, job resources are assigned a maximum number of CPUs of 32, 256 GB maximum memory and 720.h maximum wall time. +- By default, job resources are assigned a maximum number of CPUs of 32, 256 GB maximum memory and 365 day maximum wall time. - Using this profile will currently store singularity images in a cache under `/mnt/archgen/users/singularity_scratch/cache/`. All archgen users currently have read/write access to this directory, however this will likely change to a read-only directory in the future that will be managed by the IT team. - Intermediate files will be _automatically_ cleaned up (see `debug` below if you don't want this to happen) on successful run completion. +- Jobs submitted with >700.GB will automatically be submitted to the dynamic `bigmem.q`. ->NB: You will need an account and VPN access to use the cluster at MPI-EVA in order to run the pipeline. If in doubt contact the IT team. ->NB: Nextflow will need to submit the jobs via SGE to the clusters and as such the commands above will have to be executed on one of the head nodes. If in doubt contact IT. +> NB: You will need an account and VPN access to use the cluster at MPI-EVA in order to run the pipeline. If in doubt contact the IT team. +> NB: Nextflow will need to submit the jobs via SGE to the clusters and as such the commands above will have to be executed on one of the head nodes. If in doubt contact IT. ### debug diff --git a/docs/genotoul.md b/docs/genotoul.md index b86cf66..517ee42 100644 --- a/docs/genotoul.md +++ b/docs/genotoul.md @@ -65,11 +65,11 @@ sbatch nfcore-rnaseq.sh By default, available mount points are: -* /bank -* /home -* /save -* /work -* /work2 +- /bank +- /home +- /save +- /work +- /work2 To have access to specific other mount point (such as nosave or project) you can add a config profile file with option `-profile` and which contain: @@ -84,5 +84,5 @@ A local copy of several genomes are available in `/bank` directory. See our [databank page](http://bioinfo.genotoul.fr/index.php/resources-2/databanks/) to search for your favorite genome. ->NB: You will need an account to use the HPC cluster on Genotoul in order -to run the pipeline. If in doubt see [http://bioinfo.genotoul.fr/](http://bioinfo.genotoul.fr/). +> NB: You will need an account to use the HPC cluster on Genotoul in order +> to run the pipeline. If in doubt see [http://bioinfo.genotoul.fr/](http://bioinfo.genotoul.fr/). diff --git a/docs/icr_davros.md b/docs/icr_davros.md index 93bcf06..5fc0886 100644 --- a/docs/icr_davros.md +++ b/docs/icr_davros.md @@ -1,22 +1,22 @@ -# nf-core/configs: Institute of Cancer Research (Davros HPC) Configuration - -Deployment and testing of nf-core pipelines at the Davros cluster is on-going. - -To run an nf-core pipeline on Davros, run the pipeline with `-profile icr_davros`. This will download and launch the [`icr_davros.config`](../conf/icr_davros.config) which has been pre-configured with a setup suitable for the Davros HPC cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. - -Before running the pipeline you will need to load Nextflow using the environment module system. You can do this by issuing the commands below: - -```bash -## Load Nextflow environment modules -module load Nextflow/19.10.0 -``` - -Singularity is installed on the compute nodes of Davros, but not the login nodes. There is no module for Singularity. - -A subset of the [AWS-iGenomes](https://github.com/ewels/AWS-iGenomes) resource has been made available locally on Davros so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline you want to execute. You can do this by simply using the `--genome ` parameter. Some of the more exotic genomes may not have been downloaded onto Davros so have a look in the `igenomes_base` path specified in [`icr_davros.config`](../conf/icr_davros.config), and if your genome of interest isn't present please contact [Scientific Computing](mailto:schelpdesk@icr.ac.uk). - -Alternatively, if you are running the pipeline regularly for genomes that arent available in the iGenomes resource, we recommend creating a config file with paths to your reference genome indices (see [`reference genomes documentation`](https://nf-co.re/usage/reference_genomes) for instructions). - -All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large. All of the main output files will be saved in the `results/` directory. - ->NB: Nextflow will need to submit the jobs via LSF to the HPC cluster. This can be done from an interactive or normal job. If in doubt contact Scientific Computing. +# nf-core/configs: Institute of Cancer Research (Davros HPC) Configuration + +Deployment and testing of nf-core pipelines at the Davros cluster is on-going. + +To run an nf-core pipeline on Davros, run the pipeline with `-profile icr_davros`. This will download and launch the [`icr_davros.config`](../conf/icr_davros.config) which has been pre-configured with a setup suitable for the Davros HPC cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. + +Before running the pipeline you will need to load Nextflow using the environment module system. You can do this by issuing the commands below: + +```bash +## Load Nextflow environment modules +module load Nextflow/19.10.0 +``` + +Singularity is installed on the compute nodes of Davros, but not the login nodes. There is no module for Singularity. + +A subset of the [AWS-iGenomes](https://github.com/ewels/AWS-iGenomes) resource has been made available locally on Davros so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline you want to execute. You can do this by simply using the `--genome ` parameter. Some of the more exotic genomes may not have been downloaded onto Davros so have a look in the `igenomes_base` path specified in [`icr_davros.config`](../conf/icr_davros.config), and if your genome of interest isn't present please contact [Scientific Computing](mailto:schelpdesk@icr.ac.uk). + +Alternatively, if you are running the pipeline regularly for genomes that arent available in the iGenomes resource, we recommend creating a config file with paths to your reference genome indices (see [`reference genomes documentation`](https://nf-co.re/usage/reference_genomes) for instructions). + +All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large. All of the main output files will be saved in the `results/` directory. + +> NB: Nextflow will need to submit the jobs via LSF to the HPC cluster. This can be done from an interactive or normal job. If in doubt contact Scientific Computing. diff --git a/docs/ifb_core.md b/docs/ifb_core.md index 90c0eb1..caf588a 100644 --- a/docs/ifb_core.md +++ b/docs/ifb_core.md @@ -6,7 +6,8 @@ To use, run the pipeline with `-profile ifb_core`. This will download and launch ## How to use on IFB core -Before running the pipeline you will need to load Nextflow using the environment module system on IFB core. You can do this by issuing the commands below: +Here is [the link to the cluster's documentation](https://ifb-elixirfr.gitlab.io/cluster/doc/quick-start/). +Before running the pipeline you will need to load Nextflow and other dependencies using the environment module system on IFB core. You can do this by issuing the commands below: ```bash # Login to a compute node @@ -14,7 +15,10 @@ srun --pty bash ## Load Nextflow and Singularity environment modules module purge -module load nextflow/20.04.1 +module load nextflow +module load singularity +module load openjdk + # Run a downloaded/git-cloned nextflow workflow from nextflow run \\ @@ -37,4 +41,4 @@ A local copy of several genomes are available in `/shared/bank` directory. See our [databank page](https://ifb-elixirfr.gitlab.io/cluster/doc/banks/) to search for your favorite genome. ->NB: You will need an account to use the HPC cluster on IFB core in order to run the pipeline. If in doubt contact IT or go to [account page](https://my.cluster.france-bioinformatique.fr/manager2/login). +> NB: You will need an account to use the HPC cluster on IFB core in order to run the pipeline. If in doubt contact IT or go to [account page](https://my.cluster.france-bioinformatique.fr/manager2/login). diff --git a/docs/imperial.md b/docs/imperial.md index 158827c..275186c 100644 --- a/docs/imperial.md +++ b/docs/imperial.md @@ -12,7 +12,7 @@ module load anaconda3/personal conda install -c bioconda nextflow ``` ->NB: You will need an account to use the HPC cluster CX1 in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. ->NB: To submit jobs to the Imperial College MEDBIO cluster, use `-profile imperial,medbio` instead. ->NB: You will need a restricted access account to use the HPC cluster MEDBIO. +> NB: You will need an account to use the HPC cluster CX1 in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: To submit jobs to the Imperial College MEDBIO cluster, use `-profile imperial,medbio` instead. +> NB: You will need a restricted access account to use the HPC cluster MEDBIO. diff --git a/docs/jax.md b/docs/jax.md index d38cfbe..45f100e 100644 --- a/docs/jax.md +++ b/docs/jax.md @@ -4,5 +4,5 @@ All nf-core pipelines have been successfully configured for use on the JAX Sumne To use, run the pipeline with `-profile jax`. This will download and launch the [`jax.config`](../conf/jax.config) which has been pre-configured with a setup suitable for JAX Sumner cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline and slurm will be used as well. ->NB: You will need an account to use the HPC cluster JAX in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow should not be executed on the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster JAX in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow should not be executed on the login nodes. If in doubt contact IT. diff --git a/docs/leicester.md b/docs/leicester.md index 79445af..6aed54e 100644 --- a/docs/leicester.md +++ b/docs/leicester.md @@ -2,7 +2,7 @@ All nf-core pipelines have been successfully configured for use on the ALICE and SPECTRE cluster at the University of Leicester. -To use, run the pipeline with `-profile leicester`. This will download and launch the [`leicester.config`](../conf/leicester.config ) which has been pre-configured with a setup suitable for the Leicester cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. +To use, run the pipeline with `-profile leicester`. This will download and launch the [`leicester.config`](../conf/leicester.config) which has been pre-configured with a setup suitable for the Leicester cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. ->NB: You will need an account to use the ALICE and SPECTRE cluster in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the ALICE and SPECTRE cluster in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/lugh.md b/docs/lugh.md index 567071f..3d71c70 100644 --- a/docs/lugh.md +++ b/docs/lugh.md @@ -23,12 +23,12 @@ The configuration file will load prerequisite modules for users (`Java` & `Singu ## Queue Resources | Queue | Hostnames | Max Memory | Max CPUS | Max Time | -|---------|----------------|------------|----------|----------| +| ------- | -------------- | ---------- | -------- | -------- | | MSC | compute[01-03] | 32GB | 16 | 336.h | | Normal | compute[10-29] | 64GB | 16 | 240.h | | Highmem | compute[04-09] | 128GB | 32 | 2880.h | -*** +--- The configuration profile design is very simple. If your process exceeds 64GB memory or 16 cpus, it is sent to the `highmem` queue. If not, it is sent to the `normal` queue. Please do not use the `MSC` queue, this is reserved for Masters students. diff --git a/docs/mpcdf.md b/docs/mpcdf.md index 793fad5..a887e22 100644 --- a/docs/mpcdf.md +++ b/docs/mpcdf.md @@ -10,7 +10,7 @@ Currently profiles for the following clusters are supported: `cobra`, `raven` All profiles use `singularity` as the corresponding containerEngine. To prevent repeatedly downloading the same singularity image for every pipeline run, for all profiles we recommend specifying a cache location in your `~/.bash_profile` with the `$NXF_SINGULARITY_CACHEDIR` bash variable. ->NB: Nextflow will need to submit the jobs via SLURM to the clusters and as such the commands above will have to be executed on one of the head nodes. Check the [MPCDF documentation](https://www.mpcdf.mpg.de/services/computing). +> NB: Nextflow will need to submit the jobs via SLURM to the clusters and as such the commands above will have to be executed on one of the head nodes. Check the [MPCDF documentation](https://www.mpcdf.mpg.de/services/computing). ## Global Profiles diff --git a/docs/munin.md b/docs/munin.md index 167ff9b..5983e4d 100644 --- a/docs/munin.md +++ b/docs/munin.md @@ -33,4 +33,4 @@ Example: `nextflow run -profile munin,docker` A local copy of the iGenomes resource has been made available on the MUNIN cluster so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline. You can do this by simply using the `--genome ` parameter. ->NB: You will need an account to use the MUNIN cluster in order to run the pipeline. If in doubt contact @szilva. +> NB: You will need an account to use the MUNIN cluster in order to run the pipeline. If in doubt contact @szilva. diff --git a/docs/nihbiowulf.md b/docs/nihbiowulf.md index c563b00..4552b4f 100644 --- a/docs/nihbiowulf.md +++ b/docs/nihbiowulf.md @@ -21,5 +21,5 @@ A partial local copy of the iGenomes resource is available on Biowulf. This is a You can do this by simply using the `--genome ` parameter. ->NB: You will need an account to use the HPC cluster on Biowulf in order to run the pipeline. If in doubt contact CIT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster. The master process submitting jobs should be run either as a batch job or on an interactive node - not on the biowulf login node. If in doubt contact Biowulf staff. +> NB: You will need an account to use the HPC cluster on Biowulf in order to run the pipeline. If in doubt contact CIT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster. The master process submitting jobs should be run either as a batch job or on an interactive node - not on the biowulf login node. If in doubt contact Biowulf staff. diff --git a/docs/oist.md b/docs/oist.md index 8c4a68c..5ed31d1 100644 --- a/docs/oist.md +++ b/docs/oist.md @@ -3,19 +3,19 @@ The nf-core pipelines [rnaseq](https://nf-co.re/rnaseq) and [eager](https://nf-co.re/eager) have been successfully tested on the _Deigo_ cluster at the Okinawa Institute of Science and Technology Graduate University -([OIST](https://www.oist.jp)). We have no reason to expect that other +([OIST](https://www.oist.jp)). We have no reason to expect that other pipelines would not work. -To use, run the pipeline with `-profile oist`. This will download and launch +To use, run the pipeline with `-profile oist`. This will download and launch the [`oist.config`](../conf/oist.config) which has been pre-configured with a -setup suitable for _Deigo_. Using this profile, a docker image containing all +setup suitable for _Deigo_. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. ## Below are non-mandatory information e.g. on modules to load etc Before running the pipeline you will need to load Nextflow and Singularity -using the environment module system on _Deigo_. You can do this by issuing the +using the environment module system on _Deigo_. You can do this by issuing the commands below: ```bash @@ -25,9 +25,9 @@ ml bioinfo-ugrp-modules ml Other/Nextflow ``` ->NB: You will need an account to use the _Deigo_ cluster in order to run the ->pipeline. If in doubt contact IT. +> NB: You will need an account to use the _Deigo_ cluster in order to run the +> pipeline. If in doubt contact IT. > ->NB: Nextflow will submit the jobs via the SLURM scheduler to the HPC cluster ->and as such the commands above will have to be executed on one of the login ->nodes. If in doubt contact IT. +> NB: Nextflow will submit the jobs via the SLURM scheduler to the HPC cluster +> and as such the commands above will have to be executed on one of the login +> nodes. If in doubt contact IT. diff --git a/docs/pasteur.md b/docs/pasteur.md index b7d37fa..775a9b3 100644 --- a/docs/pasteur.md +++ b/docs/pasteur.md @@ -18,15 +18,15 @@ To do that: 1. Create a virtualenv to install nf-core - ```bash - module purge - module load Python/3.6.0 - module load java - module load singularity - cd /path/to/nf-core/workflows - virtualenv .venv -p python3 - . .venv/bin/activate - ``` + ```bash + module purge + module load Python/3.6.0 + module load java + module load singularity + cd /path/to/nf-core/workflows + virtualenv .venv -p python3 + . .venv/bin/activate + ``` 2. Install nf-core: [here](https://nf-co.re/tools#installation) 3. Get nf-core pipeline and container: [here](https://nf-co.re/tools#downloading-pipelines-for-offline-use) diff --git a/docs/pipeline/ampliseq/binac.md b/docs/pipeline/ampliseq/binac.md index fb3403e..9d985b1 100644 --- a/docs/pipeline/ampliseq/binac.md +++ b/docs/pipeline/ampliseq/binac.md @@ -14,4 +14,4 @@ Example: `nextflow run nf-core/ampliseq -profile binac` Specific configurations for BINAC has been made for ampliseq. -* Specifies the `TZ` `ENV` variable to be `Europe/Berlin` to fix a QIIME2 issue +- Specifies the `TZ` `ENV` variable to be `Europe/Berlin` to fix a QIIME2 issue diff --git a/docs/pipeline/ampliseq/uppmax.md b/docs/pipeline/ampliseq/uppmax.md index 7061bdc..4753469 100644 --- a/docs/pipeline/ampliseq/uppmax.md +++ b/docs/pipeline/ampliseq/uppmax.md @@ -14,4 +14,4 @@ Example: `nextflow run nf-core/ampliseq -profile uppmax` Specific configurations for UPPMAX has been made for ampliseq. -* Makes sure that a fat node is allocated for training and applying a Bayesian classifier. +- Makes sure that a fat node is allocated for training and applying a Bayesian classifier. diff --git a/docs/pipeline/eager/mpcdf.config b/docs/pipeline/eager/mpcdf.md similarity index 100% rename from docs/pipeline/eager/mpcdf.config rename to docs/pipeline/eager/mpcdf.md diff --git a/docs/pipeline/mag/eva.md b/docs/pipeline/mag/eva.md new file mode 100644 index 0000000..7d98117 --- /dev/null +++ b/docs/pipeline/mag/eva.md @@ -0,0 +1,15 @@ +# nf-core/configs: eva mag specific configuration + +Extra specific configuration for mag pipeline + +## Usage + +To use, run the pipeline with `-profile eva`. + +This will download and launch the mag specific [`eva.config`](../../../conf/pipeline/mag/eva.config) which has been pre-configured with a setup suitable for the MPI-EVA cluster. + +Example: `nextflow run nf-core/mag -profile eva` + +## mag specific configurations for eva + +Specific configurations for eva has been made for mag, primarily adjusting SGE memory requirements of Java tools (e.g. FastQC). diff --git a/docs/pipeline/rnafusion/munin.md b/docs/pipeline/rnafusion/munin.md index 607db9e..3f6d6d0 100644 --- a/docs/pipeline/rnafusion/munin.md +++ b/docs/pipeline/rnafusion/munin.md @@ -14,5 +14,5 @@ Example: `nextflow run nf-core/rnafusion -profile munin` Specific configurations for `MUNIN` has been made for rnafusion. -* `cpus`, `memory` and `time` max requirements. -* Paths to specific references and indexes +- `cpus`, `memory` and `time` max requirements. +- Paths to specific references and indexes diff --git a/docs/pipeline/rnavar/munin.md b/docs/pipeline/rnavar/munin.md index e4fd11f..214d7fc 100644 --- a/docs/pipeline/rnavar/munin.md +++ b/docs/pipeline/rnavar/munin.md @@ -16,34 +16,34 @@ Specific configurations for `MUNIN` has been made for rnavar. Genome references -* Path to `fasta`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_genome.fa` -* Path to `fasta_fai`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_genome.fa.fai` -* Path to `gtf`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_annot.gtf` -* Path to `gene_bed`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_annot.bed` +- Path to `fasta`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_genome.fa` +- Path to `fasta_fai`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_genome.fa.fai` +- Path to `gtf`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_annot.gtf` +- Path to `gene_bed`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/ref_annot.bed` Known genome resources -* Path to `dbsnp`: `/data1/references/annotations/GATK_bundle/dbsnp_146.hg38.vcf.gz` -* Path to `dbsnp_tbi`: `/data1/references/annotations/GATK_bundle/dbsnp_146.hg38.vcf.gz.tbi` -* Path to `known_indels`: `/data1/references/annotations/GATK_bundle/Mills_and_1000G_gold_standard.indels.hg38.vcf.gz` -* Path to `known_indels_tbi`: `/data1/references/annotations/GATK_bundle/Mills_and_1000G_gold_standard.indels.hg38.vcf.gz.tbi` +- Path to `dbsnp`: `/data1/references/annotations/GATK_bundle/dbsnp_146.hg38.vcf.gz` +- Path to `dbsnp_tbi`: `/data1/references/annotations/GATK_bundle/dbsnp_146.hg38.vcf.gz.tbi` +- Path to `known_indels`: `/data1/references/annotations/GATK_bundle/Mills_and_1000G_gold_standard.indels.hg38.vcf.gz` +- Path to `known_indels_tbi`: `/data1/references/annotations/GATK_bundle/Mills_and_1000G_gold_standard.indels.hg38.vcf.gz.tbi` STAR index -* Path to `star_index`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/STAR.2.7.9a_2x151bp/` -* Params `read_length` set to `151` +- Path to `star_index`: `/data1/references/CTAT_GenomeLib_v37_Mar012021/GRCh38_gencode_v37_CTAT_lib_Mar012021.plug-n-play/ctat_genome_lib_build_dir/STAR.2.7.9a_2x151bp/` +- Params `read_length` set to `151` Variant annotation configurations -* Params `annotation_cache` and `cadd_cache` set to `true` -* Params `snpeff_db` set to `GRCh38.99` -* Params `vep_cache_version` set to `99` -* Params `vep_genome` set to `GRCh38` -* Path to `snpeff_cache`: `/data1/cache/snpEff/` -* Path to `vep_cache`: `/data1/cache/VEP/` -* Path to `pon`: `/data1/PON/vcfs/BTB.PON.vcf.gz` -* Path to `pon_index`: `/data1/PON/vcfs/BTB.PON.vcf.gz.tbi` -* Path to `cadd_indels`: `/data1/cache/CADD/v1.4/InDels.tsv.gz` -* Path to `cadd_indels_tbi`: `/data1/cache/CADD/v1.4/InDels.tsv.gz.tbi` -* Path to `cadd_wg_snvs`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz` -* Path to `cadd_wg_snvs_tbi`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz.tbi` +- Params `annotation_cache` and `cadd_cache` set to `true` +- Params `snpeff_db` set to `GRCh38.99` +- Params `vep_cache_version` set to `99` +- Params `vep_genome` set to `GRCh38` +- Path to `snpeff_cache`: `/data1/cache/snpEff/` +- Path to `vep_cache`: `/data1/cache/VEP/` +- Path to `pon`: `/data1/PON/vcfs/BTB.PON.vcf.gz` +- Path to `pon_index`: `/data1/PON/vcfs/BTB.PON.vcf.gz.tbi` +- Path to `cadd_indels`: `/data1/cache/CADD/v1.4/InDels.tsv.gz` +- Path to `cadd_indels_tbi`: `/data1/cache/CADD/v1.4/InDels.tsv.gz.tbi` +- Path to `cadd_wg_snvs`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz` +- Path to `cadd_wg_snvs_tbi`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz.tbi` diff --git a/docs/pipeline/sarek/munin.md b/docs/pipeline/sarek/munin.md index 5f9511b..4960404 100644 --- a/docs/pipeline/sarek/munin.md +++ b/docs/pipeline/sarek/munin.md @@ -14,14 +14,14 @@ Example: `nextflow run nf-core/sarek -profile munin` Specific configurations for `MUNIN` has been made for sarek. -* Params `annotation_cache` and `cadd_cache` set to `true` -* Params `vep_cache_version` set to `95` -* Path to `snpeff_cache`: `/data1/cache/snpEff/` -* Path to `vep_cache`: `/data1/cache/VEP/` -* Path to `pon`: `/data1/PON/vcfs/BTB.PON.vcf.gz` -* Path to `pon_index`: `/data1/PON/vcfs/BTB.PON.vcf.gz.tbi` -* Path to `cadd_indels`: `/data1/cache/CADD/v1.4/InDels.tsv.gz` -* Path to `cadd_indels_tbi`: `/data1/cache/CADD/v1.4/InDels.tsv.gz.tbi` -* Path to `cadd_wg_snvs`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz` -* Path to `cadd_wg_snvs_tbi`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz.tbi` -* Load module `Sentieon` for Processes with `sentieon` labels +- Params `annotation_cache` and `cadd_cache` set to `true` +- Params `vep_cache_version` set to `95` +- Path to `snpeff_cache`: `/data1/cache/snpEff/` +- Path to `vep_cache`: `/data1/cache/VEP/` +- Path to `pon`: `/data1/PON/vcfs/BTB.PON.vcf.gz` +- Path to `pon_index`: `/data1/PON/vcfs/BTB.PON.vcf.gz.tbi` +- Path to `cadd_indels`: `/data1/cache/CADD/v1.4/InDels.tsv.gz` +- Path to `cadd_indels_tbi`: `/data1/cache/CADD/v1.4/InDels.tsv.gz.tbi` +- Path to `cadd_wg_snvs`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz` +- Path to `cadd_wg_snvs_tbi`: `/data1/cache/CADD/v1.4/whole_genome_SNVs.tsv.gz.tbi` +- Load module `Sentieon` for Processes with `sentieon` labels diff --git a/docs/pipeline/sarek/uppmax.md b/docs/pipeline/sarek/uppmax.md index e612a41..a4d89c2 100644 --- a/docs/pipeline/sarek/uppmax.md +++ b/docs/pipeline/sarek/uppmax.md @@ -14,5 +14,4 @@ Example: `nextflow run nf-core/sarek -profile uppmax` Specific configurations for uppmax clusters has been made for sarek. -* Set paths to reference genomes -* Set path to singularity containers for `irma` +- Set paths to reference genomes diff --git a/docs/pipeline/scflow/imperial.md b/docs/pipeline/scflow/imperial.md index be2cc59..f2a0b37 100644 --- a/docs/pipeline/scflow/imperial.md +++ b/docs/pipeline/scflow/imperial.md @@ -14,8 +14,8 @@ Example: `nextflow run nf-core/scflow -profile imperial` Specific configurations for Imperial have been made for scflow. -* Singularity `enabled` and `autoMounts` set to `true` -* Singularity `cacheDir` path set to an RDS location -* Singularity `runOptions` path set to bind (`-B`) RDS paths with container paths. -* Params `ctd_folder` set to an RDS location. -* Parms `ensembl_mappings` set to an RDS location. +- Singularity `enabled` and `autoMounts` set to `true` +- Singularity `cacheDir` path set to an RDS location +- Singularity `runOptions` path set to bind (`-B`) RDS paths with container paths. +- Params `ctd_folder` set to an RDS location. +- Parms `ensembl_mappings` set to an RDS location. diff --git a/docs/pipeline/taxprofiler/eva.md b/docs/pipeline/taxprofiler/eva.md new file mode 100644 index 0000000..fc7e3d8 --- /dev/null +++ b/docs/pipeline/taxprofiler/eva.md @@ -0,0 +1,19 @@ +# nf-core/configs: eva taxprofiler specific configuration + +Extra specific configuration for taxprofiler pipeline + +## Usage + +To use, run the pipeline with `-profile eva`. + +This will download and launch the taxprofiler specific [`eva.config`](../../../conf/pipeline/taxprofiler/eva.config) which has been pre-configured with a setup suitable for the MPI-EVA cluster. + +Example: `nextflow run nf-core/taxprofiler -profile eva` + +## taxprofiler specific configurations for eva + +Specific configurations for eva has been made for taxprofiler. + +### General profiles + +- The general MPI-EVA profile runs with default nf-core/taxprofiler parameters, but with modifications to account for issues SGE have with Java and python tools, nameling: BBDUK, MALT, MetaPhlAn3, and MEGAN diff --git a/docs/pipeline/taxprofiler/hasta.md b/docs/pipeline/taxprofiler/hasta.md new file mode 100644 index 0000000..5b49c12 --- /dev/null +++ b/docs/pipeline/taxprofiler/hasta.md @@ -0,0 +1,19 @@ +# nf-core/configs: eva taxprofiler specific configuration + +Extra specific configuration for taxprofiler pipeline + +## Usage + +To use, run the pipeline with `-profile hasta`. + +This will download and launch the taxprofiler specific [`hasta.config`](../../../conf/pipeline/taxprofiler/hasta.config) which has been pre-configured with a setup suitable for the hasta cluster. + +Example: `nextflow run nf-core/taxprofiler -profile hasta` + +## taxprofiler specific configurations for hasta + +Specific configurations for hasta has been made for taxprofiler. + +### General profiles + +- The general hasta profile runs with default nf-core/taxprofiler parameters, but with modifications to account for issues with: BBDUK and MALT. diff --git a/docs/prince.md b/docs/prince.md index d339541..48ea708 100644 --- a/docs/prince.md +++ b/docs/prince.md @@ -16,5 +16,5 @@ git clone this repo, copy the `prince.config` from the conf folder and then you `nextflow run nf-core/ -c prince.config ` ->NB: You will need an account to use the HPC cluster Prince in order to run the pipeline. If in doubt contact the HPC admins. ->NB: Rather than using the nextflow module, I recommend you install nextflow in your home directory - instructions are on nextflow.io (or ask the writer of this profile). The reason this is better than using the module for nextflow on the cluster, is that the development cycle of nextflow is rapid and it's easy to update your installation yourself: `nextflow self-update`. +> NB: You will need an account to use the HPC cluster Prince in order to run the pipeline. If in doubt contact the HPC admins. +> NB: Rather than using the nextflow module, I recommend you install nextflow in your home directory - instructions are on nextflow.io (or ask the writer of this profile). The reason this is better than using the module for nextflow on the cluster, is that the development cycle of nextflow is rapid and it's easy to update your installation yourself: `nextflow self-update`. diff --git a/docs/sahmri.md b/docs/sahmri.md new file mode 100644 index 0000000..bb00a36 --- /dev/null +++ b/docs/sahmri.md @@ -0,0 +1,18 @@ +# nf-core/configs: SAHMRI HPC Configuration + +All nf-core pipelines have been successfully configured for use on the HPC cluster at [SAHMRI](https://sahmri.org.au/). +To use, run the pipeline with `-profile sahmri`. This will download and launch the [`sahmri.config`](../conf/sahmri.config) which has been pre-configured +with a setup suitable for the SAHMRI HPC cluster. Using this profile, either a docker image containing all of the required software will be downloaded, +and converted to a Singularity image or a Singularity image downloaded directly before execution of the pipeline. + +The latest version of Nextflow is not installed by default on the SAHMRI HPC cluster. You will need to install it into a directory you have write access to. +Follow these instructions from the Nextflow documentation. + +- Install Nextflow : [here](https://www.nextflow.io/docs/latest/getstarted.html#) + +All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline +has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. + +> NB: You will need an account to use the SAHMRI HPC cluster in order to run the pipeline. If in doubt contact the ICT Service Desk. +> NB: Nextflow will need to submit the jobs via SLURM to the SAHMRI HPC cluster and as such the commands above will have to be executed on the login +> node. If in doubt contact ICT. diff --git a/docs/template.md b/docs/template.md index 2e915f7..16a3d62 100644 --- a/docs/template.md +++ b/docs/template.md @@ -20,5 +20,5 @@ module load Singularity/2.6.0 A local copy of the iGenomes resource has been made available on PROFILE CLUSTER so you should be able to run the pipeline against any reference available in the `igenomes.config` specific to the nf-core pipeline. You can do this by simply using the `--genome ` parameter. ->NB: You will need an account to use the HPC cluster on PROFILE CLUSTER in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster on PROFILE CLUSTER in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/uppmax.md b/docs/uppmax.md index 3024cb0..891762a 100644 --- a/docs/uppmax.md +++ b/docs/uppmax.md @@ -58,15 +58,15 @@ All jobs will be submitted to fat nodes using this method, so it's only for use The UPPMAX nf-core configuration profile uses the `hostname` of the active environment to automatically apply the following resource limits: -* `rackham` - * cpus available: 20 cpus - * memory available: 125 GB -* `bianca` - * cpus available: 16 cpus - * memory available: 109 GB -* `irma` - * cpus available: 16 cpus - * memory available: 250 GB +- `rackham` + - cpus available: 20 cpus + - memory available: 125 GB +- `bianca` + - cpus available: 16 cpus + - memory available: 109 GB +- `miarka` + - cpus available: 48 cpus + - memory available: 357 GB ## Development config @@ -83,10 +83,10 @@ To use it, submit with `-profile uppmax,devel`. > :warning: For more information, please follow the following guides: > -> * [UPPMAX `bianca` user guide](http://uppmax.uu.se/support/user-guides/bianca-user-guide/). -> * [nf-core guide for running offline](https://nf-co.re/usage/offline) -> * [nf-core `tools` guide for downloading pipelines for offline use](https://nf-co.re/tools#downloading-pipelines-for-offline-use). -> * [UPPMAX `Singularity` guide](https://www.uppmax.uu.se/support-sv/user-guides/singularity-user-guide/). +> - [UPPMAX `bianca` user guide](http://uppmax.uu.se/support/user-guides/bianca-user-guide/). +> - [nf-core guide for running offline](https://nf-co.re/usage/offline) +> - [nf-core `tools` guide for downloading pipelines for offline use](https://nf-co.re/tools#downloading-pipelines-for-offline-use). +> - [UPPMAX `Singularity` guide](https://www.uppmax.uu.se/support-sv/user-guides/singularity-user-guide/). For security reasons, there is no internet access on `bianca` so you can't download from or upload files to the cluster directly. Before running a nf-core pipeline on `bianca` you will first have to download the pipeline and singularity images needed elsewhere and transfer them via the `wharf` area to your own `bianca` project. diff --git a/docs/utd_ganymede.md b/docs/utd_ganymede.md index 81dd46a..6c5e3ea 100644 --- a/docs/utd_ganymede.md +++ b/docs/utd_ganymede.md @@ -14,5 +14,5 @@ module load singularity All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. ->NB: You will need an account to use the HPC cluster on Ganymede in order to run the pipeline. If in doubt contact Ganymedeadmins. ->NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact GanymedeAdmins. +> NB: You will need an account to use the HPC cluster on Ganymede in order to run the pipeline. If in doubt contact Ganymedeadmins. +> NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact GanymedeAdmins. diff --git a/docs/utd_sysbio.md b/docs/utd_sysbio.md index 3ae617a..28a410f 100644 --- a/docs/utd_sysbio.md +++ b/docs/utd_sysbio.md @@ -12,5 +12,5 @@ module purge module load singularity ``` ->NB: You will need an account to use the HPC cluster on Sysbio in order to run the pipeline. If in doubt contact OIT. ->NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact OIT. +> NB: You will need an account to use the HPC cluster on Sysbio in order to run the pipeline. If in doubt contact OIT. +> NB: Nextflow will need to submit the jobs via SLURM to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact OIT. diff --git a/docs/uzh.md b/docs/uzh.md index 0195eef..d92e1c6 100644 --- a/docs/uzh.md +++ b/docs/uzh.md @@ -4,5 +4,5 @@ All nf-core pipelines have been successfully configured for use on the UZH clust To use, run the pipeline with `-profile uzh`. This will download and launch the [`uzh.config`](../conf/uzh.config) which has been pre-configured with a setup suitable for the UZH cluster. Using this profile, a docker image containing all of the required software will be downloaded, and converted to a Singularity image before execution of the pipeline. ->NB: You will need an account to use the HPC cluster UZH in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. +> NB: You will need an account to use the HPC cluster UZH in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on one of the login nodes. If in doubt contact IT. diff --git a/docs/vai.md b/docs/vai.md index b174bbf..2bafb8b 100644 --- a/docs/vai.md +++ b/docs/vai.md @@ -9,6 +9,6 @@ module load singularity NXF_OPTS="-Xmx500m" MALLOC_ARENA_MAX=4 nextflow run ``` ->NB: You will need an account to use the HPC in order to run the pipeline. If in doubt contact IT. ->NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on the login node. If in doubt contact IT. ->NB: The submit node limits the amount of memory available to each user. The `NXF_OPTS` and `MALLOC_ARENA_MAX` parameters above prevent Nextflow from allocating more memory than the scheduler will allow. +> NB: You will need an account to use the HPC in order to run the pipeline. If in doubt contact IT. +> NB: Nextflow will need to submit the jobs via the job scheduler to the HPC cluster and as such the commands above will have to be executed on the login node. If in doubt contact IT. +> NB: The submit node limits the amount of memory available to each user. The `NXF_OPTS` and `MALLOC_ARENA_MAX` parameters above prevent Nextflow from allocating more memory than the scheduler will allow. diff --git a/docs/vsc_ugent.md b/docs/vsc_ugent.md new file mode 100644 index 0000000..b1d4fd9 --- /dev/null +++ b/docs/vsc_ugent.md @@ -0,0 +1,35 @@ +# nf-core/configs: University of Ghent High Performance Computing Infrastructure (VSC) + +> **NB:** You will need an [account](https://www.ugent.be/hpc/en/access/faq/access) to use the HPC cluster to run the pipeline. + +First you should go to the cluster you want to run the pipeline on. You can check what clusters have the most free space on this [link](https://shieldon.ugent.be:8083/pbsmon-web-users/). Use the following commands to easily switch between clusters: + +```shell +module purge +module swap cluster/ +``` + +Before running the pipeline you will need to create a PBS script to submit as a job. + +```bash +#!/bin/bash + +module load Nextflow + +nextflow run -profile vsc_ugent, +``` + +All of the intermediate files required to run the pipeline will be stored in the `work/` directory. It is recommended to delete this directory after the pipeline has finished successfully because it can get quite large, and all of the main output files will be saved in the `results/` directory anyway. +The config contains a `cleanup` command that removes the `work/` directory automatically once the pipeline has completed successfully. If the run does not complete successfully then the `work/` dir should be removed manually to save storage space. The default work directory is set to `$VSC_SCRATCH_VO_USER/work` per this configuration + +You can also add several TORQUE options to the PBS script. More about this on this [link](http://hpcugent.github.io/vsc_user_docs/pdf/intro-HPC-linux-gent.pdf#appendix.B). + +To submit your job to the cluster by using the following command: + +```shell +qsub