Section | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Column | ||||||||||
| ||||||||||
Column | ||||||||||
| ||||||||||
Panel | ||||||||||
| ||||||||||
Overview
Nextflow is a data-centric workflow management tool which facilitates complex and reproducible scientific computational workloads. A workflow pattern including the following characteristics might be successfully realized by using Nextflow at UArizona HPC:
|
Panel | ||||
---|---|---|---|---|
| ||||
Pros and Cons
|
|
Disadvantages of Nextflow:
|
How to use Nextflow using SLURM
Panel | ||||
---|---|---|---|---|
| ||||
Using Nextflow With SLURMHello WorldStart with the Nextflow documentation Quick Start. |
This documentation only discusses specifics of running Nextflow on Puma ; for guidance expressing your workflows with Nextflow scripts, see the official Nextflow documentation.
For theFor the most basic proof of concept demonstration, first choose a location |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
curl -s , start an interactive session, load the Nextflow module, and run
|
To run the pre-installed demonstration use this command:
Code Block |
---|
./nextflow run hello. |
Batch SubmissionExecutor: localThe easiest method is placing the |
|
SLURM with The major benefit of this method, besides simplicity, is only the initial submission waits in a |
SLURM queue; it is a good pattern for a workflow which includes a very large number of small tasks. One should not combine this method with the Nextflow ' |
slurm' executor because the job running the Nextflow manager is likely to end before the requested task is finished waiting in a queue. |
A drawback to running the Nextflow workflow process directly inside a |
SLURM job allocation |
is the workflow cannot run longer than the maximum wall time available to a single job in the |
SLURM QOS being used (240:00:00). This can be partially mitigated by using multiple |
SLURM submissions in series and passing the |
Nextflow Submits Tasks as Slurm Jobs
Nextflow configurationExecutor: slurmThe file nextflow.config is used to instruct the manager process to submit its tasks to |
SLURM instead of running them on the local host. Place the following file in your Nextflow working directory:
Left to the default configuration, a running Nextflow workflow manager process can generate a disruptive amount of communication requests to |
SLURM; most of these configuration file entries reduce the frequency of those requests. Inside the individual process definitions in your scripts, you will likely wish to override the Note that we're excluding memory as an option from the process. If memory is included (e.g. |