mprof-report(1)

NAME
mprof-report - report generator for Mono's log profiler

SYNOPSIS
mprof-report [option]... file.mlpd

DESCRIPTION
mprof-report is the report generator for Mono's log profiler. It reads the MLPD log files produced by the log profiler and generates a report based on the options passed to it. The output is based on individual reports which can be turned on or off. By default, all reports are generated in summary form (i.e., non-verbose output).

mprof-report can read both normal and gzip(1)-compressed log files transparently.

For information about how to use the log profiler with a program, see the mono-profilers(1) page, under the LOG PROFILER section.

OPTIONS
The following options are available:

--help
    Displays usage instructions.

--out=file
    Write the report output to file instead of standard output.

--traces
    Show backtraces in reports when available.

--maxframes=num
    Limit backtraces to num frames.

--reports=reports
    Generate only the specified reports. reports is a comma-separated list of reports. See the REPORTS section.

--method-sort=mode
    Sort methods according to mode, which can be one of:

    total (default)
        Sort by the total amount of time spent in a method and its callees.

    self
        Sort by the amount of time spent only within a method itself.

    calls
        Sort by the total amount of calls made to a method.

--alloc-sort=mode
    Sort allocations according to mode, which can be one of:

    bytes (default)
        Sort by the amount of heap bytes occupied by all allocated objects of a type.

    count
        Sort by the total amount of allocations of a type.

--counters-sort=mode
    Sort counters according to mode. This alters how the counters report is presented. It can be one of:

    time (default)
        Present a list of samples, each containing a list of counter name-value pairs.

    category
        Present a list of counter names, each containing a list of sampled values.

    This option has no effect unless --verbose is passed.

--track=objects
    Track what happens to the specified objects. objects is a comma-separated list of object addresses.

--find=spec
    Find and track what happens to objects matching spec, which can have one of these forms:

    S:minimum_size
        Look for objects that are at least minimum_size bytes in size.

    T:name_fragment
        Look for objects whose type name contain name_fragment.

    Both an S and T spec can be given by passing the option twice.

--thread=tid
    Consider only events from the thread with ID tid.

--time=span
    Consider only events occurring in the specified time span. span must be of the form from-to where from and to are seconds since the program started.

--verbose
    Print verbose output.

--debug
    Print extremely detailed debug output. Most users should not use this option.

REPORTS
The following reports are available:

header
    Program startup and profiler version and operational information.

jit JIT compiler statistics.

gc  Garbage collection and handle statistics.

sample
    Flat statistical sampling profile.

alloc
    Per-class GC allocation statistics and backtraces.

call
    Method call statistics and backtraces.

metadata
    Loaded images and assemblies.

exception
    Exception statistics and backtraces.

monitor
    Monitor lock statistics and backtraces.

thread
    Managed thread names.

domain
    Loaded application domains.

context
    Loaded remoting contexts.

heapshot
    Heap snapshot information.

counters
    Performance counter samples.

SEE ALSO
mono(1), mono-profilers(1)