000889127 001__ 889127 000889127 005__ 20210127115256.0 000889127 020__ $$a978-3-030-47955-8 000889127 0247_ $$2Handle$$a2128/26674 000889127 0247_ $$2altmetric$$aaltmetric:87140320 000889127 037__ $$aFZJ-2021-00052 000889127 041__ $$aEnglish 000889127 1001_ $$0P:(DE-HGF)0$$aLengauer, Christian$$b0$$eCorresponding author 000889127 245__ $$aExaStencils: Advanced Multigrid Solver Generation 000889127 260__ $$aBerlin$$bSpringer$$c2020 000889127 29510 $$aSoftware for Exascale Computing - SPPEXA 2016-2019 000889127 300__ $$a405 - 452 000889127 3367_ $$2ORCID$$aBOOK_CHAPTER 000889127 3367_ $$07$$2EndNote$$aBook Section 000889127 3367_ $$2DRIVER$$abookPart 000889127 3367_ $$2BibTeX$$aINBOOK 000889127 3367_ $$2DataCite$$aOutput Types/Book chapter 000889127 3367_ $$0PUB:(DE-HGF)7$$2PUB:(DE-HGF)$$aContribution to a book$$bcontb$$mcontb$$s1609935250_6559 000889127 4900_ $$aLecture Notes in Computational Science and Engineering$$v136 000889127 520__ $$aPresent-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 behind it and several case studies that demonstrate its feasibility and versatility: high-performance stencil codes can be engineered, ported and optimized more easily and effectively. 000889127 536__ $$0G:(DE-HGF)POF3-511$$a511 - Computational Science and Mathematical Methods (POF3-511)$$cPOF3-511$$fPOF III$$x0 000889127 536__ $$0G:(GEPRIS)214420555$$aSPPEXA - Software for Exascale Computing (214420555)$$c214420555$$x1 000889127 7001_ $$0P:(DE-HGF)0$$aApel, Sven$$b1 000889127 7001_ $$0P:(DE-HGF)0$$aBolten, Matthias$$b2 000889127 7001_ $$0P:(DE-HGF)0$$aChiba, Shigeru$$b3 000889127 7001_ $$0P:(DE-HGF)0$$aRüde, Ulrich$$b4 000889127 7001_ $$0P:(DE-HGF)0$$aTeich, Jürgen$$b5 000889127 7001_ $$0P:(DE-HGF)0$$aGrößlinger, Armin$$b6 000889127 7001_ $$0P:(DE-HGF)0$$aHannig, Frank$$b7 000889127 7001_ $$0P:(DE-HGF)0$$aKöstler, Harald$$b8 000889127 7001_ $$0P:(DE-HGF)0$$aClaus, Lisa$$b9 000889127 7001_ $$0P:(DE-HGF)0$$aGrebhahn, Alexander$$b10 000889127 7001_ $$0P:(DE-HGF)0$$aGroth, Stefan$$b11 000889127 7001_ $$0P:(DE-HGF)0$$aKronawitter, Stefan$$b12 000889127 7001_ $$0P:(DE-HGF)0$$aKuckuk, Sebastian$$b13 000889127 7001_ $$0P:(DE-Juel1)174446$$aRittich, Hannah$$b14$$ufzj 000889127 7001_ $$0P:(DE-HGF)0$$aSchmitt, Christian$$b15 000889127 7001_ $$0P:(DE-HGF)0$$aSchmitt, Jonas$$b16 000889127 8564_ $$uhttps://juser.fz-juelich.de/record/889127/files/LengauerEtAl2020_ExaStencilsAdvancedMultigridSolverGeneration.pdf$$yOpenAccess 000889127 909CO $$ooai:juser.fz-juelich.de:889127$$pdnbdelivery$$pdriver$$pVDB$$popen_access$$popenaire 000889127 9101_ $$0I:(DE-588b)5008462-8$$6P:(DE-Juel1)174446$$aForschungszentrum Jülich$$b14$$kFZJ 000889127 9131_ $$0G:(DE-HGF)POF3-511$$1G:(DE-HGF)POF3-510$$2G:(DE-HGF)POF3-500$$3G:(DE-HGF)POF3$$4G:(DE-HGF)POF$$aDE-HGF$$bKey Technologies$$lSupercomputing & Big Data$$vComputational Science and Mathematical Methods$$x0 000889127 9141_ $$y2020 000889127 915__ $$0StatID:(DE-HGF)0510$$2StatID$$aOpenAccess 000889127 920__ $$lyes 000889127 9201_ $$0I:(DE-Juel1)JSC-20090406$$kJSC$$lJülich Supercomputing Center$$x0 000889127 980__ $$acontb 000889127 980__ $$aVDB 000889127 980__ $$aUNRESTRICTED 000889127 980__ $$aI:(DE-Juel1)JSC-20090406 000889127 9801_ $$aFullTexts