LinuxLinks.com
Newbies What Next ? News Forums Calendar
News Sections
Home
General News (3766/0)
Reviews (573/0)
Press Releases (450/0)
Distributions (129/0)
Software (515/0)
Hardware (378/0)
Security (187/0)
Tutorials (290/0)
Off Topic (168/0)

Related sites

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.3.0

Price
Free to download

Size
4.3MB

License
GNU General Public License

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 Sites:
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 (http://kcachegrind.sourceforge.net). 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.

Category:  


Last Updated Sunday, April 20 2008 @ 03:03 AM EDT


Who's Online
Guest Users: 22

Local Content
Migrating from Windows to Linux
Fedora 7 review
TV Guides
Cedega 4.2.1 Review
Linux Guide
Xandros Desktop OS Version 3.0 Review
Zaurus Software Reviews

Older Stories
Wednesday 05/07
  • Moonlighting Linux: the future of rich web apps (0)
  • Linux-friendly SBC hosts dual quad-core Xeons (0)
  • Is it time to move to Linux? (0)

  • Tuesday 05/06
  • Xandros expands mobile device push (0)
  • Oracle Comes Out into the Open on GNU/Linux (0)
  • CoreCodec makes apology (0)

  • Monday 05/05
  • 80 of the Best Linux Security Applications (0)
  • Linux Shootout: 7 Desktop Distros Compared (0)
  • SCO boss boos Linux from the sidelines (0)

  • Friday 05/02
  • Dell, HP, Lenovo rev up Linux with driver promise (0)

  • Whats New
    STORIES
    4 stories in last 24 hours

    COMMENTS last 48 hrs
    No new comments

    LINKS last 2 wks
    No recent new links

    Vote

    What do you find MOST attractive about Open Source software?

    Amount of customization
    Security
    Freedom provided
    Speed of development
    Quality
    Multiple versions
    Cost
    Potential to contribute
    Ability to modify code
    Results
    669 votes | 0 comments

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