Binary package “valgrind” in ubuntu precise

memory debugger and profiler

 Valgrind is a GPL'd tool to help you find memory-management problems in your
 programs. When a program is run under Valgrind's supervision, all reads and
 writes of memory are checked, and calls to malloc/new/free/delete are
 Valgrind can debug more or less any dynamically-linked ELF x86/Linux,
 amd64/Linux and ppc/Linux executables, without modification, recompilation,
 or anything.
 Valgrind provides a generic infrastructure for supervising the execution of
 programs called "tools". This is done by providing a way to instrument
 programs in very precise ways, making it relatively easy to support
 activities such as dynamic error detection and profiling. The Valgrind
 distribution currently includes three tools: a memory error detectors, a
 cache (time) profiler and a heap (space) profiler.