This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
guide:moab [2012/11/20 13:40] oliveroxtoby |
guide:moab [2021/12/09 16:42] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ======A Guide to the Moab Job Scheduler at the CHPC====== | ======A Guide to the Moab Job Scheduler at the CHPC====== | ||
| + | |||
| + | To submit jobs to run on CHPC systems, you must write a shell script that will run your job, and then use '' | ||
| ====SUN HYBRID SYSTEM==== | ====SUN HYBRID SYSTEM==== | ||
| Line 13: | Line 15: | ||
| - '' | - '' | ||
| - '' | - '' | ||
| - | - '' | + | - '' |
| Users can specify different cluster partitions by adding a '' | Users can specify different cluster partitions by adding a '' | ||
| Line 22: | Line 24: | ||
| - | ===NEW! Sun and Dell Westmere Clusters | + | ===Sun and Dell Westmere Clusters=== |
| The new **Westmere** clusters are now open to be used and we hope that this will reduce the waiting time and the number of queuing jobs. The new Westmere clusters have their own partitions called "'' | The new **Westmere** clusters are now open to be used and we hope that this will reduce the waiting time and the number of queuing jobs. The new Westmere clusters have their own partitions called "'' | ||
| - | **NB:** The new Dell cluster runs a different | + | **NB:** The new Dell cluster runs a different |
| Please note that each node of Westmere has **12 cores**, so please change the processes per node value from '' | Please note that each node of Westmere has **12 cores**, so please change the processes per node value from '' | ||
| Line 68: | Line 70: | ||
| Edit the file with, for example, | Edit the file with, for example, | ||
| - | + | <file bash mpi.job> | |
| - | #/bin/sh | + | #/bin/sh |
| - | #MSUB -l nodes=1: | + | #MSUB -l nodes=1: |
| - | #MSUB -l feature=nehalem|harpertown | + | #MSUB -l feature=nehalem|harpertown |
| - | #MSUB -l walltime=3: | + | #MSUB -l walltime=3: |
| - | #MSUB -m be | + | #MSUB -m be |
| - | #MSUB -V | + | #MSUB -V |
| - | #MSUB -o / | + | #MSUB -o / |
| - | #MSUB -e / | + | #MSUB -e / |
| - | #MSUB -d / | + | #MSUB -d / |
| - | #MSUB -mb | + | #MSUB -mb |
| - | ##### Running commands | + | ##### Running commands |
| - | exe=/ | + | exe=/ |
| - | nproc=`cat $PBS_NODEFILE | wc -l` | + | nproc=`cat $PBS_NODEFILE | wc -l` |
| - | mpirun -np $nproc -machinefile $PBS_NODEFILE $exe > users.out | + | mpirun -np $nproc -machinefile $PBS_NODEFILE $exe > users.out |
| + | </ | ||
| Line 100: | Line 102: | ||
| msub -I | msub -I | ||
| + | There will be a delay while the scheduler allocates and logs you into a free compute node. You can target | ||
| + | a specific free node: | ||
| + | |||
| + | msub -I -l nodes=cnode-9-23 | ||
| ===Test jobs=== | ===Test jobs=== | ||
| Line 123: | Line 129: | ||
| Edit with '' | Edit with '' | ||
| - | + | <file bash mpi.job> | |
| - | ###These lines are for Moab | + | ###These lines are for Moab |
| - | #MSUB -l nodes=2: | + | #MSUB -l nodes=2: |
| - | #MSUB -l feature=c2070 | + | #MSUB -l feature=c2070 |
| - | #MSUB -l walltime=168: | + | #MSUB -l walltime=168: |
| - | #MSUB -m be | + | #MSUB -m be |
| - | #MSUB -V | + | #MSUB -V |
| - | #MSUB -o / | + | #MSUB -o / |
| - | #MSUB -e / | + | #MSUB -e / |
| - | #MSUB -d / | + | #MSUB -d / |
| - | #MSUB -mb | + | #MSUB -mb |
| - | ##### Running commands | + | ##### Running commands |
| - | echo " | + | echo " |
| - | echo " | + | echo " |
| - | cat $PBS_NODEFILE | + | cat $PBS_NODEFILE |
| - | echo " | + | echo " |
| - | cat $PBS_NODEFILE|sed -e ' | + | cat $PBS_NODEFILE|sed -e ' |
| - | echo " | + | echo " |
| - | echo " | + | echo " |
| - | cat $PBS_STEP_OUT.hostfile | + | cat $PBS_STEP_OUT.hostfile |
| - | exe=location of the executable | + | exe=location of the executable |
| - | nproc=`cat $PBS_NODEFILE | wc -l` | + | nproc=`cat $PBS_NODEFILE | wc -l` |
| - | cd / | + | cd / |
| - | mpirun $nproc $exe > / | + | mpirun $nproc $exe > / |
| + | </ | ||
| Line 154: | Line 160: | ||
| In this example we have requested four C2070 GPUs and 32 processors | In this example we have requested four C2070 GPUs and 32 processors | ||
| - | ====BlueGene/ | + | ====(Obsolete) |
| + | |||
| + | The BlueGene has been decommissioned and is no longer available. | ||
| Users can only use 32, 64, 128, 256 or 512 processors ('' | Users can only use 32, 64, 128, 256 or 512 processors ('' | ||
| Line 163: | Line 171: | ||
| The '' | The '' | ||
| - | + | <file bash mpi.job> | |
| - | ###These lines are for Moab | + | ###These lines are for Moab |
| - | #MSUB -l ppn=128 | + | #MSUB -l ppn=128 |
| - | #MSUB -l walltime=168: | + | #MSUB -l walltime=168: |
| - | #MSUB -m be | + | #MSUB -m be |
| - | #MSUB -V | + | #MSUB -V |
| - | #MSUB -o / | + | #MSUB -o / |
| - | #MSUB -e / | + | #MSUB -e / |
| - | #MSUB -d / | + | #MSUB -d / |
| - | #MSUB -mb | + | #MSUB -mb |
| - | ##### Running commands | + | ##### Running commands |
| - | / | + | / |
| - | -mode VN -exe LOCATIONOFTHEEXECUTABLE | + | -mode VN -exe LOCATIONOFTHEEXECUTABLE |
| - | + | </ | |
| - | + | ||
| As before, use '' | As before, use '' | ||
| Line 196: | Line 202: | ||
| To get the definitions, | To get the definitions, | ||
| - | + | <file bash job.msub> | |
| - | ###These lines are for Moab | + | ###These lines are for Moab |
| - | #MSUB -l nodes=4: | + | #MSUB -l nodes=4: |
| - | #MSUB -l walltime=2: | + | #MSUB -l walltime=2: |
| - | #MSUB -m be | + | #MSUB -m be |
| - | #MSUB -o / | + | #MSUB -o / |
| - | #MSUB -e / | + | #MSUB -e / |
| - | #MSUB -d / | + | #MSUB -d / |
| - | #MSUB -mb | + | #MSUB -mb |
| - | #MSUB -M nmonama@csir.co.za | + | #MSUB -M nmonama@csir.co.za |
| | | ||
| - | | + | ##### Running commands |
| - | NP=`cat $PBS_NODEFILE | wc –l` | + | NP=`cat $PBS_NODEFILE | wc –l` |
| - | mpirun –np $NP –machinefile $PBS_NODEFILE DLPOLY_3.07.SPARC.Y | + | mpirun –np $NP –machinefile $PBS_NODEFILE DLPOLY_3.07.SPARC.Y |
| + | </ | ||
| Details of each line of the job script: | Details of each line of the job script: | ||
| Line 239: | Line 245: | ||
| msub test.job | msub test.job | ||
| - | **NB:** Your job MUST be located on the scratch | + | **NB:** Your job should always write its output to scratch. It will be faster if it reads its input from there as well. |
| There are various controls of Moab and Loadleveler that can help you to manage your job: | There are various controls of Moab and Loadleveler that can help you to manage your job: | ||
| Line 251: | Line 257: | ||
| ^ showres | Show existing reservations | | ^ showres | Show existing reservations | | ||
| ^ showstart | Show estimate of when job can or will start | | ^ showstart | Show estimate of when job can or will start | | ||
| - | ^ Checkjob | + | ^ checkjob |
| | | ||