Track your program as it executes and visualize the trace with DINAMITE

Understanding why a software program performs the way it does is a notoriously difficult task. Every year programmers spend hundreds of hours diagnosing performance issues that affect customers. The trouble is, existing tools that automatically “show” how different parts of the program perform are limited in the kind of insight they provide and are of little help for programmers who are new to the software source code (an increasingly common situation). Tools that provide deeper insight involve tedious manual deployment and require an understanding of the source code – a chicken-and-egg problem.

DINAMITE is a flexible end-to-end toolkit for programs written in C and C++ that lets software engineers automatically track the program as it executes and visualize the trace in a way that enables understanding how the program works and why it performs the way it does. DINAMITE can paint the picture of the program’s execution as well as its data and memory usage.

This toolkit was developed in Dr. Fedorova’s systems research group at UBC. She is encouraging researchers and practitioners to try the tools, and to contact her with questions, feedback and feature requests.

Read about and download DINAMITE from github.