services:cluster:queuing-system
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
cluster:queuing-system [2012/03/02 18:37] – dreger | services:cluster:queuing-system [2012/10/18 17:24] – pneuser | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
The login node of the HPC cluster is '' | The login node of the HPC cluster is '' | ||
Line 26: | Line 26: | ||
===== Submitting a job to the HPC cluster ===== | ===== Submitting a job to the HPC cluster ===== | ||
- | In oder to do any calculations on the HPC cluster **you have to submit your jobs to the queuing system** using the '' | + | In order to do any calculations on the HPC cluster **you have to submit your jobs to the queuing system** using the '' |
You submit jobs to the queuing system by writing a job-script which tells the queuing system about the resources your job needs and about the programs which are to be run. Basically the job-script is a shell script with some magic comments at the top (lines starting with ''# | You submit jobs to the queuing system by writing a job-script which tells the queuing system about the resources your job needs and about the programs which are to be run. Basically the job-script is a shell script with some magic comments at the top (lines starting with ''# | ||
Line 41: | Line 41: | ||
#PBS -l walltime=1: | #PBS -l walltime=1: | ||
#PBS -l nodes=1: | #PBS -l nodes=1: | ||
- | #PBS -m bea -M hpcuser@zedat.fu-berlin.de | + | #PBS -m bea -M hpcuser@physik.fu-berlin.de |
## go to the directory the user typed ' | ## go to the directory the user typed ' | ||
Line 93: | Line 93: | ||
'' | '' | ||
- | The most important recources that can (and should!) be specified by your job-script using the ''# | + | === Requesting resources === |
- | ^ Resource ^ Format ^ Description ^ Example ^ | + | The most important recources that can (and should!) be specified by your job-script using the ''# |
- | | nodes | {< | + | |
- | | walltime | seconds, or [[HH: | + | ^ Resource ^ Format ^ Description ^ Example |
- | | pmem | size* | Maximum amount of physical memory used by any single process of the job. In our case this means per core and defaults to 2gb. | **pmem=8gb** -> request 8gb RAM per core | | + | | nodes | {< |
- | | file | size* | The amount of total **local disk space** requested for the job. | **file=10gb** -> request 10 gigabytes of local disk space on each compute node | | + | | walltime | seconds, or [[HH: |
+ | | pmem | size* | Maximum amount of physical memory used by any single process of the job. In our case this means per core. | **pmem=8gb** -> request 8gb RAM per core | pmem=2gb | ||
+ | | file | size* | The amount of **local disk space** | ||
**size* format** = integer, optionally followed by a multiplier {b, | **size* format** = integer, optionally followed by a multiplier {b, | ||
- | === Complicated | + | === Recommendations on resource usage === |
- | < | + | |
+ | Note that in general it is a bad idea to specify far too large values for pmem or walltime //just to be on the safe side//, since this will very likely delay execution of your jobs. An explanation for this behaviour will be given in an upcoming section on backfill strategy of the queuing system. | ||
+ | |||
+ | Please try to use local disk space on the compute nodes whenever possible. Since access to local storage is faster than access to your $PBS_O_WORKDIR, | ||
+ | |||
+ | === Advanced job-script | ||
+ | |||
+ | < | ||
+ | #!/bin/bash | ||
#PBS -N some_good_name | #PBS -N some_good_name | ||
- | #PBS -l nodes=12: | + | #PBS -l nodes=12: |
#PBS -l walltime=100: | #PBS -l walltime=100: | ||
#PBS -l file=1000M | #PBS -l file=1000M | ||
- | #PBS -m ea -M mymail@zedat.fu-berlin.de | + | #PBS -m ea -M hpcuser@physik.fu-berlin.de |
cd $PBS_O_WORKDIR | cd $PBS_O_WORKDIR | ||
Line 120: | Line 130: | ||
export seq=`cat seq` | export seq=`cat seq` | ||
awk ' | awk ' | ||
- | |||
infile=${flag}.inp | infile=${flag}.inp | ||
Line 145: | Line 154: | ||
===== Run a job interactively ===== | ===== Run a job interactively ===== | ||
- | If you want to run a job on a clusternode | + | If you want to run a job on a compute node interactively (i.e. for debugging purposes), simply put a **'' |
with the torque resource options you are normally using in the #PBS lines in your job script: | with the torque resource options you are normally using in the #PBS lines in your job script: | ||
< | < | ||
- | qsub **-I** -l cput=20: | + | hpcuser@sheldon: |
</ | </ | ||
qsub does not return in this case; instead, as soon as you get scheduled, you get an interactive shell on a node. | qsub does not return in this case; instead, as soon as you get scheduled, you get an interactive shell on a node. | ||
+ | |||
===== Requesting resources ===== | ===== Requesting resources ===== | ||
The following resources can be requested from the queueing system: | The following resources can be requested from the queueing system: |
services/cluster/queuing-system.txt · Last modified: 2014/06/11 14:40 by dreger