Ondřej Vysocký is a Research Assistant at IT4Innovations National Supercomputing Center of the Czech Republic. His Bachelor’s thesis introduced him to the world of HPC, leading him on to do a Master’s degree. His interest was furthered by a two-month PRACE Summer of HPC placement at EPCC in Edinburgh. He is currently working on READEX, a European project for energy-efficient exascale computing, and is also studying for a PhD.
Ondřej, tell us a bit about yourself.
I am from the Czech Republic, from Ostrava. I decided to move to Brno with my friends, to study programming at Brno University of Technology. I completed my Master’s degree there, and got my first experience of working with HPC there. Now I work at IT4Innovations National Supercomputing Center of the Czech Republic, in Ostrava.
How did your career path lead you to HPC?
When it was time to choose the topic for my Bachelor’s thesis, I was considering two areas. The first was computer vision, which is very popular at the university because there is a large group of people with a strong background in this field. The second was parallel programming, and I selected this, as I saw in it the future of computer applications. This decision was a milestone in my career.
The key moment was my first meeting with Dr. Jiří Jaroš, who introduced me to an HPC toolbox k-Wave that is designed for time-domain acoustic and ultrasound simulations. It is mainly used in medicine, for non-invasive surgery and screening. The basic idea is the use of high-intensity, focused ultrasound that has a destructive effect on the human body tissue in the beam focus only, and nowhere else. At this meeting I didn't understand much, however the topic sounded so interesting that I joined the group and started to work on I/O optimisation, which was a serious problem in this particular library. I was working on this issue for three years, successfully finished a Bachelor’s and a Master’s thesis, and improved the speed of storing data in problematic cases several times.
During that time, I applied for the PRACE Summer of HPC summer school, and was selected to go to EPCC in Edinburgh. I spent two months there, working on a visualisation of proteins using the Fluctuating Finite Element Analysis (FFEA) tool. It was a great experience to work abroad, travel, and meet new people who all shared a common interest in HPC despite being from different parts of Europe and from different fields of study.
Ondřej with Jana and Anna, his companions on the 2015 Summer of HPC programme in Edinburgh
So what does your current job involve? How does HPC relate to what you do?
After finishing my Master’s studies I moved back to my hometown of Ostrava because I wanted to be closer to my family. After three years in HPC, applying for a job at IT4Innovations National Supercomputing Center in Ostrava was the obvious next step in my career. Also, besides working at IT4Innovations, which is connected with VŠB - Technical University of Ostrava, I have started my PhD studies there as well.
At IT4Innovations I was supposed to work on I/O optimisation of the ESPRESO linear solver, which is being developed there. However, I had the opportunity to join an EC-funded FETHPC project, READEX – Runtime Exploitation of Application Dynamism for Energy-efficient eXascale computing. READEX deals with energy consumption optimisation of HPC applications, based on changing a set of hardware, software system and application-level parameters during the runtime to fit application needs without wasting resources. In the project we develop tools to analyse application behaviour, search for the best configuration for separate parts of the code, and apply the configuration during the application runtime. All of these will be done automatically. My role in the project is in manual tuning of applications. At this stage we are searching for the maximal savings that we can achieve with the automatic tools. To do this, I have developed a MERIC library, which allows manual tuning of C, C++ and Fortran applications with MPI or OpenMP.
What are the exciting aspects of working in an HPC-related career?
In general, there are three things that express the meaning of HPC for me: programming, exploring, and connection with other fields. First, I really like to write code. There is no reason to worry about parallel programming, especially when using a high-end MPI or OpenMP interface. As HPC researchers we develop new tools, and our work has an effect on the state-of-the-art in many different fields. It is important to realise that most HPC projects involve people from different fields of research. Cooperation with experts in, for example, mathematics, physics or molecular dynamics always brings new challenges. Each side has their own specific needs and opinions that must be explained to others and integrated into the project. Having at least some knowledge of what others do can simplify the communication. I was really surprised when I found out that most of the Summer of HPC participants were not programmers, but students from different fields of study. However, I now understand the organisers’ choices. It is important to introduce more people to what we do and how we do it, and ensure that they can have access to HPC resources if they need them.
Finally, I should not forget that working on an international project is also an exciting challenge. READEX is not a typical HPC project, because it pushes towards knowledge about HPC itself. In this case we are applying techniques related to embedded systems, thanks to our colleagues from Norway, who are experts in this field.
What are your plans for the future?
I don't like to plan ahead too much, however there are some exciting events on the horizon. This summer, after finishing my first year of PhD studies, I will spend a week in the USA, at the International HPC Summer School at the University of Colorado. I hope that this will be another memorable event, where I will learn a lot. The READEX project also has more than a year to run and there are always more new projects coming to IT4Innovations. I will not get bored!