Section: User Commands (1)Updated: June 8, 2010Local indexUp
NAME
mlprof - display profiling information for a MLton-compiled executable
SYNOPSIS
mlprof [option ...] a.out [mlmon.out ...]
DESCRIPTION
mlprof extracts information from an executable compiled by
MLton with -profile alloc or -profile time and the
resulting mlmon.out file produced by running the executable.
The output of mlprof consists of an initial line indicating the
total amount of CPU time or bytes allocated. After this, source
functions are listed along with the percentage of this total that they
used, in decreasing order. If the program was compiled with
-profile-stack true, mlprof will display the time spent or
bytes allocated while the function was on the stack and in GC in
addition to the time or bytes that the function is directly
responsible for.
With multiple mlmon.out files, mlprof will sum the
profiling information.
OPTIONS
-call-graph file
Write a call graph containing the table data to a dot file. See the
MLton User Guide for details.
-graph-title string
Set the call-graph title.
-gray {false|true}
Gray call-graph nodes according to stack %. This only makes sense if
the executable was compiled -profile-stack true.
-keep exp
Only show functions specified by exp. For details on the
allowed expressions, see the MLton User Guide. Multiple
-keep expressions are not allowed.
-mlmon file
Process the list of whitespace-separated mlmon.out files found
in the specified file.
-raw {false|true}
Show the raw counts in addition to the percentages.
-show-line {false|true}
Show the file and line for each function.
-split regexp
Treat duplicates of functions whose name matches regexp as
different functions.
-thresh x
An abbreviation for -keep '(thresh x)', which only prints
information about functions whose percentage is greater than or equal
to x, where 0 <= x <= 100.0.
-tolerant {false|true}
Print a warning about broken mlmon.out files, but do not exit.