ExaStencils
Advanced Stencil-Code Engineering
Visualisierung von Daten im Mehrgitterverfahren
Zukünftige Exascale-Systeme mit 107 Recheneinheiten und einer Spitzenleistung von bis zu 1018 FLOPS werden ein enges Codesign von Anwendung, Algorithmus und architekturgewahrer Programmentwicklung benötigen, wenn die potenziell zur Verfügung stehende Spitzenleistung für eine breite Palette von Anwendungen erreicht werden soll. Dafür gibt es zwei Hauptgründe. Zum Ersten wird sich der Knotenaufbau in einem Exascale-Cluster in nachfolgenden Rechnergenerationen zunehmend heterogen gestalten, mit jeweils der neuesten Manycore-, Grafikkarten-und Beschleunigertechnologie. Zum Zweiten wird sich der Cluster selbst aus heterogenen Subsystemen und Verbindungsnetzwerken zusammensetzen. Der effiziente Betrieb solcher Cluster wird neue Softwaretechniken benötigen, die eine gemeinsame Entwicklung der algorithmischen Lösung und des Programms unterstützen. Derartige Techniken werden nicht nur (a) eine Vereinfachung der Anwendungs- und Programmentwicklung zur Folge haben, sondern auch (b) die Leistungsanalyse und -optimierung unterstützen, (c) zu kürzeren Entwicklungszyklen führen und (d) die Portabilität der Hochleistungssoftware erhöhen oder gar erst ermöglichen.
Projekt ExaStencils wird einen einzigartigen, werkzeugunterstützten, domänenspezifischen Codesign-Ansatz für Stencil-Codes untersuchen und bereitstellen. Stencil-Codes spielen beim Hochleistungsrechnen und der Simulation auf strukturierten und blockstrukturierten Gittern eine zentrale Rolle. Stencils sind reguläre Zugriffsmuster auf (in der Regel) mehrdimensionalen Datengittern. Mehrgittermethoden arbeiten auf einer Hierarchie von anfänglich sehr feinen und nachfolgend immer gröberen Gittern. Aus der Perspektive des Rechenalgorithmus beinhalten notwendige domänenspezifische Untersuchungen die Extraktion und Entwicklung von geeigneten Stencils, die Analyse leistungsrelevanter algorithmischer Alternativen und die Analyse und Minderung von Synchronisationsanforderungen auf Basis eines Schablonenmodells der anvisierten Clusterarchitektur. Ausgehend von dieser Analyse soll eine hochentwickelte Programmierungs- und Softwarewerkzeugunterstützung erarbeitet werden, indem die relevanten Datenstrukturen und Programmsegmente for Stencil-Berechnungen in einer domänenspezifischen Sprache erfasst werden. Generatorbasierte Produktlinientechnologie soll zur automatischen Erzeugung von Stencil-Codes eingesetzt werden, die speziell auf die jeweils anvisierte Kombination von Anwendung und Rechenplattform angepasst sind. Ein wesentliches Merkmal von ExaStencils ist, dass Domänenwissen koordiniert über alle Abstraktionsebenen einfließt und zur Optimierung verwendet wird – von der Formulierung des Anwendungsszenarios bis zur Generierung von hoch-optimiertem Stencil-Codes.
Für den im Konsortium gemeinsam entwickelten einzigartigen und erstmalig durchgängigen Entwurfsfluss sollen die drei Ziele der (1) Produktivitätssteigerung, (2) Flexibilität in der Wahl des Algorithmus und der Zielplattform und (3) Erreichbarkeit und Nachweis von ExaFLOPS-Rechenleistung in einer detaillierten, abschließenden Evaluierungsphase demonstriert werden.
Publikationen
- 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), Art.Nr.: 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), S. 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. Januar 2014 - 20. Januar 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), S. 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 (Hrsg.): FPGAs for Software Programmers, Springer, 2016, S. 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, S. 47-67 (Lecture Notes in Computational Science and Engineering, Bd.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. Juni 2014 - 3. Juli 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. Januar 2015 - 20. Januar 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), S. 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, S. 813-822 (Advances in Parallel Computing, Bd.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. März 2019 - 28. März 2019)
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. Juni 2017 - 28. Februar 2017)
BibTeX: Download - Kuckuk S., Köstler H.:
Automatic Code Generation for Simulations of Non-Newtonian Fluids
PASC'16 (Lausanne, 8. Juni 2016 - 10. Juni 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. März 2018 - 10. März 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. Januar 2016 - 18. Januar 2016)
BibTeX: Download - Kuckuk S., Schmitt C., Kronawitter S.:
ExaSlang and the ExaStencils Code Generator
PASC'15 (Zürich, 1. Juni 2015 - 3. Juni 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. Februar 2014 - 21. Februar 2014)
BibTeX: Download - Kuckuk S.:
Generating Data Structures and Communication for Highly Parallel Geometric Multigrid Solvers
SPPEXA Doktorandenkolloquium (Erlangen, 2. Juli 2014 - 2. Juli 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. Dezember 2016 - 16. Dezember 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), S. 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), S. 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), S. 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. Juni 2018 - 19. Juni 2018)
In: ACM (Hrsg.): 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. Mai 2019 - 29. Mai 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 (Hrsg.): Software for Exascale Computing – SPPEXA 2016-2019, Springer, 2020, S. 405-452 (Lecture Notes in Computer Science and Engineering, Bd.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