Laukemann J, Hager G (2023)
Publication Type: Conference contribution
Publication year: 2023
Publisher: Association for Computing Machinery, Inc
Pages Range: 127-131
Conference Proceedings Title: ICPE 2023 - Companion of the 2023 ACM/SPEC International Conference on Performance Engineering
ISBN: 9798400700729
While many developers put a lot of effort into optimizing large-scale parallelism, they often neglect the importance of an efficient serial code. Even worse, slow serial code tends to scale very well, hiding the fact that resources are wasted because no definite hardware performance limit ("bottleneck") is exhausted. This tutorial conveys the required knowledge to develop a thorough understanding of the interactions between software and hardware on the level of a single CPU core and the lowest memory hierarchy level (the L1 cache). We introduce general out-of-order core architectures and their typical performance bottlenecks using modern x86-64 (Intel Ice Lake) and ARM (Fujitsu A64FX) processors as examples. We then go into detail about x86 and AArch64 assembly code, specifically including vectorization (SIMD), pipeline utilization, critical paths, and loop-carried dependencies. We also demonstrate performance analysis and performance engineering using the Open-Source Architecture Code Analyzer (OSACA) in combination with a dedicated instance of the well-known Compiler Explorer. Various hands-on exercises allow attendees to make their own experiments and measurements and identify in-core performance bottlenecks. Furthermore, we show real-life use cases to emphasize how profitable in-core performance engineering can be.
APA:
Laukemann, J., & Hager, G. (2023). Core-Level Performance Engineering with the Open-Source Architecture Code Analyzer (OSACA) and the Compiler Explorer. In ICPE 2023 - Companion of the 2023 ACM/SPEC International Conference on Performance Engineering (pp. 127-131). Coimbra, PT: Association for Computing Machinery, Inc.
MLA:
Laukemann, Jan, and Georg Hager. "Core-Level Performance Engineering with the Open-Source Architecture Code Analyzer (OSACA) and the Compiler Explorer." Proceedings of the 14th Annual ACM/SPEC International Conference on Performance Engineering, ICPE 2023, Coimbra Association for Computing Machinery, Inc, 2023. 127-131.
BibTeX: Download