High-Performance Computing yesterday, today and tomorrow - interview with HPC Specialist Dr. Jussi Enkovaara - High-Performance Computing yesterday, today and tomorrow - interview with HPC Specialist Dr. Jussi Enkovaara
High-Performance Computing yesterday, today and tomorrow - interview with HPC Specialist Dr. Jussi Enkovaara
“A supercomputer could be considered as a Formula One racing car in the world of computers. The difference is that it is easier to have a chance to use a supercomputer than to drive a Formula One car. A valuable opportunity to use the largest supercomputers of the world is through the LUMI supercomputer.”
- Dr. Jussi Enkovaara, HPC Specialist at CSC – IT Center for Science.
We had an excellent opportunity to interview Jussi Enkovaara, one of the experienced tutors of the course PRACE Autumn School: Harnessing EuroHPC Flagship Supercomputers. Currently, he works as HPC Specialist (high-performance computing) at CSC – IT Center for Science and has been developing software for supercomputers since 2005. He holds over 15 years of experience teaching in various courses and training organized by CSC. Hence, he will be tutoring the Hands-on Track of Introduction to GPU Programming with OpenMP during the PRACE Autumn School held 11-15 October in Vuokatti, Finland. The event is organized by CSC.
In the early stages of his career, Enkovaara examined magnetic features of metallic alloys with quantum-mechanical atomic-level simulations. After graduating with a doctorate from the Helsinki University of Technology, he worked at Jülich Research Center as a postdoctoral researcher focusing on simulations of magnetic multilayer structures. For earlier experimental studies on the field within the same department, Professor Peter Grünberg was granted the Nobel in Physics. While working at Jülich, Enkovaara also focused more on programming and parallel programming.
Within the past 20 years, Enkovaara has seen the various developments of HPC towards what it is now. What he finds the most fascinating in his work as an HPC specialist is that it provides an exciting opportunity to learn and study new topics that constantly develop.
His first contact to high-performance computing Enkovaara had at the end of the 1990s as a summer trainee at the Laboratory of Physics at the Helsinki University of Technology. By then, a large part of computing was performed using one Central Processing Unit (CPU); for example, CSC’s flagship Cray T3E had only 192 cores. Nowadays, high-performance computing is based entirely on massive parallel computing. As an example, CSC’s Mahti supercomputer uses nearly 190 thousand processing units. What also describes the enormous development of this field is that Enkovaara’s current laptop would have been one of the five most powerful supercomputers in the world 20 years ago.
Future directions of HPC
According to Enkovaara, the paradigm of high-performance computing has transformed, especially since the significance of graphic processing units has radically increased during the past ten years. For example, CSC’s Puhti and Mahti supercomputers are only partly using GPUs (Graphics Processing Units), whereas the LUMI supercomputer is almost fully based on GPUs.
Another crucial aspect increasing its importance is energy efficiency within supercomputers. When a supercomputer’s power increases, its energy usage multiplies and constantly requires more advanced cooling systems. According to Enkovaara, supercomputers’ GPUs are a way to maximize and increase computing capacity without increasing energy consumption compared to standard processors. Find out more about the energy efficiency of the LUMI supercomputer here.
Also, GPUs build on massive parallel computing. Since the cores of GPUs are very simple, their programming differs from the ordinary processors. Programming approaches for the GPUs of different manufacturers (such as NVIDIA and AMD) vary. The OpenMP approach that will be taught in the PRACE Autumn School can be utilised with AMD’s and NVIDIA’s graphic processing units. Many Artificial Intelligence (AI) Algorithms are particularly well suited for Graphics Processing Units. The development of AI methods has been a substantial reason for the increase of significance of GPUs. The combination of HPC and AI is considered to become one of the key technological developments in the near future.
Why attend PRACE Autumn School: Harnessing the EuroHPC Flagship Supercomputers?
The PRACE Autumn School in Vuokatti, Finland, is approaching and will bring together undergraduate and graduate students as well as postdoctoral researchers in different disciplines of scientific computing.
The course consists of lectures and hands-on training on modern, GPU-accelerated high-performance computing: GPU programming and GPU code optimization at scale, as well as understanding and applying machine learning methods. The course also includes scientific case studies about using GPUs in various disciplines. The tutors and lecturers are experts in these fields, providing various interesting aspects into course topics.
The Autumn School is an opportunity for the participants to learn new things taught by high-level experts. It is a valuable chance for the participants to familiarize themselves with the world-class computing resources, widen their network, get known with people from different backgrounds, and find new aspects and approaches towards the course topics. Also, the Autumn School includes a visit to the CSC’s data center in Kajaani, the home of one of the most powerful supercomputers in the world: LUMI. It is a unique opportunity for the participants to familiarize themselves with the cutting-edge data infrastructure in the field of HPC.
The course consists of lectures, and the course is divided into three separate hands-on tracks. Each track has its background requirements. Participants are expected to attend one hands-on track they have selected when applying for the course:
- Introduction to deep learning
- Introduction to GPU programming with OpenMP
- Hackathon: Optimizing GPU applications on LUMI supercomputer.
Tips where to start the development of programming or HPC skills
We asked for hints from Enkovaara about where to begin if someone is interested in learning to program or improve their HPC skills. CSC organizes various courses on programming and high-performance computing. In Autumn 2021, a series of training, Autumn of HPC, will start from the basics of parallel programming, proceeding towards the middle-level GPU programming. These courses require basic programming skills, though.
HPC skills could be developed through training in programming languages. C++ is widely used in HPC, which often is utilized in heavy computing as well. Python is a useful programming language to combine software and currently remains the most popular programming language in Github. Please note that in corporations, there may be other programming languages used.
A good starting point to learn the basics of programming languages could be courses organized by various universities or that can be studied through different web courses.