Difference between revisions of "Using the PBS / Torque queueing environment"

From Centre for Bioinformatics and Computational Biology
Jump to: navigation, search
 
(19 intermediate revisions by 2 users not shown)
Line 49: Line 49:
 
#PBS -l walltime=8:00:00
 
#PBS -l walltime=8:00:00
 
#PBS -q normal
 
#PBS -q normal
#PBS -o /path/to/stdout.log
+
#PBS -o /path/to/stdout (do not specify a filename here, just the path)
#PBS -e /path/to/stderr.log
+
#PBS -e /path/to/stderr (ditto)
 +
#PBS -k oe
 
#PBS -m ae
 
#PBS -m ae
 
#PBS -M your.email@address
 
#PBS -M your.email@address
Line 65: Line 66:
 
</source>
 
</source>
  
 +
If you receive an email with exit status "0", that would usually indicate that the job completed successfully.
  
 
=== Interactive jobs ===
 
=== Interactive jobs ===
  
* If you need an interactive terminal session on one of the servers (e.g. to compile code, setup jobs, test jobs), you can do this by using the qsub interactive mode, for example:
+
* If you need an interactive terminal session on one of the cluster nodes (e.g. to compile code, setup jobs, test jobs), you can do this by using the qsub interactive mode, for example:
 
+
  
 
<source lang="c">
 
<source lang="c">
> qsub -I -q queue_name -l nodes=1:ppn=1 -l walltime=01:00:00
+
> qsub -I -q interactive
 +
> This will give you a session on one of the cluster nodes (not bigmem), with a default walltime of 1 hour, 1 CPU,
 +
> and 16GB of memory. You can specify walltime up to 8 hours, memory up to 32 GB.
 +
> Please note the interactive mode is only for editing and testing scripts and code, not for running jobs. This should be done
 +
> with regular job submissions to the queue.
 
</source>
 
</source>
 
  
 
=== The different queues available ===
 
=== The different queues available ===
Line 88: Line 92:
 
|-
 
|-
 
|short
 
|short
|6
+
|112
 
|28
 
|28
 
|128 GB
 
|128 GB
|00:05:00
+
|00:30:00
|Short queue with 5 minute time limit
+
|Short queue with 30 minute time limit
 
|-
 
|-
 
|normal
 
|normal
|4
+
|8
 
|28
 
|28
 
|128 GB
 
|128 GB
|08:00:00
+
|30:00:00
|Medium queue with 8 hour time limit
+
|Medium queue with 30 hour time limit
 
|-
 
|-
 
|long
 
|long
|1
+
|6
 
|28
 
|28
 
|128 GB
 
|128 GB
|168:00:00
+
|900:00:00
|Long queue with one week time limit
+
|Long queue with 37.5 day time limit
 
|-
 
|-
 
|bigmem
 
|bigmem
|1
+
|3
 
|24
 
|24
 
|750 GB
 
|750 GB
|72:00:00
+
|720:00:00
|High memory queue with 3 day time limit
+
|High memory queue with 30 day time limit
 
|-
 
|-
 
|mpi
 
|mpi
Line 121: Line 125:
 
|72:00:00
 
|72:00:00
 
|Queue for mpi parallel jobs with 3 day time limit
 
|Queue for mpi parallel jobs with 3 day time limit
 +
|-
 +
|interactive
 +
|4
 +
|2 (default 1)
 +
|32 (default 16 GB)
 +
|8:00:00 (default 1 hr)
 +
|Interactive queue
 
|}
 
|}
  
 +
* PLEASE NOTE: The number of cores is sometimes referred to as number of threads in your software application. You should always set max number of threads/cores to the limits specified here (per queue).
 +
* If you need to run MPI jobs, please advise the system administrator so that the necessary security access can be enabled for your login.
 +
** Both MPICH and openMPI are installed. Please select the relevant environment using the "module load" functionality.
 +
** The node list for MPI can be accessed as $PBS_NODEFILE.
  
 
=== Additional information ===
 
=== Additional information ===

Latest revision as of 00:07, 14 June 2021

The main commands for interacting with the Torque environment are:

> qstat

View queued jobs.


> qsub

Submit a job to the scheduler.


> qdel

Delete one of your jobs from queue.


Job script parameters

Parameters for any job submission are specified as #PBS comments in the job script file or as options to the qsub command. The essential options for the cluster include:

#PBS -l nodes=1:ppn=14

sets the size of the job in number of processors:

nodes=N sets the number of nodes needed.

ppn=N sets the number of cores per node.

#PBS -l walltime=8:00:00

sets the total expected wall clock time in hours:minutes:seconds. Note the wall clock limits for each queue.


Example job scripts

A program using 14 cores on a single node:

#!/bin/bash
#PBS -l nodes=1:ppn=14
#PBS -l walltime=8:00:00
#PBS -q normal
#PBS -o /path/to/stdout (do not specify a filename here, just the path)
#PBS -e /path/to/stderr (ditto)
#PBS -k oe
#PBS -m ae
#PBS -M your.email@address
 
module load bowtie2-2.3.4.1
bowtie2 -x /path/to/genome -p 14 -1 /path/to/forwardreads.fastq -2 /path/to/reversereads.fastq -S /path/to/outputfile.sam


Assuming the above job script is saved as the text file run_bowtie.sh, the command to submit it to the Torque scheduler is:

> qsub run_bowtie.sh

If you receive an email with exit status "0", that would usually indicate that the job completed successfully.

Interactive jobs

  • If you need an interactive terminal session on one of the cluster nodes (e.g. to compile code, setup jobs, test jobs), you can do this by using the qsub interactive mode, for example:
> qsub -I -q interactive
> This will give you a session on one of the cluster nodes (not bigmem), with a default walltime of 1 hour, 1 CPU,
> and 16GB of memory. You can specify walltime up to 8 hours, memory up to 32 GB.
> Please note the interactive mode is only for editing and testing scripts and code, not for running jobs. This should be done
> with regular job submissions to the queue.

The different queues available

Queue Name Max user jobs running Max user cores
running per job
Max memory Max walltime Description
short 112 28 128 GB 00:30:00 Short queue with 30 minute time limit
normal 8 28 128 GB 30:00:00 Medium queue with 30 hour time limit
long 6 28 128 GB 900:00:00 Long queue with 37.5 day time limit
bigmem 3 24 750 GB 720:00:00 High memory queue with 30 day time limit
mpi 1 112 128 GB 72:00:00 Queue for mpi parallel jobs with 3 day time limit
interactive 4 2 (default 1) 32 (default 16 GB) 8:00:00 (default 1 hr) Interactive queue
  • PLEASE NOTE: The number of cores is sometimes referred to as number of threads in your software application. You should always set max number of threads/cores to the limits specified here (per queue).
  • If you need to run MPI jobs, please advise the system administrator so that the necessary security access can be enabled for your login.
    • Both MPICH and openMPI are installed. Please select the relevant environment using the "module load" functionality.
    • The node list for MPI can be accessed as $PBS_NODEFILE.

Additional information

  • A useful Torque tutorial can be found at this link.
  • Detailed reference documentation for queue submission is available here.