Loop Kernel Analysis and Performance Modeling Toolkit
This tool allows automatic analysis of loop kernels using the Execution Cache Memory (ECM) model, the Roofline model and actual benchmarks. kerncraft provides a framework to investigate the data reuse and cache requirements by static code analysis. In combination with the Intel IACA tool kerncraft can give a good overview of both in-core and memory bottlenecks and use that data to apply performance models.
For a detailed documentation see publications in doc/.
On most systems with python pip and setuputils installed, just run:
pip install --user kerncraft
for the latest release. In order to get the Intel Achitecture Code Analyzer (IACA), required by the ECM, ECMCPU and RooflineASM performance models, read this and run:
iaca_get --I-accept-the-Intel-What-If-Pre-Release-License-Agreement-and-please-take-my-soul
- Additional requirements are:
- likwid (used in Benchmark model and by
likwid_bench_auto
)
- likwid (used in Benchmark model and by
- Get an example kernel and machine file from the examples directory
wget https://raw.githubusercontent.com/RRZE-HPC/kerncraft/master/examples/machine-files/SandyBridgeEP_E5-2680.yml
wget https://raw.githubusercontent.com/RRZE-HPC/kerncraft/master/examples/kernels/2d-5pt.c
- Have a look at the machine file and change it to match your targeted machine (above we downloaded a file for a Sandy Bridge EP machine)
- Run kerncraft
kerncraft -p ECM -m SandyBridgeEP_E5-2680.yml 2d-5pt.c -D N 10000 -D M 10000
add -vv for more information on the kernel and ECM model analysis.
When using Kerncraft for your work, please consider citing the following publication:
Kerncraft: A Tool for Analytic Performance Modeling of Loop Kernels (preprint)
J. Hammer, J. Eitzinger, G. Hager, and G. Wellein: Kerncraft: A Tool for Analytic Performance Modeling of Loop Kernels. In: Tools for High Performance Computing 2016, ISBN 978-3-319-56702-0, 1-22 (2017). Proceedings of IPTW 2016, the 10th International Parallel Tools Workshop, October 4-5, 2016, Stuttgart, Germany. Springer, Cham. DOI: 10.1007/978-3-319-56702-0_1, Preprint: arXiv:1702.04653``
AGPLv3