Litcius/Paper detail

ExaStencils: Advanced Multigrid Solver Generation

Christian Lengauer, Sven Apel, Matthias Bolten, Shigeru Chiba, Ulrich Rüde, Jürgen Teich, Armin Größlinger, Frank Hannig, Harald Köstler, Lisa Claus, Alexander Grebhahn, Stefan Groth, Stefan Kronawitter, Sebastian Kuckuk, H. Rittich, Christian Schmitt, Jonas Schmitt

2020Lecture notes in computational science and engineering28 citationsDOIOpen Access PDF

Abstract

Present-day stencil codes are implemented in general-purpose programming languages, such as Fortran, C, or Java, Python or derivates thereof, and harnesses for parallelism, such as OpenMP, OpenCL or MPI. Project ExaStencils pursued a domain-specific approach with a language, called ExaSlang, that is stratified into four layers of abstraction, the most abstract being the formulation in continuous mathematics and the most concrete a full, automatically generated implementation. At every layer, the corresponding language expresses not only computational directives but also domain knowledge of the problem and platform to be leveraged for optimization. We describe the approach, the software technology

Topics & Concepts

Computer scienceStencilPortingProgramming languagePython (programming language)Domain-specific languageSolverParallel computingFortranCompilerJavaComputational scienceMultigrid methodAbstractionDomain (mathematical analysis)SoftwareMathematicsEpistemologyPhilosophyMathematical analysisPartial differential equationParallel Computing and Optimization TechniquesDistributed and Parallel Computing SystemsAdvanced Data Storage Technologies