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 provides 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?
This course does not require any programming experience - it covers benchmarking HPC applications from the standpoint of running existing compiled applications and is suitable for users of HPC applications rather than developers. If you are an HPC software developer then you may find the Advanced courses more suitable.
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 are also required to abide by the ARCHER2 Training Code of Conduct.