The training is designed as an introductory course of High Performance Computing (HPC), reflecting the supercomputing infrastructure at the IT4Innovations National Supercomputing Center (IT4I). Part of the training will be live demonstrations and basic hands-on exercises.
Target Audience and Purpose of the Course
This training is dedicated to persons, who are interested in basics of HPC and are planning to use the IT4Innovations supercomputing infrastructure. The course is primarily tailored for application users with some experience from smaller platforms (desktops), who need to take advantage of HPC to solve their problems in larger scale, which is out of scope of their current resources. Typically scientists from various application fields, who are not developers of the application employed, but need to understand better what is “behind the scene”, e.g. how parallelization works.
The course will provide them with the introduction to most important aspects of HPC, especially as practiced at IT4I, and help answer related questions.
A personal computer suitable for online education.
Agenda and Content of the Course
1. HPC systems architecture and IT4I architecture introduction - Brief introduction to the High-Performance Computing (HPC) in the world and in the Czech Republic. Presenting hardware architecture of the contemporary HPC systems, and basics every HPC user should know such as scalability, top500, path to exascale, or EPI.
2. Accessing and using IT4I clusters.
- How to get your data to the cluster.
- How to log in to the cluster and prepare a computation environment.
- How to submit computational jobs.
3. Code development on the cluster.
- Remote development on the cluster.
- Compiling and building software tools and custom code.
- Leveraging accelerated hardware (GPUs).
4. Parallel Programming Basics - This section briefly describes how to run parallel applications that use threads and MPI. And, how to set the environment variables for a hybrid run to efficiently utilize the provided hardware.
5. Performance Analysis Basics - Why should we care about performance? This section will answer the question, introduce you the basic concepts of a performance analysis, provide an overview of performance tools and show how to use them.