LinuxLinks.com
Newbies What Next ? News Forums Calendar

Search





News Sections
Home
General News (3987/0)
Reviews (637/0)
Press Releases (465/0)
Distributions (197/0)
Software (911/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)


User Functions
Username:

Password:

Don't have an account yet? Sign up as a New User


Events
There are no upcoming events




Valgrind

Valgrind

Valgrind is a tool for memory debugging, memory leak detection, and profiling. It is essentially a virtual machine using just-in-time compilation techniques.

The Valgrind distribution currently includes five production-quality tools: a memory error detector, a thread error detector, a cache and branch-prediction profiler, a call-graph generating cache profiler, and a heap profiler. It also includes two experimental tools: a data race detector, and an instant memory leak detector.

Valgrind is designed to be as non-intrusive as possible. It works directly with existing executables. You don't need to recompile, relink, or otherwise modify, the program to be checked.

 Valgrind 3.10.1

Price
Free to download

Size
10.5MB

License
GNU GPL v2

Developer
Cerion Armour-Brown, Jeremy Fitzhardinge, Tom Hughes, Nicholas Nethercote, Paul Mackerras, Dirk Mueller, Julian Seward, and others

Website
www.valgrind.org

System Requirements
No special requirements

Support:
Valgrind User Manual, FAQ, Mailing Lists, Projects Using Valgrind

Selected Reviews:
Linux Journal

Features include:

  • Memcheck detects memory-management problems in programs. All reads and writes of memory are checked, and calls to malloc/new/free/delete are intercepted. Memcheck can therefore detect the following problems:
    • Use of uninitialised memory
    • Reading/writing memory after it has been free'd
    • Reading/writing off the end of malloc'd blocks
    • Reading/writing inappropriate areas on the stack
    • Memory leaks -- where pointers to malloc'd blocks are lost forever
    • Mismatched use of malloc/new/new [] vs free/delete/delete []
    • Overlapping src and dst pointers in memcpy() and related functions
  • Cachegrind is a cache profiler. It performs detailed simulation of the I1, D1 and L2 caches in your CPU and so can accurately pinpoint the sources of cache misses in your code. It will show the number of cache misses, memory references and instructions accruing to each line of source code, with per-function, per-module and whole-program summaries. If you ask really nicely it will even show counts for each individual machine instruction.
  • Callgrind is a profiler similar in concept to Cachegrind, but which also tracks caller-callee relationships. By doing so it is able to show how instruction, memory reference and cache miss costs flow between callers and callees. Callgrind collects a large amount of data which is best navigated using Josef Weidendorfer's amazing KCachegrind visualisation tool. KCachegrind is a KDE application which presents these profiling results in a graphical and easy-to-understand form.
  • Massif is a heap profiler. It measures how much heap memory programs use. In particular, it can give you information about heap blocks, heap administration overheads, and stack sizes.
  • Helgrind detects synchronisation errors in programs that use the POSIX pthreads threading primitives. It detects the following three classes of errors:
    • Misuses of the POSIX pthreads API.
    • Potential deadlocks arising from lock ordering problems.
    • Data races -- accessing memory without adequate locking.

There are a number of graphical frontends for Valgrind including:

Alleyoop Memory Checker
alleyoop.sourceforge.net

Alleyoop uses the Gtk+ widget set and other GNOME libraries.

Features include:

  • Right-click context menu to intelligently suppress errors or launch an editor on the source file/jumping to the exact line of the error condition
  • Searchbar at the top of the viewer can be used to limit the viewable errors to those that match the regex criteria entered 
  • Suppressions editor

Valkyrie
www.open-works.net/projects/valkyrie.html

Valkyrie is an open-source graphical user interface for the Valgrind 3.X line. Valkyrie uses the Qt widget library, and is based on Valgrind's XML output capabilities.

KDevelop
www.kdevelop.org

KDevelop has functionality to use Valgrind as a plugin.

Return to Debuggers Home Page

Valgrind also features in our 'Linux Equivalents to Windows Software' section. The category chooser below allows you to focus on different types of software included in that section.

Category:  

Bookmark and Share


Last Updated Sunday, May 17 2015 @ 10:47 AM EDT


We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).


Group Tests
100 Essential Apps
All Group Tests


Top Free Software
5 Office Suites
3 Lean Desktops
7 Document Processors
4 Distraction Free Tools
9 Project Management
4 Business Solutions
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 Productivity Tools
5 Note Taking Apps
9 Terminal Emulators
21 Financial Tools
5 Bitcoin Clients
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
42 Best Games
9 Steam Games
42 Audio Apps
5 Music Streaming
42 Video Apps
5 YouTube Tools
80 Security Apps
9 System Monitoring
8 Geometry Apps
Free Console Apps
14 Multimedia
4 Audio Grabbers
9 Internet Apps
3 HTTP Clients
5 File Managers
Programming
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

Other Articles
Migrating from Windows
Back up your data
20 Free Linux Books
24 Beginner Books
12 Shell Scripting Books


Older Stories
Sunday 04/12
  • First Peek at XBian on the Raspberry Pi 2 (0)

  • Saturday 04/04
  • First Look at OSMC RC on the Raspberry Pi 2 (0)

  • Sunday 03/29
  • First Steps with OpenELEC on the Raspberry Pi 2 (0)
  • Ubuntu MATE 15.04 for Raspberry Pi 2 (0)

  • Monday 03/16
  • MIPS Creator CI20 v Raspberry Pi 2 (0)
  • Raspberry Pi 2: Raspbian (ARMv6) v Linaro (ARMv7) (0)

  • Friday 03/06
  • Raspberry Pi 2 review (0)

  • Sunday 02/22
  • Chess in a Few Bytes (0)
  • Learn the Art of Computer Programming With These Great Free Beginner Books (2)
  • CD Audio Grabbers (0)


  • Vote

    What Linux distribution do you run on your main computer?

    Debian
    Fedora
    Mint
    Slackware
    openSuSE
    Arch
    Ubuntu
    Redhat
    Mageia
    CentOS
    FreeBSD
    Results
    843 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 LinuxLinks.com - All rights reserved