01
19
2024

Developing and Running Complex Applications with Compiler Directives

Climate scientists writing code have often been weary of multithreading, both on CPU and GPU, due to some aspect of non-reproducibility, across machines and implementations. However, the current state of the ICON model, with about 2 Million lines of code written since 2001, is living proof that porting legacy software to GPUs can be made possible with compiler directives.

ICON orography
ICON orography at a mesh size of 13 km for the western part of Europe.

Compiler directives, like OpenACC and OpenMP, have played an important role in accelerated scientific computing, especially for imperative languages like Fortran, used in the ICON model. As the new technologies continue to mature, the sustainability of using traditional languages with directives raises new concerns.

How can we keep up with performance optimization if the original code changes too fast? This is one of the questions raised by Thomas Schulthess, director at CSCS who is heading the team porting ICON to GPUs, in his keynote at Open Accelerated Computing Summit (OACS) where he discusses the deep problems that traditional languages with directives are currently facing.

Watch the keynote to learn more about the role of compiler directives in scientific computing moving forward into the future.

Author

Antonina Sinelnik
Antonina Sinelnik
Antonina Sinelnik is a program manager for Open Hackathons and Bootcamps. Before joining NVIDIA, she held analytics consulting and strategic planning roles at specialized marketing and advertising agencies, including Nielsen, Saatchi & Saatchi, and Leo Burnett. She holds a Master of Science in Marketing Management, Big Data, and Business Analytics from Bocconi University, Italy.