NBISweden / pipelines-nextflow

A set of workflows written in Nextflow for Genome Annotation.
GNU General Public License v3.0
43 stars 18 forks source link

Taking forever on uppmax #10

Closed Juke34 closed 4 years ago

Juke34 commented 4 years ago

One user reported he was not able to run it on uppmax. It was taking forever. He ran directly the nextflow pipeline after module load nextflow. Could we provide an example of sbatch file to run it through Slurm in the readme?

mahesh-panchal commented 4 years ago

What did this person run exactly?

Also when running on Uppmax, the general idea is to open a screen session and run the nextflow pipeline in it. Nextflow then submits slurm job scripts for each process itself and monitors it.

Do we have need for an Uppmax specific profile?

Juke34 commented 4 years ago

Was preprocessing pipeline. What I understood it was the Conda stuff that was slow (create the env)... It is true create a conda env on uppmax can often take forever.

mahesh-panchal commented 4 years ago

Yes, if they're using conda then it's going to take ages. There is a singularity profile which they can use and should be faster.

Juke34 commented 4 years ago

You mean instead of -profile nbis,conda using -profile nbis,singularity

mahesh-panchal commented 4 years ago

Yes.

mahesh-panchal commented 4 years ago

But also they should use a profile for uppmax. E.g.

profiles {
    uppmax {
        executor {
            name = 'slurm'
        }
        process {
            scratch = '$SNIC_TMP'
        }
        includeConfig "$baseDir/config/compute_resources.config"
        env.PERL5LIB='${PERL5LIB:-""}:${HOME}/git/NBIS/GAAS/annotation/'
        env.PATH='${PATH}:${HOME}/git/NBIS/GAAS/annotation/Tools/bin'
        singularity.enabled = true
        includeConfig "$baseDir/config/software_packages.config"
        singularity.envWhitelist = 'SNIC_TMP'
    }
}

(put this in your custom config)!

Then run like so:

module load bioinfo-tools Nextflow
NXF_VER=20.01.0 nextflow run -c <config> -profile uppmax <nextflow_script>
mahesh-panchal commented 4 years ago

Oh, and modify these lines too:

        env.PERL5LIB='${PERL5LIB:-""}:${HOME}/git/NBIS/GAAS/annotation/'
        env.PATH='${PATH}:${HOME}/git/NBIS/GAAS/annotation/Tools/bin'
Juke34 commented 4 years ago

GAAS is now on conda we should update that. Can we save the uppmax profile among our other profiles too?

mahesh-panchal commented 4 years ago

Yes.

mahesh-panchal commented 4 years ago

I'm going to propose a minor folder restructure too. It seems silly to have the pipelines subfolder there. I'll merge the README's.