This year’s ISC High Performance conference takes place in Hamburg from June 10-13. As a refreshing counterweight to the usual enema of AI and Quantum Computing you will get there, we conduct two half-day tutorials about good old solid performance engineering.
In the morning of June 13, Jan Laukemann and I will present the “Core-Level Performance Engineering” tutorial: 3.5 hours packed with information on how modern CPUs execute your code. Pipelining, out-of-order execution, superscalarity, SIMD, plus hands-on exercises using Matt Godbolt’s Compiler Explorer and OSACA, our Open-Source Architecture Code Analyzer, which is integrated with it. If you need to model the in-core performance of code for optimization or co-design, this tutorial is for you.
In the afternoon of June 13, Christie Alappat (still a PhD student at FAU but now working for Intel), Jonas Thies (TU Delft), Hartwig Anzt (TU München Campus Heilbronn), and myself will conduct the tutorial “Performance Engineering for Sparse Linear Solvers.” It provides a thorough coverage of sparse matrix-vector multiplication (SpMV), preconditioners, and even cache blocking of matrix powers via RACE, Christie’s Recursive Algebraic Coloring Engine. In the hands-on exercises, attendees will get access to an A100 GPU and be able to experiment with SpMV and sparse linear solvers. All code (mostly python/numba) is available for download.