CERN Accelerating science

A graphical Linux-perf based tool that reports application performance information

Date published: 
Friday, 16 September, 2016
Document type: 
Summer student report
Author(s): 
N. Hardi
The aim of this project was to implement a tool for visualizing data from the PMU (Performance Monitoring Unit). The implemented tool is built on top of the Linux perf system and pmutools. The implemented solution integrates perf tools more tightly. It provides an interactive graphical user interfaces and extends already available tools with completely new features such as data visualization, storing benchmark data and collaborative work. The tool is implemented as a web application which can be run remotely and accessed by multiple users. It is built using modern technologies such as AngularJS, Flask, Bokeh, Pandas etc. At the end of this programme the solution can be used for running benchmarks and visualizing the recorded data, as well as reviewing past benchmark runs. It provides access to the perf list, perf stat, perf record and perf script tools. Output of the perf stat tool can be streamed and analyzed in real time. In this report I describe the motivation behind this project as well as my contributions that address the requirements outlined above. Finally, some ideas for future work are proposed.