KOJAK generates event traces from running applications and automatically search them offline for execution patterns indicating inefficient performance behavior. KOJAK's strength is its ability to present high-level diagnostics of inefficient behavior in an easy-to-use GUI. KOJAK includes various automatic instrumentation capabilities plus manual instrumentation directives. The analysis covers inefficient use of the parallel programming models MPI and OpenMP as well as CPU and memory performance based low-level hardware events collected with PAPI, such as cache misses or floating point instructions. After running the automatic analysis, the user can investigate the results along the call tree and various system resources.
For more information please visit the project web pages at Forschungszentrum Jülich and University of Tennessee.