When programs are small, it it simple to mentally keep track of its behavior and interactions. However, as programs get large, this becomes a near impossible task. Fortunaltely for us, there’s Valgrind.
Valgrind is an instumentation framework for executable files. It comes packaged with a suite of built-in tools for analysing memory usage, cache statistics, callgraphs, and more. In this talk, I will give a brief intoduction to Valgrind, and show a few examples of how to use it to make your programs better.
This talk assumes that you have some background in C programming and UNIX (either from cs352 or elsewhere). If you don’t, fear not! I will try to make it understandable for everyone. Also, there will be some live examples, so if you want to follow along make sure you install Valgrind on your laptop ahead of time. Also, the slides and some example programs are available here.