ruby-prof1
A fast ruby profiler
Usage
ruby-prof options
<script.rb>
[--]
[profiled-script-command-line-options]
Overview
ruby-prof is a fast profiler for ruby. It can be used as a stand-alone program (that this man page documents) or as a ruby library. Simply run the ruby program you want to profile using ruby-prof : ruby-prof script.rb At the end of execution the time spent in each method is displayed.
Options
-
-p, --printer=printer -
Select a printer:
flat - Prints a flat profile as text (default).
flat_with_line_numbers - same as flat, with line numbers.
graph - Prints a graph profile as text.
graph_html - Prints a graph profile as html.
call_tree - format for KCacheGrind
call_stack - prints a HTML visualization of the call tree
dot - Prints a graph profile as a dot file
-
-m, --min_percent=min_percent -
The minimum percent a method must take before being included in output reports. this option is not supported for call tree.
-
-f, --file=path -
Output results to a file instead of standard out.
-
--mode=measure_mode -
Select what ruby-prof should measure:
process - Process time (default).
wall - Wall time.
cpu - CPU time (Pentium and PowerPCs only).
allocations - Object allocations (requires patched Ruby interpreter).
memory - Allocated memory in KB (requires patched Ruby interpreter).
gc_runs - Number of garbage collections (requires patched Ruby interpreter).
gc_time - Time spent in garbage collection (requires patched Ruby interpreter).
-
-s, --sort=sort_mode -
Select how ruby-prof results should be sorted:
total - Total time
self - Self time
wait - Wait time
child - Child time
-
--replace-progname -
Replace $0 when loading the .rb files.
-
-v -
Show version, set $VERBOSE to true, profile script if option given
-
-d -
Set $DEBUG to true
-
-R, --require-noprof lib -
require a specific library (not profiled)
-
-E, --eval-noprof code -
execute the ruby statements (not profiled)
-
-x, --exclude regexp -
exclude methods by regexp (see method elimination)
-
-X, --exclude-file file -
exclude methods by regexp listed in file (see method elimination)
-
--exclude-common-cycles -
make common iterators like Integer#times appear inlined
-
--exclude-common-callbacks -
make common callbacks invocations like Integer#times appear inlined so you can see call origins in graph
-
-h, --help -
Show help message
-
--version -
Show version 0.13.1
Releases
9 releases since Debian 4.0 (Etch); the text changed 2 times.
--eval-noprof since Debian 9 (Stretch);
--exclude since Debian 9 (Stretch);
--exclude-common-callbacks since Debian 9 (Stretch);
--exclude-common-cycles since Debian 9 (Stretch);
--exclude-file since Debian 9 (Stretch);
--mode since Debian 5.0 (Lenny);
--replace-progname since Debian 5.0 (Lenny);
--require-noprof since Debian 9 (Stretch);
--sort since Debian 9 (Stretch);
-E since Debian 9 (Stretch);
-R since Debian 9 (Stretch);
-X since Debian 9 (Stretch);
-d since Debian 9 (Stretch);
-s since Debian 9 (Stretch);
-x since Debian 9 (Stretch).
--clock-mode until Debian 4.0 (Etch);
-c until Debian 4.0 (Etch).