GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  LMDBG (1)

NAME

lmdbg - memory debugging tool

CONTENTS

Synopsis
Description
Options
Files
Example
See Also
Author

SYNOPSIS

lmdbg [OPTIONS] <prog> [args...]

DESCRIPTION

lmdbg runs an external program prog , collects run-time information and saves it to a specified log file. More particulary, lmdbg is able of: decoding all symbols in the source code (function names, file name and position in the file); discovering all memory leaks ( -M default ); finding per-stacktrace memory leaks and ranking them from the largest to the smallest ( -M leaks ); gathering (and ranking) various types of per-stacktrace run time statistics, such as the highest memory consumption ( -M peak ), the number of calls to memory allocation functions ( -M allocs ) and the highest size of memory allocated by a single invocation of malloc function ( -M max ). To accomplish the above tasks, lmdbg , as a meta tool, manages a set of low level lmdbg-* utilities, namely, lmdbg-run, lmdbg-leaks, lmdbg-sym, lmdbg-sysleaks, lmdbg-sort and lmdbg-stat.

OPTIONS

-h Display the help message.
-V Display the lmdbg version.
-o filename
  Specify the log file to save data to.
-M mode
  Specify the task to do, mode is either of the following:
d or default
  Show all stacktraces with memory leaks. This is the default.
l or leaks
  Rank stacktraces by memory leaks.
p or peak
  Rank stacktraces by the peak memory consumption.
a or allocs
  Rank stacktraces by the number of calls to memory allocation functions.
m or max
  Rank stacktraces by the highest amount of memory allocated in a single invocation of malloc function.
-c filename
  This option is passed to lmdbg-sysleaks(1) .
-a This option is passed to lmdbg-sym(1) .
-g This option is passed to lmdbg-sym(1) .
-n This option is passed to lmdbg-run(1) .
-T num
  This option is passed to lmdbg-run(1) .
-B num
  This option is passed to lmdbg-run(1) .
-v Enable verbose mode.

FILES

~/.lmdbg.conf or /usr/local/etc/lmdbg.conf
  lmdbg configuration file

EXAMPLE



$ cat test3.c
#include <stdlib.h>

int main () { int i; void *p1, *p2; p1 = malloc (900); for (i=0; i < 3; ++i){ p2 = realloc (NULL, 10+300*i); } free (p1); free (p2);

return 0; } $ cc -O0 -g -o test3 test3.c $ lmdbg -o log ./test3; cat log realloc ( NULL , 10 ) --> 0xbb901040 num: 2 lmdbg.c:140 log_stacktrace lmdbg.c:545 realloc test3.c:9 main

realloc ( NULL , 310 ) --> 0xbb912140 num: 3 lmdbg.c:140 log_stacktrace lmdbg.c:545 realloc test3.c:9 main

$ lmdbg -M leaks -o log ./test3; cat log info progname ./test3 info stat total_allocs: 2 info stat total_free_cnt: 0 info stat total_leaks: 320 stacktrace peak: 320 max: 310 allocs: 2 leaks: 320 lmdbg.c:140 log_stacktrace lmdbg.c:545 realloc test3.c:9 main

$ lmdbg -M peak -o log ./test3; cat log info progname ./test3 info stat total_allocs: 4 info stat total_free_cnt: 2 info stat total_leaks: 320 stacktrace peak: 930 max: 610 allocs: 3 leaks: 320 lmdbg.c:140 log_stacktrace lmdbg.c:545 realloc test3.c:9 main

stacktrace peak: 900 max: 900 allocs: 1 lmdbg.c:140 log_stacktrace lmdbg.c:509 malloc test3.c:7 main

$ lmdbg -M max -o log ./test3; cat log info progname ./test3 info stat total_allocs: 4 info stat total_free_cnt: 2 info stat total_leaks: 320 stacktrace peak: 900 max: 900 allocs: 1 lmdbg.c:140 log_stacktrace lmdbg.c:509 malloc test3.c:7 main

stacktrace peak: 930 max: 610 allocs: 3 leaks: 320 lmdbg.c:140 log_stacktrace lmdbg.c:545 realloc test3.c:9 main

$ lmdbg -M allocs -o log ./test3; cat log info progname ./test3 info stat total_allocs: 4 info stat total_free_cnt: 2 info stat total_leaks: 320 stacktrace peak: 930 max: 610 allocs: 3 leaks: 320 lmdbg.c:140 log_stacktrace lmdbg.c:545 realloc test3.c:9 main

stacktrace peak: 900 max: 900 allocs: 1 lmdbg.c:140 log_stacktrace lmdbg.c:509 malloc test3.c:7 main

$

SEE ALSO

lmdbg-run(1) , lmdbg-sym(1) , lmdbg-stat(1) , lmdbg-sort(1) , lmdbg-grep(1) , lmdbg-leaks(1) , lmdbg-sysleaks(1) , lmdbg-strip(1) , lmdbg-modules(1)

AUTHOR

Aleksey Cheusov <vle@gmx.net>
Search for    or go to Top of page |  Section 1 |  Main Index


LMDBG (1) Nov 26, 2011

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.