This manual describes how to use Valgrind, an award-winning suite of tools for debugging and profiling GNU/Linux programs. Valgrind detects memory and threading bugs automatically, avoiding hours of frustrating bug-hunting and making your programs more stable. You can also perform detailed profiling, to speed up your programs and reduce their memory usage. The Valgrind distribution provides five tools for debugging and profiling: Memcheck (a memory error detector), Cachegrind (a cache profiler), Callgrind (a call-graph profiler, Massif (a heap profiler) and Helgrind (a thread error detector). These tools and their options are described in detail, with practical examples and advice. Valgrind is free software, available under the GNU General Public License. It runs on X86/Linux, AMD64/Linux, PPC32/Linux and PPC64/Linux systems. This is a printed edition of the official reference documentation for Valgrind 3.3.0. For each copy sold 1 USD will be donated to the Valgrind developers by Network Theory Ltd.
Author: J. Seward