Valgrind is an open source application that provides software developers with one of the best and most used tools for automatic discovery of memory threading and management bugs on their projects.
In other words, it can be used to greatly speed up your programs. It’s a command-line application the runs only on the Linux console or an X11 terminal emulator.
State-of-the-art features and functionality
Key features include memory error detector, heap profiler, branch-prediction and cache profiler, thread error detectors, as well as call-graph generating branch-prediction and cache profiler.
In addition, it comes with several experimental tools, such as global and stack array overrun detector, SimPoint basic block vector generator, and second heap profiler.
The application supports a wide range of programs written in different programming languages, such as C, C++, Python, Perl, Java, Fortran, assembly code, and many others.
It’s comprised of several useful utilities for memory debugging, profiling and detection of memory leaks. These include Memcheck, Addrcheck, Cachegrind, Callgrind, None, Massif, exp-sgcheck, exp-bbv, exp-dhat, Helgrind, and DRD.
It runs well on the GNU/Linux, Android, Mac OS X operating systems. Supported architectures include x86, amd64, ARM, PPC32, PPC64, s390x, MIPS32, MIPS64, and ARM.
Availability and under the hood
The program can be downloaded from the dedicated section (see above) only as a source archive, which can be configure, compiled and installed on any Linux-based operating system.
However, users can install Valgrind directly from the default software repositories of their Linux distributions. Supported OSes include Debian, Red Hat, Mandriva, openSUSE, Arch Linux, Slackware, Gentoo, and others.
In conclusion, Valgrind is a unique application that should be used by any software developer to speed up their programs and eliminating nasty memory bugs and leaks.
It’s an award winning software that has been successfully used for research purposes at the MIT, Cambridge, UC Berkeley, Carnegie Mellon, UC Santa Barbara, Cornell, and many other universities around the world.