As parallel packages for computational science become more sophisticated, it becomes more difficult for a researcher to understand the most important factors that determine end-to-end productivity from initial input data to final result. Aspects such as file IO and data transfer can be just as important in practice as the performance and parallel scalability of the application itself. This course will provide an introduction to understanding your research workflow, the place of HPC application performance within the workflow, an introduction to benchmarking parallel applications and how you can use benchmark data to make decisions on running your research on HPC systems.
The lesson aims to answer the following questions:
- How can I understand the end-to-end performance of my research workflow and, particularly, how does my use of HPC fit into this workflow?
- How do I measure parallel application performance and which metrics should I use and when?
- What decisions on my use of HPC can I make based on performance measurements?
You should have used remote HPC facilities before. In particular, you should be happy with connecting using SSH, know what a batch scheduling system is and be familiar with using the Linux command line. You should also be happy editing plain text files in a remote terminal (or, alternatively, editing them on your local system and copying them to the remote HPC system using scp).
Participants must bring a laptop with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed in the Setup section on the course website).
They are also required to abide by the ARCHER2 Code of Conduct.
Details to follow