. CS402: High Performance Computing . The HPSC Cluster The HPSC Cluster – deepthought Seminar Plan • Week 1 - Introduction to C • Week 2 - Memory Management • Week 3 - Compiler Options and Debugging • Week 4 - The Cluster • Week 5 - Performance Modelling • Week 6-9 - Coursework Troubleshooting The HPSC Cluster Outline 1. The Cluster 2. Logging In 3. Software 4. Running Jobs The HPSC Cluster The Cluster The HPSC cluster deepthought: • 42 dual processor nodes. • Fibre-optic interconnect. The HPSC Cluster Outline 1. The Cluster 2. Logging In 3. Software 4. Running Jobs The HPSC Cluster Logging in • You should all have a username: hpc<uni number> • Log in with ssh: ssh <user>@deepthought.dcs.warwick.ac.uk The HPSC Cluster Outline 1. The Cluster 2. Logging In 3. Software 4. Running Jobs The HPSC Cluster The Module System • The cluster uses the modules system to manage software, this allows us to easily install and manage compilers, MPI, and other tools. • Use the module list command to see currently loaded software. • Use the module avail command to see the software available to load. • Finally, use the module load command to load in some software. The HPSC Cluster Loading MPI • To load the MPI libraries and compilers, we need to load the gnu/openmpi-1.2.7 module. • We use the command: module load gnu/openmpi-1.2.7 The HPSC Cluster Outline 1. The Cluster 2. Logging In 3. Software 4. Running Jobs The HPSC Cluster The Queue • Don’t run jobs on the head node! • We submit jobs to the queue, which are then run on the compute nodes. • To queue jobs we use the qsub command. The HPSC Cluster Job Types (1/2) – Interactive • The first job type is the interactive job, this allows you to act as though the job was just a normal shell session. • qsub -V -I -l nodes=1:ppn=2 • Now you can use mpirun to run your MPI job. The HPSC Cluster Job Types (1/2) – Interactive • The problem with interactive jobs is that you can’t get many cores, not very good for testing your code! • The solution . . . The HPSC Cluster Job Types (2/2) – Batch • Batch jobs! • These are put in the queue and run by the scheduler whenever it decides. • Batch jobs require a submission script, which will run your program for you. • There are examples in the lab, so let’s get going! The HPSC Cluster