valgrind: Memory error detector, call graph generator, runtime profiler¶
This is an optional spkg. It supports Linux on x86, x86-64, ppc, ppc64 and ARM as well as Darwin (Mac OS X 10.5 and 10.6) on x86 and x86-64.
Valgrind is an instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.
The Valgrind distribution currently includes six production-quality tools: a memory error detector, two thread error detectors, a cache and branch-prediction profiler, a call-graph generating cache and branch-prediction profiler, and a heap profiler. It also includes three experimental tools: a heap/stack/global array overrun detector, a second heap profiler that examines how heap blocks are used, and a SimPoint basic block vector generator. It runs on the following platforms: X86/Linux, AMD64/Linux, ARM/Linux, PPC32/Linux, PPC64/Linux, S390X/Linux, ARM/Android (2.3.x), X86/Darwin and AMD64/Darwin (Mac OS X 10.6 and 10.7).
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License, version 2.
valgrind-user, valgrind-devel mailing lists
Special Build Instructions¶
To build on OS X, you need to use Apple’s compiler. FSF GCC is unsupported.
Equivalent System Packages¶
$ brew install valgrind
macports: install the following packages: valgrind opensuse:
$ sudo zypper install valgrind
However, these system packages will not be used for building Sage because spkg-configure.m4 has not been written for this package; see https://trac.sagemath.org/ticket/27330