Performance Engineering für Hessen und Rheinland-Pfalz - eine Kooperation der Rhein-Main Universitäten und der Universität Kaiserslautern
Zusammenfassung der Projektergebnisse
The goal of the project was to enable a larger group of scientific users to bring performance engineering techniques to bear on their codes, and to harmonize the educational HPC structures between the states of Hesse and Rhineland-Palatine. The goal was both to provide more depth and breadth with respect to HPC skills deemed crucial for effective use of HPC resources. With respect to usability of tools, significant progress was made regarding the Extra-P performance modeling tool, the Vc vectorization library, and the CoDiPack Software for algorithmic differentiation. Extra-P: A streamlined process was developed that greatly simplifies the generation of performance models for inexperienced users, thereby providing a service for performance model generation. In addition, Extra-P was used in various in-depth explorations of codes, including one in C#. Lastly, Extra-P’s underlying algorithmic base was enhanced to provide better results while needing less information from the user. Vc: The Vc library explicitly states data-parallel operations, expressing parallelism via the type system. It is already used in production systems, but in order to ensure the long-term viability of this approach, support for SIMD templates was introduced into C++ standardization efforts, implemented in the libc++ standard library, and will soon be included in the GCC compiler. This philosophy was also successfully applied in the porting codes to GPUs and the GPU implementation of tensor operations. CoDiPack: The CoDiPack package implements algorithmic differntiation in an effective fashion, enabling, in particular, the identification of code passages that are the most sensitive to small changes arising from numerical roundoff or changes of parametrization. In collaboration with TRR 165, cloud microphysical schemes were investigated. In collaboration with DLR, the sensitivity of hand-coded Fourier transformation libraries was assessed and it was established that an exchange with external libraries was safe. In addition, for all tools, workshops and tutorials were held at various occasions. While successful in the sense of educating potential users about tool capabilities, we found it to be difficult to engage users to the point where they would really dedicate their effort beyond the initial contact with our teams, despite tools being open-source. By and large, the expectation was that our staff, who is knowledgeable in the matters, does the work for the user. This approach does, of course, work, but it does not scale. Hence, the performance modeling service for Extra-P and the standardization efforts for Vc directly aimed at lowering the bar for initial use of the technology. Overall, HPC users in Hesse and Rhineland-Palatine profited greatly from the tool-knowledgeable staff funded through this project. But this project also succeeded in closing a gap in basic HPC education for AHRP users, allowing the development and regular delivery of an introductory HPC course and of shellscripting using bash. Researchers from Rhineland-Palatine also profited from the variety of topics offered in the HiPerCH workshop series. Researchers from this project also participated in activities such as workshops at the International Supercomputing Conference (ISC) on the DFG performance engineering programme, performance monitoring harmonization efforts, or the HPC certification forum. The envisioned overall alignment of HPC activities in Hesse and Rhineland-Palatine has been sidelined by the competition for National High-Performance Computing (NHR) centers. TU Darmstadt partnered with RWTH Aachen in "NHR for Computational Engineering Science" (NHR4CES), while the universities in Frankfurt, Kaiserslautern and Mainz teamed up with the University of Saarland in a "Verbund Süd-West" in a topically complementary fashion. However, it is clear that beyond HPC support activities for high-end systems, such as provided in NHR, there is a need for basic HPC education as provided by HKHLR and the AHRP. This is also demonstrated by the fact that the state of Northrhine-Westphalia established with HPC.NRW an HPC-network that draws, in particular, on experiences of HKHLR.
Projektbezogene Publikationen (Auswahl)
-
Lightweight Requirements Engineering for Exascale Co-design. In: 2018 IEEE International Conference on Cluster Computing (CLUSTER), 2018, S. 201–211
Calotoiu, A., Graf, A., Hoefler, T., Lorenz, D., Rinke, S., & Wolf, F.
-
Following the Blind Seer – Creating Better Performance Models Using Less Information. In: Rivera F., Pena T., Cabaleiro J. (eds) Euro-Par 2017: Parallel Processing. Euro-Par 2017. Lecture Notes in Computer Science, vol 10417. Springer, Cham
Patrick Reisert, Alexandru Calotoiu, Sergei Shudler, Felix Wolf
-
Isoefficiency in Practice: Configuring and Understanding the Performance of Task-Based Applications. In: SIGPLAN Not. 52 (2017), Januar, Nr. 8, 131–143
Shudler, Sergei; Calotoiu, Alexandru; Hoefler, Torsten; Wolf, Felix
-
Local Interactions by Diffusion between Mixed- Phase Hydrometeors: Insights from Model Simulations. In: Mathematics of Climate and Weather Forecasting 3 (27 Nov. 2017), Nr. 1, S. 64 – 89
Baumgartner , M. ; Spichtinger, P.
-
Off-Road Performance Modeling – How to Deal with Segmented Data. In: R IVERA, Francisco F. (Hrsg.) ; P ENA, Tomás F. (Hrsg.) ; C A - BALEIRO , José C. (Hrsg.): Euro-Par 2017: Parallel Processing. Cham : Springer International Publishing, 2017, S. 36–48
Ilyas M.K., Calotoiu A., Wolf F.
-
A model for warm clouds with implicit droplet activation, avoiding saturation adjustment. In: Mathematics of Climate and Weather Forecasting 4 (2018), Nr. 1, S. 50–78
Nikolas Porz, Martin Hanke, Manuel Baumgartner und Peter Spichtinger
-
A usability case study of algorithmic differentiation tools on the ISSM ice sheet model. In: Optimization Methods and Software 33 (2018), Nr. 4-6, S. 844–867
Hück, Alexander ; Bischof, Christian ; Sagebaum, Max ; Gauger, Nicolas R. ; Jurgelucks , Benjamin ; Larour , Eric ; Perez , Gilberto
-
Estimating the Impact of External Interference on Application Performance. In: Aldinucci M., Padovani L., Torquati M. (eds) Euro-Par 2018: Parallel Processing. Euro-Par 2018. Lecture Notes in Computer Science, vol 11014. Springer, Cham
Shah A., Müller M., Wolf F.
-
Exploring the Performance Envelope of the LLL Algorithm. In: 2018 IEEE International Conference on Computational Science and Engineering (CSE), 2018, S. 36–43
Burger, M.; Bischof, C.; Calotoiu, A.; Wunderer, T.; Wolf, F.
-
Intercomparison of Warm-Rain Bulk Microphysics Schemes using Asymptotics. In: Mathematics of Climate and Weather Forecasting 4 (2018), S. 104–124
Juliane Rosemeier, Manuel Baumgartner und Peter Spichtinger
-
Towards a bulk approach to local interactions of hydrometeors. In: Atmospheric Chemistry and Physics 18 (2018), Nr. 4, S. 2525–2546
Baumgartner , M. ; Spichtinger, P.
-
Algorithmic differentiation for cloud schemes (IFS Cy43r3) using CoDiPack (v1.8.1). In: Geoscientific Model Development 12 (2019), Nr. 12, S. 5197–5212
Baumgartner, M. ; Sagebaum, M. ; Gauger, N. R.; Spichtinger, P.; Brinkmann A.
-
High-Performance Derivative Computations using CoDiPack. In: ACM Transactions on Mathematical Software (TOMS) 45 (2019), Nr. 4
Sagebaum, M.; Albring, Tim; Gauger, N. R.
-
Learning Cost-Effective Sampling Strategies for Empirical Performance Modeling. In: Proc. of the 34th IEEE International Parallel and Distributed Processing Symposium (IPDPS), New Orleans, LA, USA, IEEE, Mai 2020
Ritter, Marcus; Calotoiu, Alexandru; Rinke, Sebastian; Reimann, Thorsten; Hoefler, Torsten; Wolf, Felix