Copyright Notice:

The documents distributed by this server have been provided by the contributing authors as a means to ensure timely dissemination of scholarly and technical work on a noncommercial basis. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may not be reposted without the explicit permission of the copyright holder.

Publications of SPCL

S. Shudler, Y. Berens, A. Calotoiu, T. Hoefler, A. Strube, F. Wolf:

 Engineering Algorithms for Scalability through Continuous Validation of Performance Expectations

(IEEE Transactions on Parallel and Distributed Systems. Vol 30, Nr. 8, pages 1768-1785, IEEE, Aug. 2019)

Publisher Reference


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.


download article:

Recorded talk (best effort)



  author={Sergei Shudler and Yannick Berens and Alexandru Calotoiu and Torsten Hoefler and Alexandre Strube and Felix Wolf},
  title={{Engineering Algorithms for Scalability through Continuous Validation of Performance Expectations}},
  journal={IEEE Transactions on Parallel and Distributed Systems},