As you see already
of course
this is joint work with many
especially PhD students at
our chair, but also beyond our chair.
We have a lot of collaborations.
So I mentioned here,
hopefully the most important ones
but not all of them that contributed to our work.
So a very short introduction to what we are doing.
Our chair is active in the field of
computational science and engineering
and therein we are
as Jörg has already mentioned
focusing on the computer science part.
And especially today, I will talk about what we
do in the software design and also optimization area and specifically code generation.
So this is of course a very specific area that we are tackling
and that means I have to set
kind of the ground.
So first of all, our main work is the development of software frameworks.
So that typically run on HPC clusters. So that's kind of the frame we are within.
So we want to write software for large scale systems.
And more specifically, we concentrate
on usually block structured data accesses
block structured grids
and deal with
multi-physics applications.
Main issues are here, of course, to get the best performance
on a certain system.
And this is also our main motivation for the code generation,
as I will show you on the next slide.
Because in principle, what do we use code generation for?
We use it to get the search space complexity handled that is introduced usually by a lot
of different choices that you have to take when you deal with multi-physics simulations.
So
besides the model, of course, the discretization, the solver, the platform, maybe an AI.
So there's
a lot of things that you have to choose.
And from all of these variants, you then want to produce,
of course
the best time to solution or also maybe the minimal energy consumption code.
So that means what is now code generation for us
it's basically the process of producing code
that we can then use to execute on a certain platform.
So how does this look in more detail?
So if you look at this overview here of the process
then typically we start with an abstract
close to mathematical representation of our problem.
So standard problem is here, for example,
Presenters
Zugänglich über
Offener Zugang
Dauer
01:04:08 Min
Aufnahmedatum
2025-10-14
Hochgeladen am
2025-11-11 14:05:05
Sprache
en-US
Slides
Abstract:
Modern High-Performance Computing (HPC) applications demand ever-increasing performance across diverse and evolving hardware architectures. Manually optimizing complex numerical algorithms for these heterogeneous systems is a significant challenge. Code generation technology offers a powerful solution by automatically producing highly optimized code from high-level descriptions. In this talk, we will explore the practical application of code generation in two HPC frameworks: waLBerla and HyTeG. We demonstrate how code generation enables efficient performance portability, reduces development effort, and facilitates the exploration of different optimization strategies.
For a list of past and upcoming NHR PerfLab seminar events, please see:
https://hpc.fau.de/research/nhr-perflab-seminar-series/