ExaStencils
Advanced Stencil-Code Engineering
Visualisierung von Daten im Mehrgitterverfahren
Future exascale computing systems with 107 processing units and supporting up to 1018 FLOPS peak performance will require a tight co-design of application, algorithm, and architecture aware program development to sustain this performance for many applications of interest, mainly for two reasons. First, the node structure inside an exascale cluster will become increasingly heterogeneous, always exploiting the most recent available on-chip manycore/GPU/HWassist technology. Second, the clusters themselves will be composed of heterogeneous subsystems and interconnects. As a result, new software techniques and tools supporting the joint algorithm and architecture-aware program development will become indispensable not only (a) to ease application and program development, but also (b) for performance analysis and tuning, (c) to ensure short turn-around times, and (d) for reasons of portability.
Project ExaStencils will investigate and provide a unique, tool-assisted, domain-specific codesign approach for the important class of stencil codes, which play a central role in high performance simulation on structured or block-structured grids. Stencils are regular access patterns on (usually multidimensional) data grids. Multigrid methods involve a hierarchy of very fine to successively coarser grids. The challenge of exascale is that, for the coarser grids, less processing power is required and communication dominates. From the computational algorithm perspective, domain-specific investigations include the extraction and development of suitable stencils, the analysis of performance-relevant algorithmic tradeoffs (e.g., the number of grid levels) and the analysis and reduction of synchronization requirements guided by a template model of the targeted cluster architecture. Based on this analysis, sophisticated programming and software tool support shall be developed by capturing the relevant data structures and program segments for stencil computations in a domain-specific language and applying a generator-based product-line technology to generate and optimize automatically stencil codes tailored to each application–platform pair. A central distinguishing mark of ExaStencils is that domain knowledge is being pursued in a coordinated manner across all abstraction levels, from the formulation of the application scenario down to the generation of highly-optimized stencil code.
For the developed unique and first-time seamless cross-level design flow, the three objectives of (1) a substantial gain in productivity, (2) high flexibility in the choice of algorithm and execution platform, and (3) the provision of the ExaFLOPS performance for stencil code shall be demonstrated in a detailed, final evaluation phase.
Publications
- Schmitt C., Schmid M., Kuckuk S., Köstler H., Teich J., Hannig F.:
Reconfigurable Hardware Generation of Multigrid Solvers with Conjugate Gradient Coarse-Grid Solution
In: Parallel Processing Letters 28 (2018), Article No.: 1850016
ISSN: 0129-6264
DOI: 10.1142/S0129626418500160
BibTeX: Download - Lengauer C., Apel S., Größlinger A., Grebhahn A., Kronawitter S., Bolten M., Rittich H., Hannig F., Köstler H., Rüde U., Teich J., Kuckuk S., Schmitt C.:
ExaStencils: Advanced Stencil-Code Engineering
Euro-Par: Parallel Processing Workshops (Porto, 25. August 2014 - 26. August 2014)
In: Proceedings of Euro-Par 2014: Parallel Processing Workshops, Berlin; Heidelberg: 2014
DOI: 10.1007/978-3-319-14313-2_47
URL: http://link.springer.com/content/pdf/10.1007/978-3-319-14313-2_47.pdf
BibTeX: Download - Köstler H., Schmitt C., Kuckuk S., Kronawitter S., Hannig F., Teich J., Rüde U., Lengauer C.:
A Scala Prototype to Generate Multigrid Solver Implementations for Different Problems and Target Multi-Core Platforms
In: International Journal of Computational Science and Engineering 14 (2017), p. 150-163
ISSN: 1742-7185
DOI: 10.1504/IJCSE.2017.10003829
BibTeX: Download - Grebhahn A., Siegmund N., Apel S., Kuckuk S., Schmitt C., Köstler H.:
Optimizing Performance of Stencil Code with SPL Conqueror
1st International Workshop on High-Performance Stencil Computations (HiStencils) (Vienna, 20. January 2014 - 20. January 2014)
In: Proceedings of the 1st International Workshop on High-Performance Stencil Computations (HiStencils) 2014
URL: https://www12.cs.fau.de/downloads/schmittch/publications/GSAKSK14histencils.pdf
BibTeX: Download - Membarth R., Reiche O., Schmitt C., Hannig F., Teich J., Stürmer M., Köstler H.:
Towards a Performance-portable Description of Geometric Multigrid Algorithms using a Domain-specific Language
In: Journal of Parallel and Distributed Computing 74 (2014), p. 3191-3201
ISSN: 0743-7315
DOI: 10.1016/j.jpdc.2014.08.008
BibTeX: Download - Schmid M., Schmitt C., Hannig F., Malazgirt GA., Sönmez N., Yurdakul A., Cristal A.:
Big Data and HPC Acceleration with Vivado HLS
In: Dirk Koch, Frank Hannig, and Daniel Ziener (ed.): FPGAs for Software Programmers, Springer, 2016, p. 115-136
DOI: 10.1007/978-3-319-26408-0_7
BibTeX: Download - Schmitt C., Kuckuk S., Hannig F., Teich J., Köstler H., Rüde U., Lengauer C.:
Systems of Partial Differential Equations in ExaSlang
In: Software for Exascale Computing - SPPEXA 2013-2015, Berlin, Heidelberg, New York: Springer, 2016, p. 47-67 (Lecture Notes in Computational Science and Engineering, Vol.113)
ISBN: 9783319405261
DOI: 10.1007/978-3-319-40528-5_3
BibTeX: Download - Grebhahn A., Kuckuk S., Schmitt C., Köstler H., Siegmund N., Apel S., Hannig F., Teich J.:
Experiments on Optimizing the Performance of Stencil Codes with SPL Conqueror
In: Parallel Processing Letters 24 (2014)
ISSN: 0129-6264
DOI: 10.1142/S0129626414410011
BibTeX: Download - Schmitt C., Kuckuk S., Hannig F., Köstler H., Teich J.:
ExaSlang: A Domain-Specific Language for Highly Scalable Multigrid Solvers
4th International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing (WOLFHPC) (New Orleans, LA, USA, 17. November 2014 - 17. November 2014)
In: Proc. of the 4th International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing (WOLFHPC), New York, NY, USA: 2014
DOI: 10.1109/WOLFHPC.2014.11
BibTeX: Download - Schmid M., Reiche O., Schmitt C., Hannig F., Teich J.:
Code Generation for High-Level Synthesis of Multiresolution Applications on FPGAs
First International Workshop on FPGAs for Software Programmers (FSP) (Munich, 1. September 2014 - 1. September 2014)
In: Proc. of the First International Workshop on FPGAs for Software Programmers (FSP) 2014
URL: http://arxiv.org/abs/1408.4721
BibTeX: Download - Schmitt C., Kuckuk S., Köstler H., Hannig F., Teich J.:
An Evaluation of Domain-Specific Language Technologies for Code Generation
14th International Conference on Computational Science and its Applications (ICCSA) (Minho, Guimaraes, 30. June 2014 - 3. July 2014)
In: Proc. of the 14th International Conference on Computational Science and its Applications (ICCSA), New York, NY, USA: 2014
DOI: 10.1109/ICCSA.2014.16
BibTeX: Download - Lengauer C., Apel S., Bolten M., Größlinger A., Hannig F., Köstler H., Rüde U., Teich J., Grebhahn A., Kronawitter S., Kuckuk S., Rittich H., Schmitt C.:
ExaStencils: Advanced Stencil-Code Engineering - First Project Report
(2014)
Open Access: http://www.fim.uni-passau.de/fileadmin/files/forschung/mip-berichte/MIP1401.pdf
BibTeX: Download - Schmitt C., Schmid M., Hannig F., Teich J., Kuckuk S., Köstler H.:
Generation of Multigrid-based Numerical Solvers for FPGA Accelerators
2nd International Workshop on High-Performance Stencil Computations (HiStencils) (Amsterdam, 20. January 2015 - 20. January 2015)
In: Proceedings of the 2nd International Workshop on High-Performance Stencil Computations (HiStencils) 2015
URL: https://www12.cs.fau.de/downloads/schmittch/publications/SSHTKK15histencils.pdf
BibTeX: Download - Unat D., Dubey A., Hoefler T., Shalf J., Abraham M., Bianco M., Chamberlain BL., Cledat R., Edwards HC., Finkel H., Fürlinger K., Hannig F., Jeannot E., Kamil A., Keasler J., Kelly PHJ., Leung VJ., Ltaief H., Maruyama N., Newburn C., Pericàs M.:
Trends in Data Locality Abstractions for HPC Systems
In: IEEE Transactions on Parallel and Distributed Systems (2017)
ISSN: 1045-9219
DOI: 10.1109/TPDS.2017.2703149
BibTeX: Download - Schmitt C., Hannig F., Teich J.:
A Target Platform Description Language for Parallel Code Generation
31st GI/ITG International Conference on Architecture of Computing Systems (ARCS) (Braunschweig, 9. April 2018 - 12. April 2018)
In: Workshop Proceedings of the 31st GI/ITG International Conference on Architecture of Computing Systems (ARCS), Berlin: 2018
URL: https://www12.cs.fau.de/downloads/schmittch/publications/SHT18arcs.pdf
BibTeX: Download - Schmitt C., Kronawitter S., Hannig F., Teich J., Lengauer C.:
Automating the Development of High-Performance Multigrid Solvers
In: Proceedings of the IEEE 106 (2018), p. 1969-1984
ISSN: 0018-9219
DOI: 10.1109/JPROC.2018.2854229
BibTeX: Download - Kuckuk S., Gmeiner B., Köstler H., Rüde U.:
A Generic Prototype to Benchmark Algorithms and Data Structures
In: Parallel Computing: Accelerating Computational Science and Engineering (CSE), Berlin: IOS Press, 2014, p. 813-822 (Advances in Parallel Computing, Vol.25)
ISBN: 978-1-61499-380-3
DOI: 10.3233/978-1-61499-381-0-813
URL: http://ebooks.iospress.nl/volumearticle/35957
BibTeX: Download - Schmitt J., Kuckuk S., Köstler H.:
Towards the automatic optimization of geometric multigrid methods with evolutionary computation
19th Copper Mountain Conference On Multigrid Methods (Copper Mountain, Colorado, 24. March 2019 - 28. March 2019)
DOI: 10.29007/1c29
URL: https://easychair.org/smart-slide/slide/7g69
BibTeX: Download - Kuckuk S., Köstler H.:
Code Generation for Massively Parallel PDE Solvers
Computational Science at Scale (CoSaS) (Erlangen, 5. September 2018 - 7. September 2018)
BibTeX: Download - Kuckuk S., Köstler H.:
Whole Program Generation for Complex Fluid Flow Solvers
PASC'17 (Lugano, 26. June 2017 - 28. February 2017)
BibTeX: Download - Kuckuk S., Köstler H.:
Automatic Code Generation for Simulations of Non-Newtonian Fluids
PASC'16 (Lausanne, 8. June 2016 - 10. June 2016)
BibTeX: Download - Kuckuk S., Köstler H.:
Generation of Highly Parallel Multigrid Solvers for CFD Applications
SIAM Conference on Parallel Processing for Scientific Computing 2018 (Tokio, 7. March 2018 - 10. March 2018)
BibTeX: Download - Kuckuk S., Köstler H.:
Automatic Code Generation for Simulating Non-Newtonian Fluid Flows with ExaStencils
SIAM Conference on Parallel Processing 2016 (Paris, 12. April 2016 - 15. April 2016)
BibTeX: Download - Kuckuk S.:
Challenges in Fully Generating Multigrid Solvers for the Simulation of non-Newtonian Fluids
HiStencils 2016 (Prag, 18. January 2016 - 18. January 2016)
BibTeX: Download - Kuckuk S., Schmitt C., Kronawitter S.:
ExaSlang and the ExaStencils Code Generator
PASC'15 (Zürich, 1. June 2015 - 3. June 2015)
BibTeX: Download - Kuckuk S., Schmitt C., Köstler H., Hannig F., Teich J.:
Generating Highly Parallel Geometric Multigrid Solvers with the ExaStencils Apporach
3rd Workshop on Extreme-scale Programming Tools (New Orleans, 17. November 2014 - 17. November 2014)
BibTeX: Download - Köstler H., Kuckuk S.:
Automatic Generation of Algorithms and Data Structures for Geometric Multigrid
SIAM Conference on Parallel Processing for Scientific Computing (Portland, 18. February 2014 - 21. February 2014)
BibTeX: Download - Kuckuk S.:
Generating Data Structures and Communication for Highly Parallel Geometric Multigrid Solvers
SPPEXA Doktorandenkolloquium (Erlangen, 2. July 2014 - 2. July 2014)
BibTeX: Download - Grebhahn A., Siegmund N., Apel S., Kuckuk S., Schmitt C.:
Optimizing the Performance of Customizable Stencil Codes with Feature-Interaction Detection
BibTeX: Download - Kronawitter S., Kuckuk S., Lengauer C.:
Redundancy Elimination in the ExaStencils Code Generator
First International Workshop on Data Locality in Modern Computing Systems (DLMCS 2016) (Granada, Spain, 14. December 2016 - 16. December 2016)
In: Proceedings of the First International Workshop on Data Locality in Modern Computing Systems (DLMCS), Berlin, Heidelberg, New York: 2016
DOI: 10.1007/978-3-319-49956-7_13
BibTeX: Download - Kuckuk S., Haase G., Vasco DA., Köstler H.:
Towards Generating Efficient Flow Solvers with the ExaStencils Approach
In: Concurrency and Computation-Practice & Experience 29 (2017), p. 4062:1-4062:17
ISSN: 1532-0626
DOI: 10.1002/cpe.4062
URL: https://onlinelibrary.wiley.com/doi/abs/10.1002/cpe.4062
BibTeX: Download - Kuckuk S., Köstler H.:
Automatic Generation of Massively Parallel Codes from ExaSlang
In: Computation 4 (2016), p. 1-20
ISSN: 2079-3197
Open Access: http://www.mdpi.com/2079-3197/4/3/27
URL: http://www.mdpi.com/2079-3197/4/3/27/pdf
BibTeX: Download - Kuckuk S., Leitenmaier L., Schmitt C., Schönwetter D., Köstler H., Fey D.:
Towards Virtual Hardware Prototyping for Generated Geometric Multigrid Solvers
CS 2017-01 (2017), p. 1-8
ISSN: 2191-5008
Open Access: http://nbn-resolving.de/urn:nbn:de:bvb:29-opus4-83179
URL: http://nbn-resolving.de/urn:nbn:de:bvb:29-opus4-83179
BibTeX: Download - Heisig M., Köstler H.:
Petalisp: Run Time Code Generation for Operations on Strided Arrays
ARRAY 2018 (Philadelphia, PA, USA, 19. June 2018 - 19. June 2018)
In: ACM (ed.): Proceedings of the 5th ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming 2018
DOI: 10.1145/3219753.3219755
BibTeX: Download - Schmitt C.:
A Domain-Specific Language and Source-to-Source Compilation Framework for Geometric Multigrid Methods (Dissertation, 2019)
BibTeX: Download - Groth S., Schmitt C., Teich J., Hannig F.:
SYCL Code Generation for Multigrid Methods
22nd International Workshop on Software and Compilers for Embedded Systems (SCOPES '19) (Sankt Goar, Germany, 27. May 2019 - 29. May 2019)
In: 22nd International Workshop on Software and Compilers for Embedded Systems (SCOPES '19) 2019
DOI: 10.1145/3323439.3323984
BibTeX: Download - Lengauer C., Apel S., Bolten M., Chiba S., Rüde U., Teich J., Größlinger A., Hannig F., Köstler H., Claus L., Grebhahn A., Groth S., Kronawitter S., Kuckuk S., Rittich H., Schmitt C., Schmitt J.:
ExaStencils – Advanced Multigrid Solver Generation
In: Hans-Joachim Bungartz, Severin Reiz, Philipp Neumann, Benjamin Uekermann, Wolfgang Nagel (ed.): Software for Exascale Computing – SPPEXA 2016-2019, Springer, 2020, p. 405-452 (Lecture Notes in Computer Science and Engineering, Vol.136)
ISBN: 978-3-030-47955-8
DOI: 10.1007/978-3-030-47956-5_14
URL: https://www12.cs.fau.de/downloads/hannig/publications/ExaStencils_Advanced_Multigrid_Solver_Generation.pdf
BibTeX: Download