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, a heap profiler, and a second heap profiler that examines how heap blocks are used. It also includes two experimental tools: a stack/global array overrun detector, and a SimPoint basic block vector generator.
This snap also includes the experimental tool Failgrind, which is not part of the upstream Valgrind project.
Documentation for this release which includes the Failgrind tool is available at http://valgrind.ral.me/
The official Valgrind documentation is available at http://valgrind.org/docs/manual/index.html
The source for this snap package can be found https://github.com/ralight/valgrind-snap
This package is not currently affiliated with the upstream valgrind project.