Provided by: libjemalloc-dev_5.3.0-3_amd64 bug

NAME

       jeprof - analyze and print jemalloc's heap profile dumps

SYNOPSIS

       jeprof [options] <program> <profiles>
       jeprof [options] <symbolized-profiles>
       jeprof [options] <profile>
       jeprof --symbols program

DESCRIPTION

       jeprof  can  be  used  to parse, analyze and generate user-readable output from jemalloc's memory profile
       dumps.  Refer to jemalloc(3) or the  jemalloc  website  <http://jemalloc.net/>  about  jemalloc  and  the
       opt.prof option.

       jeprof  is  based on pprof(1) that is developed as part of the <https://github.com/gperftools/gperftools>
       gperftools package.

       Common usage:

       jeprof [options] <program> <profiles>
           Interactive mode. <profiles> is a space separated list of profile names.

       jeprof [options] <symbolized-profiles>
           <symbolized-profiles> is a list of profile files  where  each  file  contains  the  necessary  symbol
           mappings  as well as profile data (likely generated with --raw).

       jeprof [options] <profile>
           <profile> is a remote form. Each name can be:

           /path/to/profile
               a path to a profile file

           host:port[/<service]>
               a location of a service to get the profile from.

           /<service>  can  be /pprof/heap, /pprof/profile, /pprof/pmuprofile, /pprof/growth, /pprof/contention,
           /pprof/wall, /pprof/censusprofile, or /pprof/filteredprofile.

           For instance:

               jeprof http://myserver.example.com:80/pprof/heap

           If /<service> is omitted, the service defaults to /pprof/profile (CPU profiling).

       jeprof --symbols program
           Maps addresses to symbol names. In this mode, stdin should be a list of library mappings, in the same
           format as is found in the heap- and CPU-profile files (this loosely matches that  of  /proc/self/maps
           on Linux), followed by a list of hex addresses to map, one per line.

OPTIONS AND ARGUMENTS

   Options
       --cum
           Sort by cumulative data.

       --base=base
           Subtract <base> from <profile> before display.

       --interactive
           Run in interactive mode. (interactive "help" gives help) [default]

       --seconds=n
           Length of time for dynamic profiles. [default=30 secs]

       --add_lib=file
           Read additional symbols and line info from the given library.

       --lib_prefix=dir
           Comma separated list of library path prefixes.

   Reporting granularity
       --addresses
           Report at address level.

       --lines
           Report at source line level.

       --functions
           Report at function level. [default]

       --files
           Report at source file level.

   Output type
       --text
           Generate text report.

       --callgrind
           Generate callgrind format to stdout.

       --gv
           Generate Postscript and display.

       --evince
           Generate PDF and display.

       --web
           Generate SVG and display.

       --list=regexp
           Generate source listing of matching routines.

       --disasm=regexp
           Generate disassembly of matching routines.

       --symbols
           Print demangled symbol names found at given addresses.

       --dot
           Generate DOT file to stdout.

       --ps
           Generate PostScript to stdout.

       --pdf
           Generate PDF to stdout.

       --svg
           Generate SVG to stdout.

       --gif
           Generate GIF to stdout.

       --raw
           Generate symbolized jeprof data (useful with remote fetch).

   Heap-profile options
       --inuse_space
           Display in-use (mega)bytes. [default]

       --inuse_objects
           Display in-use objects.

       --alloc_space
           Display allocated (mega)bytes.

       --alloc_objects
           Display allocated objects.

       --show_bytes
           Display space in bytes.

       --drop_negative
           Ignore negative differences.

   Contention-profile options
       --total_delay
           Display total delay at each region. [default]

       --contentions
           Display number of delays at each region.

       --mean_delay
           Display mean delay at each region.

   Call-graph options
       --nodecount=n
           Show at most so many nodes. [default=80]

       --nodefraction=f
           Hide nodes below f*total. [default=.005]

       --edgefraction=f
           Hide edges below f*total. [default=.001]

       --maxdegree=n
           Max incoming/outgoing edges per node. [default=8]

       --focus=regexp
           Focus on backtraces with nodes matching regexp.

       --thread=n
           Show profile for thread n.

       --ignore=regexp
           Ignore backtraces with nodes matching regexp.

       --scale=n
           Set GV scaling. [default=0]

       --heapcheck
           Make nodes with non-0 object counts (i.e. direct leak generators) more visible.

       --retain=regexp
           Retain only nodes that match regexp.

       --exclude=regexp
           Exclude all nodes that match regexp.

   Miscellaneous
       --tools=prefix or --tools=binary:fullpath[,...]
           Path for object tool pathnames.

       --test
           Run unit tests.

       --help
           This message.

       --version
           Version information.

ENVIRONMENT

       The following environment variables affect the execution of jeprof:

       JEPROF_TMPDIR
           Profiles directory. Defaults to $HOME/jeprof.

       JEPROF_TOOLS
           Prefix for object tools pathnames.

EXAMPLES

       jeprof /bin/ls ls.prof
           Enters interactive mode.

       jeprof --text /bin/ls ls.prof
           Generates one line per procedure.

       jeprof --web /bin/ls ls.prof
           Displays annotated call-graph in web browser.

       jeprof --gv /bin/ls ls.prof
           Generates annotated call-graph and displays via gv.

       jeprof --gv --focus=Mutex /bin/ls ls.prof
           Restrict to code paths that involve an entry that matches Mutex.

       jeprof --gv --focus=Mutex --ignore=string /bin/ls ls.prof
           Restrict to code paths that involve an entry that matches Mutex and does not match string.

       jeprof --list=getdir /bin/ls ls.prof
           Generates  disassembly  listing  of  all  routines  with at least one sample that match getdir(). The
           listing is annotated with the flat and cumulative sample counts at each line.

       jeprof --disasm=getdir /bin/ls ls.prof
           Generates disassembly listing of all routines with at least  one  sample  that  match  getdir().  The
           listing is annotated with the flat and cumulative sample counts at each PC value.

       jeprof http://localhost:1234/
           Enters interactive mode.

       jeprof --text localhost:1234
           Outputs one line per procedure for localhost:1234.

       jeprof --raw localhost:1234 > ./local.raw; jeprof --text ./local.raw
           Fetches a remote profile for later analysis and then analyzes it in text mode.

SEE ALSO

       jemalloc(3)

jemalloc 5.1.0_0                                   2019-01-12                                          JEPROF(1)