Automatic Loop Kernel Analysis and Performance Modeling With Kerncraft
arXiv:1509.03778 · doi:10.1145/2832087.2832092
Abstract
Analytic performance models are essential for understanding the performance characteristics of loop kernels, which consume a major part of CPU cycles in computational science. Starting from a validated performance model one can infer the relevant hardware bottlenecks and promising optimization opportunities. Unfortunately, analytic performance modeling is often tedious even for experienced developers since it requires in-depth knowledge about the hardware and how it interacts with the software. We present the "Kerncraft" tool, which eases the construction of analytic performance models for streaming kernels and stencil loop nests. Starting from the loop source code, the problem size, and a description of the underlying hardware, Kerncraft can ideally predict the single-core performance and scaling behavior of loops on multicore processors using the Roofline or the Execution-Cache-Memory (ECM) model. We describe the operating principles of Kerncraft with its capabilities and limitations, and we show how it may be used to quickly gain insights by accelerated analytic modeling.
11 pages, 4 figures, 8 listings
References in corpus (4)
- Quantifying performance bottlenecks of stencil computations using the Execution-Cache-Memory model
- Best practices for HPM-assisted performance engineering on modern multicore processors
- Execution-Cache-Memory Performance Model: Introduction and Validation
- Performance analysis of the Kahan-enhanced scalar product on current multicore processors
Cited by in corpus (4)
- uops.info: Characterizing Latency, Throughput, and Port Usage of Instructions on Intel Microarchitectures
- Kerncraft: A Tool for Analytic Performance Modeling of Loop Kernels
- Performance prediction of finite-difference solvers for different computer architectures
- Mira: A Framework for Static Performance Analysis