The future of HPC programming - a Modern Fortran workshop, Umeå, 2022-11-(24-25)
|Name||The future of HPC programming - a Modern Fortran workshop, Umeå, 2022-11-(24-25)|
|Description||The future of HPC programming - a Modern Fortran workshop|
|Type of event||Workshop|
|Location||Umeå University, Online|
The workshop will be hybrid (on-site at Umeå University and also streamed over Zoom).
Fortran is the primordial HPC language. Its handling of multidimensional arrays have ensured that compilers can produce highly efficient code, and inclusion of coarrays in the 2008 standard made it the first major programming language with builtin support for parallelism. The 2008 inclusion of object-oriented modernised the language, bringing it on par with many of its contenders. In 2019 the Fortran standards committee started work on generics (templates). Templates are planned for the 202y release of Fortran, the one after the upcoming 2023 release.
Unlike C++ templates, Fortran templates are type-safe (strong concepts) and does not support meta-programming. This enables some very powerful programming techniques not matched by other high performance languages.
In this workshop we will give a hands-on preview of such techniques. This includes defining your own Fortran integrated domain specific programming languages (IDSLs) while benefitting from Fortran's efficient code generation. We also look at the dichotomy between well-structured code and efficient code, and show some systematic transformations between these. Lastly, we suggest just-in-time compilation and interpreters for user defined Fortran IDSLs, achieving much of the same flexibility as the current integration of Fortran and Python.
It is a cooperation between HPC2N and LUNARC.
Participants should have at least basic programming experience
Course web page and registration
For more information and registration refer to the [ https://www.hpc2n.umu.se/events/courses/2022/modern-fortran course webpage].