TU Darmstadt / ULB / TUbiblio

Engineering Algorithms for Scalability through Continuous Validation of Performance Expectations

Shudler, Sergei ; Berens, Yannick ; Calotoiu, Alexandru ; Hoefler, Torsten ; Strube, Alexandre ; Wolf, Felix (2019)
Engineering Algorithms for Scalability through Continuous Validation of Performance Expectations.
In: IEEE Transactions on Parallel and Distributed Systems, 30 (8)
doi: 10.1109/TPDS.2019.2896993
Article, Bibliographie

Abstract

Many libraries in the HPC field use sophisticated algorithms with clear theoretical scalability expectations. However, hardware constraints or programming bugs may sometimes render these expectations inaccurate or even plainly wrong. While algorithm and performance engineers have already been advocating the systematic combination of analytical performance models with practical measurements for a very long time, we go one step further and show how this comparison can become part of automated testing procedures. The most important applications of our method include initial validation, regression testing, and benchmarking to compare implementation and platform alternatives. Advancing the concept of performance assertions, we verify asymptotic scaling trends rather than precise analytical expressions, relieving the developer from the burden of having to specify and maintain very fine-grained and potentially non-portable expectations. In this way, scalability validation can be continuously applied throughout the whole development cycle with very little effort. Using MPI and parallel sorting algorithms as examples, we show how our method can help uncover non-obvious limitations of both libraries and underlying platforms.

Item Type: Article
Erschienen: 2019
Creators: Shudler, Sergei ; Berens, Yannick ; Calotoiu, Alexandru ; Hoefler, Torsten ; Strube, Alexandre ; Wolf, Felix
Type of entry: Bibliographie
Title: Engineering Algorithms for Scalability through Continuous Validation of Performance Expectations
Language: English
Date: 1 August 2019
Publisher: IEEE
Journal or Publication Title: IEEE Transactions on Parallel and Distributed Systems
Volume of the journal: 30
Issue Number: 8
DOI: 10.1109/TPDS.2019.2896993
Abstract:

Many libraries in the HPC field use sophisticated algorithms with clear theoretical scalability expectations. However, hardware constraints or programming bugs may sometimes render these expectations inaccurate or even plainly wrong. While algorithm and performance engineers have already been advocating the systematic combination of analytical performance models with practical measurements for a very long time, we go one step further and show how this comparison can become part of automated testing procedures. The most important applications of our method include initial validation, regression testing, and benchmarking to compare implementation and platform alternatives. Advancing the concept of performance assertions, we verify asymptotic scaling trends rather than precise analytical expressions, relieving the developer from the burden of having to specify and maintain very fine-grained and potentially non-portable expectations. In this way, scalability validation can be continuously applied throughout the whole development cycle with very little effort. Using MPI and parallel sorting algorithms as examples, we show how our method can help uncover non-obvious limitations of both libraries and underlying platforms.

Uncontrolled Keywords: DFG|SPPEXA 1648; BMBF|01IH16008D; DoE|DE-SC0015524
Divisions: 20 Department of Computer Science
20 Department of Computer Science > Parallel Programming
Zentrale Einrichtungen
Zentrale Einrichtungen > University IT-Service and Computing Centre (HRZ)
Zentrale Einrichtungen > University IT-Service and Computing Centre (HRZ) > Hochleistungsrechner
Date Deposited: 20 Mar 2024 13:48
Last Modified: 06 Jun 2024 11:49
PPN: 518872289
Export:
Suche nach Titel in: TUfind oder in Google
Send an inquiry Send an inquiry

Options (only for editors)
Show editorial Details Show editorial Details