ruby-prof 0.13.0 → 0.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.rdoc +8 -7
- data/doc/LICENSE.html +5 -5
- data/doc/README_rdoc.html +58 -50
- data/doc/Rack/RubyProf.html +6 -6
- data/doc/RubyProf.html +5 -4
- data/doc/RubyProf/AbstractPrinter.html +1 -1
- data/doc/RubyProf/CallInfo.html +2 -2
- data/doc/RubyProf/CallInfoPrinter.html +1 -1
- data/doc/RubyProf/CallStackPrinter.html +39 -39
- data/doc/RubyProf/CallTreePrinter.html +8 -8
- data/doc/RubyProf/Cmd.html +38 -38
- data/doc/RubyProf/DotPrinter.html +2 -2
- data/doc/RubyProf/FlatPrinterWithLineNumbers.html +3 -3
- data/doc/RubyProf/GraphHtmlPrinter.html +10 -11
- data/doc/RubyProf/MethodInfo.html +2 -2
- data/doc/RubyProf/ProfileTask.html +7 -7
- data/doc/RubyProf/Test.html +11 -11
- data/doc/created.rid +4 -4
- data/doc/examples/flat_txt.html +1 -1
- data/doc/examples/graph_txt.html +3 -3
- data/doc/index.html +58 -50
- data/doc/js/search_index.js +1 -1
- data/ext/ruby_prof/extconf.rb +1 -1
- data/ext/ruby_prof/version.h +2 -2
- data/lib/ruby-prof/printers/graph_html_printer.rb +3 -4
- data/ruby-prof.gemspec +2 -2
- data/test/multi_printer_test.rb +2 -1
- data/test/stack_printer_test.rb +4 -2
- metadata +20 -37
@@ -266,7 +266,7 @@ and similar tools.</p>
|
|
266
266
|
for it to be printed out in the report.
|
267
267
|
Default value is 0.
|
268
268
|
|
269
|
-
:print_file - True or false. Specifies if a method
|
269
|
+
:print_file - True or false. Specifies if a method's source
|
270
270
|
file should be printed. Default value if false.</pre>
|
271
271
|
|
272
272
|
|
@@ -282,25 +282,25 @@ and similar tools.</p>
|
|
282
282
|
<span class="ruby-keyword">case</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">measure_mode</span>
|
283
283
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">PROCESS_TIME</span>
|
284
284
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">CLOCKS_PER_SEC</span>;
|
285
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
285
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'process_time'</span>
|
286
286
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">WALL_TIME</span>
|
287
287
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1_000_000</span>
|
288
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
288
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'wall_time'</span>
|
289
289
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:CPU_TIME</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">CPU_TIME</span>
|
290
290
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">cpu_frequency</span>
|
291
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
291
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'cpu_time'</span>
|
292
292
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:ALLOCATIONS</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">ALLOCATIONS</span>
|
293
293
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1</span>
|
294
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
294
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'allocations'</span>
|
295
295
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:MEMORY</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">MEMORY</span>
|
296
296
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1</span>
|
297
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
297
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'memory'</span>
|
298
298
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:GC_RUNS</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GC_RUNS</span>
|
299
299
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1</span>
|
300
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
300
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'gc_runs'</span>
|
301
301
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:GC_TIME</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GC_TIME</span>
|
302
302
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1000000</span>
|
303
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
303
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'gc_time'</span>
|
304
304
|
<span class="ruby-keyword">else</span>
|
305
305
|
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Unknown measure mode: #{RubyProf.measure_mode}"</span>
|
306
306
|
<span class="ruby-keyword">end</span>
|
data/doc/RubyProf/Cmd.html
CHANGED
@@ -335,15 +335,15 @@
|
|
335
335
|
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-string">""</span>
|
336
336
|
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-string">"Options:"</span>
|
337
337
|
|
338
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
339
|
-
<span class="ruby-string"
|
340
|
-
<span class="ruby-string"
|
341
|
-
<span class="ruby-string"
|
342
|
-
<span class="ruby-string"
|
343
|
-
<span class="ruby-string"
|
344
|
-
<span class="ruby-string"
|
345
|
-
<span class="ruby-string"
|
346
|
-
<span class="ruby-string"
|
338
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-p printer'</span>, <span class="ruby-string">'--printer=printer'</span>, [<span class="ruby-value">:flat</span>, <span class="ruby-value">:flat_with_line_numbers</span>, <span class="ruby-value">:graph</span>, <span class="ruby-value">:graph_html</span>, <span class="ruby-value">:call_tree</span>, <span class="ruby-value">:call_stack</span>, <span class="ruby-value">:dot</span>],
|
339
|
+
<span class="ruby-string">'Select a printer:'</span>,
|
340
|
+
<span class="ruby-string">' flat - Prints a flat profile as text (default).'</span>,
|
341
|
+
<span class="ruby-string">' flat_with_line_numbers - same as flat, with line numbers.'</span>,
|
342
|
+
<span class="ruby-string">' graph - Prints a graph profile as text.'</span>,
|
343
|
+
<span class="ruby-string">' graph_html - Prints a graph profile as html.'</span>,
|
344
|
+
<span class="ruby-string">' call_tree - format for KCacheGrind'</span>,
|
345
|
+
<span class="ruby-string">' call_stack - prints a HTML visualization of the call tree'</span>,
|
346
|
+
<span class="ruby-string">' dot - Prints a graph profile as a dot file'</span>
|
347
347
|
) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">printer</span><span class="ruby-operator">|</span>
|
348
348
|
|
349
349
|
|
@@ -365,29 +365,29 @@
|
|
365
365
|
<span class="ruby-keyword">end</span>
|
366
366
|
<span class="ruby-keyword">end</span>
|
367
367
|
|
368
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
369
|
-
<span class="ruby-string"
|
370
|
-
<span class="ruby-string"
|
371
|
-
<span class="ruby-string"
|
368
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-m min_percent'</span>, <span class="ruby-string">'--min_percent=min_percent'</span>, <span class="ruby-constant">Float</span>,
|
369
|
+
<span class="ruby-string">'The minimum percent a method must take before '</span>,
|
370
|
+
<span class="ruby-string">' being included in output reports.'</span>,
|
371
|
+
<span class="ruby-string">' this option is not supported for call tree.'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">min_percent</span><span class="ruby-operator">|</span>
|
372
372
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">min_percent</span> = <span class="ruby-identifier">min_percent</span>
|
373
373
|
<span class="ruby-keyword">end</span>
|
374
374
|
|
375
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
376
|
-
<span class="ruby-string"
|
375
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-f path'</span>, <span class="ruby-string">'--file=path'</span>,
|
376
|
+
<span class="ruby-string">'Output results to a file instead of standard out.'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
377
377
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">file</span> = <span class="ruby-identifier">file</span>
|
378
378
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">old_wd</span> = <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">pwd</span>
|
379
379
|
<span class="ruby-keyword">end</span>
|
380
380
|
|
381
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
381
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'--mode=measure_mode'</span>,
|
382
382
|
[<span class="ruby-value">:process</span>, <span class="ruby-value">:wall</span>, <span class="ruby-value">:cpu</span>, <span class="ruby-value">:allocations</span>, <span class="ruby-value">:memory</span>, <span class="ruby-value">:gc_runs</span>, <span class="ruby-value">:gc_time</span>],
|
383
|
-
<span class="ruby-string"
|
384
|
-
<span class="ruby-string"
|
385
|
-
<span class="ruby-string"
|
386
|
-
<span class="ruby-string"
|
387
|
-
<span class="ruby-string"
|
388
|
-
<span class="ruby-string"
|
389
|
-
<span class="ruby-string"
|
390
|
-
<span class="ruby-string"
|
383
|
+
<span class="ruby-string">'Select what ruby-prof should measure:'</span>,
|
384
|
+
<span class="ruby-string">' process - Process time (default).'</span>,
|
385
|
+
<span class="ruby-string">' wall - Wall time.'</span>,
|
386
|
+
<span class="ruby-string">' cpu - CPU time (Pentium and PowerPCs only).'</span>,
|
387
|
+
<span class="ruby-string">' allocations - Object allocations (requires patched Ruby interpreter).'</span>,
|
388
|
+
<span class="ruby-string">' memory - Allocated memory in KB (requires patched Ruby interpreter).'</span>,
|
389
|
+
<span class="ruby-string">' gc_runs - Number of garbage collections (requires patched Ruby interpreter).'</span>,
|
390
|
+
<span class="ruby-string">' gc_time - Time spent in garbage collection (requires patched Ruby interpreter).'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">measure_mode</span><span class="ruby-operator">|</span>
|
391
391
|
|
392
392
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">measure_mode</span>
|
393
393
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:process</span>
|
@@ -407,12 +407,12 @@
|
|
407
407
|
<span class="ruby-keyword">end</span>
|
408
408
|
<span class="ruby-keyword">end</span>
|
409
409
|
|
410
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
411
|
-
<span class="ruby-string"
|
412
|
-
<span class="ruby-string"
|
413
|
-
<span class="ruby-string"
|
414
|
-
<span class="ruby-string"
|
415
|
-
<span class="ruby-string"
|
410
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-s sort_mode'</span>, <span class="ruby-string">'--sort=sort_mode'</span>, [<span class="ruby-value">:total</span>, <span class="ruby-value">:self</span>, <span class="ruby-value">:wait</span>, <span class="ruby-value">:child</span>],
|
411
|
+
<span class="ruby-string">'Select how ruby-prof results should be sorted:'</span>,
|
412
|
+
<span class="ruby-string">' total - Total time'</span>,
|
413
|
+
<span class="ruby-string">' self - Self time'</span>,
|
414
|
+
<span class="ruby-string">' wait - Wait time'</span>,
|
415
|
+
<span class="ruby-string">' child - Child time'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sort_mode</span><span class="ruby-operator">|</span>
|
416
416
|
|
417
417
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">sort_method</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">sort_mode</span>
|
418
418
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:total</span>
|
@@ -447,7 +447,7 @@
|
|
447
447
|
<span class="ruby-keyword">end</span>
|
448
448
|
|
449
449
|
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">"-v"</span>,<span class="ruby-string">"Show version, set $VERBOSE to true, profile script if option given"</span>) <span class="ruby-keyword">do</span>
|
450
|
-
<span class="ruby-identifier">puts</span> <span class="ruby-string">"ruby version: "</span> <span class="ruby-operator">+</span> [<span class="ruby-constant">RUBY_PATCHLEVEL</span>, <span class="ruby-constant">RUBY_PLATFORM</span>, <span class="ruby-constant">RUBY_VERSION</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string"
|
450
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">"ruby version: "</span> <span class="ruby-operator">+</span> [<span class="ruby-constant">RUBY_PATCHLEVEL</span>, <span class="ruby-constant">RUBY_PLATFORM</span>, <span class="ruby-constant">RUBY_VERSION</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">' '</span>)
|
451
451
|
<span class="ruby-identifier">$VERBOSE</span> = <span class="ruby-keyword">true</span>
|
452
452
|
<span class="ruby-keyword">end</span>
|
453
453
|
|
@@ -455,25 +455,25 @@
|
|
455
455
|
<span class="ruby-identifier">$DEBUG</span> = <span class="ruby-keyword">true</span>
|
456
456
|
<span class="ruby-keyword">end</span>
|
457
457
|
|
458
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
458
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-R lib'</span>, <span class="ruby-string">'--require-noprof lib'</span>, <span class="ruby-string">'require a specific library (not profiled)'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">lib</span><span class="ruby-operator">|</span>
|
459
459
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">pre_libs</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">lib</span>
|
460
460
|
<span class="ruby-keyword">end</span>
|
461
461
|
|
462
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
462
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-E code'</span>, <span class="ruby-string">'--eval-noprof code'</span>, <span class="ruby-string">'execute the ruby statements (not profiled)'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">code</span><span class="ruby-operator">|</span>
|
463
463
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">pre_execs</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">code</span>
|
464
464
|
<span class="ruby-keyword">end</span>
|
465
465
|
|
466
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
466
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-x regexp'</span>, <span class="ruby-string">'--exclude regexp'</span>, <span class="ruby-string">'exclude methods by regexp (see method elimination)'</span>) <span class="ruby-keyword">do</span><span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
|
467
467
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">||=</span> []
|
468
468
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">meth</span>)
|
469
469
|
<span class="ruby-keyword">end</span>
|
470
470
|
|
471
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
471
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-X file'</span>, <span class="ruby-string">'--exclude-file file'</span>, <span class="ruby-string">'exclude methods by regexp listed in file (see method elimination)'</span>) <span class="ruby-keyword">do</span><span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
472
472
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods_files</span> <span class="ruby-operator">||=</span> []
|
473
473
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods_files</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">file</span>
|
474
474
|
<span class="ruby-keyword">end</span>
|
475
475
|
|
476
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
476
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'--exclude-common-cycles'</span>, <span class="ruby-string">'make common iterators like Integer#times appear inlined'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
|
477
477
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">||=</span> []
|
478
478
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">+=</span> <span class="ruby-node">%w{
|
479
479
|
Integer#times
|
@@ -504,10 +504,10 @@
|
|
504
504
|
Enumerable#collect
|
505
505
|
Enumerable#reduce
|
506
506
|
}</span>
|
507
|
-
<span class="ruby-comment">#TODO: may be the whole Enumerable module should be excluded via
|
507
|
+
<span class="ruby-comment">#TODO: may be the whole Enumerable module should be excluded via 'Enumerable#.*', we need feedback on use cases.</span>
|
508
508
|
<span class="ruby-keyword">end</span>
|
509
509
|
|
510
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
510
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'--exclude-common-callbacks'</span>, <span class="ruby-string">'make common callbacks invocations like Integer#times appear inlined so you can see call origins in graph'</span>) <span class="ruby-keyword">do</span><span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
|
511
511
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">||=</span> []
|
512
512
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">+=</span> <span class="ruby-node">%w{
|
513
513
|
Method#call
|
@@ -280,12 +280,12 @@ to use the :min_percent option, for example:</p>
|
|
280
280
|
<span class="ruby-ivar">@output</span> = <span class="ruby-identifier">output</span>
|
281
281
|
<span class="ruby-identifier">setup_options</span>(<span class="ruby-identifier">options</span>)
|
282
282
|
|
283
|
-
<span class="ruby-identifier">puts</span> <span class="ruby-string"
|
283
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">'digraph "Profile" {'</span>
|
284
284
|
<span class="ruby-comment">#puts "label=\"#{mode_name} >=#{min_percent}%\\nTotal: #{total_time}\";"</span>
|
285
285
|
<span class="ruby-identifier">puts</span> <span class="ruby-string">"labelloc=t;"</span>
|
286
286
|
<span class="ruby-identifier">puts</span> <span class="ruby-string">"labeljust=l;"</span>
|
287
287
|
<span class="ruby-identifier">print_threads</span>
|
288
|
-
<span class="ruby-identifier">puts</span> <span class="ruby-string"
|
288
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">'}'</span>
|
289
289
|
<span class="ruby-keyword">end</span></pre>
|
290
290
|
</div><!-- print-source -->
|
291
291
|
|
@@ -224,14 +224,14 @@ printer.print(STDOUT, {})</pre>
|
|
224
224
|
<span class="ruby-identifier">method</span>.<span class="ruby-identifier">recursive?</span> <span class="ruby-operator">?</span> <span class="ruby-string">"*"</span> <span class="ruby-operator">:</span> <span class="ruby-string">" "</span>, <span class="ruby-comment"># cycle</span>
|
225
225
|
<span class="ruby-identifier">method_name</span>(<span class="ruby-identifier">method</span>) <span class="ruby-comment"># name</span>
|
226
226
|
]
|
227
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string"
|
227
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'ruby_runtime'</span>
|
228
228
|
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">" %s:%s"</span> <span class="ruby-operator">%</span> [<span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">method</span>.<span class="ruby-identifier">source_file</span>), <span class="ruby-identifier">method</span>.<span class="ruby-identifier">line</span>]
|
229
229
|
<span class="ruby-keyword">end</span>
|
230
230
|
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">"\n\tcalled from: "</span>
|
231
231
|
|
232
|
-
<span class="ruby-comment"># make sure they
|
232
|
+
<span class="ruby-comment"># make sure they're unique</span>
|
233
233
|
<span class="ruby-identifier">method</span>.<span class="ruby-identifier">call_infos</span>.<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">ci</span><span class="ruby-operator">|</span>
|
234
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string"
|
234
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'ruby_runtime'</span>
|
235
235
|
[<span class="ruby-identifier">method_name</span>(<span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>), <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">source_file</span>), <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">line</span>]
|
236
236
|
<span class="ruby-keyword">else</span>
|
237
237
|
<span class="ruby-keyword">nil</span>
|
@@ -242,7 +242,7 @@ reports as html. To use the graph html printer:</p>
|
|
242
242
|
|
243
243
|
<div class="method-heading">
|
244
244
|
<span class="method-name">create_link</span><span
|
245
|
-
class="method-args">(thread, method)</span>
|
245
|
+
class="method-args">(thread, overall_time, method)</span>
|
246
246
|
<span class="method-click-advice">click to toggle source</span>
|
247
247
|
</div>
|
248
248
|
|
@@ -257,14 +257,13 @@ be printed out.</p>
|
|
257
257
|
|
258
258
|
<div class="method-source-code" id="create_link-source">
|
259
259
|
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line 49</span>
|
260
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">create_link</span>(<span class="ruby-identifier">thread</span>, <span class="ruby-identifier">method</span>)
|
261
|
-
<span class="ruby-identifier">overall_time</span> = <span class="ruby-identifier">thread</span>.<span class="ruby-identifier">total_time</span>
|
260
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">create_link</span>(<span class="ruby-identifier">thread</span>, <span class="ruby-identifier">overall_time</span>, <span class="ruby-identifier">method</span>)
|
262
261
|
<span class="ruby-identifier">total_percent</span> = (<span class="ruby-identifier">method</span>.<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-identifier">overall_time</span>) * <span class="ruby-value">100</span>
|
263
262
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">total_percent</span> <span class="ruby-operator"><</span> <span class="ruby-identifier">min_percent</span>
|
264
263
|
<span class="ruby-comment"># Just return name</span>
|
265
264
|
<span class="ruby-identifier">h</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">full_name</span>
|
266
265
|
<span class="ruby-keyword">else</span>
|
267
|
-
<span class="ruby-identifier">href</span> = <span class="ruby-string"
|
266
|
+
<span class="ruby-identifier">href</span> = <span class="ruby-string">'#'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">method_href</span>(<span class="ruby-identifier">thread</span>, <span class="ruby-identifier">method</span>)
|
268
267
|
<span class="ruby-node">"<a href=\"#{href}\">#{h method.full_name}</a>"</span>
|
269
268
|
<span class="ruby-keyword">end</span>
|
270
269
|
<span class="ruby-keyword">end</span></pre>
|
@@ -294,7 +293,7 @@ be printed out.</p>
|
|
294
293
|
|
295
294
|
|
296
295
|
<div class="method-source-code" id="file_link-source">
|
297
|
-
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line
|
296
|
+
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line 64</span>
|
298
297
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">file_link</span>(<span class="ruby-identifier">path</span>, <span class="ruby-identifier">linenum</span>)
|
299
298
|
<span class="ruby-identifier">srcfile</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">path</span>)
|
300
299
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">srcfile</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r\/ruby_runtime$/</span>
|
@@ -333,7 +332,7 @@ be printed out.</p>
|
|
333
332
|
|
334
333
|
|
335
334
|
<div class="method-source-code" id="method_href-source">
|
336
|
-
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line
|
335
|
+
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line 60</span>
|
337
336
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">method_href</span>(<span class="ruby-identifier">thread</span>, <span class="ruby-identifier">method</span>)
|
338
337
|
<span class="ruby-identifier">h</span>(<span class="ruby-identifier">method</span>.<span class="ruby-identifier">full_name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-node">%r[><#\.\?=:]/</span>,<span class="ruby-string">"_"</span>) <span class="ruby-operator">+</span> <span class="ruby-string">"_"</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">thread</span>.<span class="ruby-identifier">fiber_id</span>.<span class="ruby-identifier">to_s</span>)
|
339
338
|
<span class="ruby-keyword">end</span></pre>
|
@@ -430,9 +429,9 @@ be printed out.</p>
|
|
430
429
|
|
431
430
|
|
432
431
|
<div class="method-source-code" id="template-source">
|
433
|
-
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line
|
432
|
+
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line 77</span>
|
434
433
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">template</span>
|
435
|
-
<span class="ruby-string"
|
434
|
+
<span class="ruby-string">'
|
436
435
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
437
436
|
<html>
|
438
437
|
<head>
|
@@ -555,7 +554,7 @@ be printed out.</p>
|
|
555
554
|
<td><%= sprintf("%#{TIME_WIDTH}.2f", caller.children_time) %></td>
|
556
555
|
<% called = "#{caller.called}/#{method.called}" %>
|
557
556
|
<td><%= sprintf("%#{CALL_WIDTH}s", called) %></td>
|
558
|
-
<td class="method_name"><%= create_link(thread, caller.parent.target) %></td>
|
557
|
+
<td class="method_name"><%= create_link(thread, total_time, caller.parent.target) %></td>
|
559
558
|
<td><%= file_link(caller.parent.target.source_file, caller.line) %></td>
|
560
559
|
</tr>
|
561
560
|
<% end %>
|
@@ -588,7 +587,7 @@ be printed out.</p>
|
|
588
587
|
<td><%= sprintf("%#{TIME_WIDTH}.2f", callee.children_time) %></td>
|
589
588
|
<% called = "#{callee.called}/#{callee.target.called}" %>
|
590
589
|
<td><%= sprintf("%#{CALL_WIDTH}s", called) %></td>
|
591
|
-
<td class="method_name"><%= create_link(thread, callee.target) %></td>
|
590
|
+
<td class="method_name"><%= create_link(thread, total_time, callee.target) %></td>
|
592
591
|
<td><%= file_link(method.source_file, callee.line) %></td>
|
593
592
|
</tr>
|
594
593
|
<% end %>
|
@@ -604,7 +603,7 @@ be printed out.</p>
|
|
604
603
|
</table>
|
605
604
|
<% end %>
|
606
605
|
</body>
|
607
|
-
</html>
|
606
|
+
</html>'</span>
|
608
607
|
<span class="ruby-keyword">end</span></pre>
|
609
608
|
</div><!-- template-source -->
|
610
609
|
|
@@ -270,7 +270,7 @@
|
|
270
270
|
<div class="method-source-code" id="aggregate_children-source">
|
271
271
|
<pre><span class="ruby-comment"># File lib/ruby-prof/method_info.rb, line 105</span>
|
272
272
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">aggregate_children</span>
|
273
|
-
<span class="ruby-comment"># Group call info
|
273
|
+
<span class="ruby-comment"># Group call info's based on their targets</span>
|
274
274
|
<span class="ruby-identifier">groups</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">inject</span>(<span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">hash</span>, <span class="ruby-identifier">call_info</span><span class="ruby-operator">|</span>
|
275
275
|
<span class="ruby-identifier">key</span> = <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">target</span>
|
276
276
|
(<span class="ruby-identifier">hash</span>[<span class="ruby-identifier">key</span>] <span class="ruby-operator">||=</span> []) <span class="ruby-operator"><<</span> <span class="ruby-identifier">call_info</span>
|
@@ -309,7 +309,7 @@
|
|
309
309
|
<div class="method-source-code" id="aggregate_parents-source">
|
310
310
|
<pre><span class="ruby-comment"># File lib/ruby-prof/method_info.rb, line 92</span>
|
311
311
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">aggregate_parents</span>
|
312
|
-
<span class="ruby-comment"># Group call info
|
312
|
+
<span class="ruby-comment"># Group call info's based on their parents</span>
|
313
313
|
<span class="ruby-identifier">groups</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">call_infos</span>.<span class="ruby-identifier">inject</span>(<span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">hash</span>, <span class="ruby-identifier">call_info</span><span class="ruby-operator">|</span>
|
314
314
|
<span class="ruby-identifier">key</span> = <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">parent</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">self</span>
|
315
315
|
(<span class="ruby-identifier">hash</span>[<span class="ruby-identifier">key</span>] <span class="ruby-operator">||=</span> []) <span class="ruby-operator"><<</span> <span class="ruby-identifier">call_info</span>
|
@@ -187,10 +187,10 @@ min_percent - Methods that take less than the specified percent
|
|
187
187
|
|
188
188
|
<p>Example:</p>
|
189
189
|
|
190
|
-
<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string"
|
190
|
+
<pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">'ruby-prof/task'</span>
|
191
191
|
|
192
192
|
<span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">ProfileTask</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span>
|
193
|
-
<span class="ruby-identifier">t</span>.<span class="ruby-identifier">test_files</span> = <span class="ruby-constant">FileList</span>[<span class="ruby-string"
|
193
|
+
<span class="ruby-identifier">t</span>.<span class="ruby-identifier">test_files</span> = <span class="ruby-constant">FileList</span>[<span class="ruby-string">'test/test*.rb'</span>]
|
194
194
|
<span class="ruby-identifier">t</span>.<span class="ruby-identifier">output_dir</span> = <span class="ruby-string">"c:/temp"</span>
|
195
195
|
<span class="ruby-identifier">t</span>.<span class="ruby-identifier">printer</span> = :<span class="ruby-identifier">graph</span>
|
196
196
|
<span class="ruby-identifier">t</span>.<span class="ruby-identifier">min_percent</span> = <span class="ruby-value">10</span>
|
@@ -203,8 +203,8 @@ specified on the command line. This provides an easy way to run just one
|
|
203
203
|
test.</p>
|
204
204
|
|
205
205
|
<p>If rake is invoked with a “TESTOPTS=options” command line option, then the
|
206
|
-
given options are passed to the test process after a
|
207
|
-
Test::Unit options to be passed to the test suite.</p>
|
206
|
+
given options are passed to the test process after a '–'. This
|
207
|
+
allows Test::Unit options to be passed to the test suite.</p>
|
208
208
|
|
209
209
|
<p>Examples:</p>
|
210
210
|
|
@@ -334,7 +334,7 @@ rake profile TESTOPTS="--runner=fox" # use the fox test runner</pre>
|
|
334
334
|
<pre><span class="ruby-comment"># File lib/ruby-prof/task.rb, line 134</span>
|
335
335
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">clean_output_directory</span>
|
336
336
|
<span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">output_directory</span>)
|
337
|
-
<span class="ruby-identifier">files</span> = <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-identifier">output_directory</span> <span class="ruby-operator">+</span> <span class="ruby-string"
|
337
|
+
<span class="ruby-identifier">files</span> = <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-identifier">output_directory</span> <span class="ruby-operator">+</span> <span class="ruby-string">'/*'</span>)
|
338
338
|
<span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">rm</span>(<span class="ruby-identifier">files</span>)
|
339
339
|
<span class="ruby-keyword">end</span>
|
340
340
|
<span class="ruby-keyword">end</span></pre>
|
@@ -474,7 +474,7 @@ rake profile TESTOPTS="--runner=fox" # use the fox test runner</pre>
|
|
474
474
|
<div class="method-source-code" id="run_script-source">
|
475
475
|
<pre><span class="ruby-comment"># File lib/ruby-prof/task.rb, line 89</span>
|
476
476
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">run_script</span>(<span class="ruby-identifier">script_path</span>)
|
477
|
-
<span class="ruby-identifier">run_code</span> = <span class="ruby-string"
|
477
|
+
<span class="ruby-identifier">run_code</span> = <span class="ruby-string">''</span>
|
478
478
|
<span class="ruby-constant">RakeFileUtils</span>.<span class="ruby-identifier">verbose</span>(<span class="ruby-ivar">@verbose</span>) <span class="ruby-keyword">do</span>
|
479
479
|
<span class="ruby-identifier">file_name</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">script_path</span>, <span class="ruby-constant">File</span>.<span class="ruby-identifier">extname</span>(<span class="ruby-identifier">script_path</span>))
|
480
480
|
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@printer</span>
|
@@ -495,7 +495,7 @@ rake profile TESTOPTS="--runner=fox" # use the fox test runner</pre>
|
|
495
495
|
<span class="ruby-identifier">puts</span> <span class="ruby-string">"ruby "</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">command_line</span>
|
496
496
|
<span class="ruby-comment"># We have to catch the exeption to continue on. However,</span>
|
497
497
|
<span class="ruby-comment"># the error message will have been output to STDERR</span>
|
498
|
-
<span class="ruby-comment"># already by the time we get here so we don
|
498
|
+
<span class="ruby-comment"># already by the time we get here so we don't have to</span>
|
499
499
|
<span class="ruby-comment"># do that again</span>
|
500
500
|
<span class="ruby-keyword">begin</span>
|
501
501
|
<span class="ruby-identifier">ruby</span> <span class="ruby-identifier">command_line</span>
|
data/doc/RubyProf/Test.html
CHANGED
@@ -255,10 +255,10 @@
|
|
255
255
|
<pre><span class="ruby-comment"># File lib/ruby-prof/test.rb, line 139</span>
|
256
256
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">measure_mode_name</span>(<span class="ruby-identifier">measure_mode</span>)
|
257
257
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">measure_mode</span>
|
258
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">PROCESS_TIME</span>; <span class="ruby-string"
|
259
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">WALL_TIME</span>; <span class="ruby-string"
|
260
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">MEMORY</span>; <span class="ruby-string"
|
261
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">ALLOCATIONS</span>; <span class="ruby-string"
|
258
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">PROCESS_TIME</span>; <span class="ruby-string">'process_time'</span>
|
259
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">WALL_TIME</span>; <span class="ruby-string">'wall_time'</span>
|
260
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">MEMORY</span>; <span class="ruby-string">'memory'</span>
|
261
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">ALLOCATIONS</span>; <span class="ruby-string">'allocations'</span>
|
262
262
|
<span class="ruby-keyword">else</span> <span class="ruby-node">"measure#{measure_mode}"</span>
|
263
263
|
<span class="ruby-keyword">end</span>
|
264
264
|
<span class="ruby-keyword">end</span></pre>
|
@@ -322,10 +322,10 @@
|
|
322
322
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">report_filename</span>(<span class="ruby-identifier">printer</span>, <span class="ruby-identifier">measure_mode</span>)
|
323
323
|
<span class="ruby-identifier">suffix</span> =
|
324
324
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">printer</span>
|
325
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">FlatPrinter</span>; <span class="ruby-string"
|
326
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GraphPrinter</span>; <span class="ruby-string"
|
327
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GraphHtmlPrinter</span>; <span class="ruby-string"
|
328
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">CallTreePrinter</span>; <span class="ruby-string"
|
325
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">FlatPrinter</span>; <span class="ruby-string">'flat.txt'</span>
|
326
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GraphPrinter</span>; <span class="ruby-string">'graph.txt'</span>
|
327
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GraphHtmlPrinter</span>; <span class="ruby-string">'graph.html'</span>
|
328
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">CallTreePrinter</span>; <span class="ruby-string">'tree.txt'</span>
|
329
329
|
<span class="ruby-keyword">else</span> <span class="ruby-identifier">printer</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span>
|
330
330
|
<span class="ruby-keyword">end</span>
|
331
331
|
|
@@ -368,7 +368,7 @@
|
|
368
368
|
<span class="ruby-comment"># Open the file</span>
|
369
369
|
<span class="ruby-identifier">file_name</span> = <span class="ruby-identifier">report_filename</span>(<span class="ruby-identifier">printer</span>, <span class="ruby-identifier">measure_mode</span>)
|
370
370
|
|
371
|
-
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">file_name</span>, <span class="ruby-string"
|
371
|
+
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">file_name</span>, <span class="ruby-string">'wb'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
372
372
|
<span class="ruby-identifier">printer</span>.<span class="ruby-identifier">print</span>(<span class="ruby-identifier">file</span>, <span class="ruby-constant">PROFILE_OPTIONS</span>)
|
373
373
|
<span class="ruby-keyword">end</span>
|
374
374
|
<span class="ruby-keyword">end</span>
|
@@ -443,11 +443,11 @@
|
|
443
443
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">run_profile</span>(<span class="ruby-identifier">measure_mode</span>)
|
444
444
|
<span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">measure_mode</span> = <span class="ruby-identifier">measure_mode</span>
|
445
445
|
|
446
|
-
<span class="ruby-identifier">print</span> <span class="ruby-string"
|
446
|
+
<span class="ruby-identifier">print</span> <span class="ruby-string">' '</span>
|
447
447
|
<span class="ruby-constant">PROFILE_OPTIONS</span>[<span class="ruby-value">:count</span>].<span class="ruby-identifier">times</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
448
448
|
<span class="ruby-identifier">run_test</span> <span class="ruby-keyword">do</span>
|
449
449
|
<span class="ruby-keyword">begin</span>
|
450
|
-
<span class="ruby-identifier">print</span> <span class="ruby-string"
|
450
|
+
<span class="ruby-identifier">print</span> <span class="ruby-string">'.'</span>
|
451
451
|
<span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">flush</span>
|
452
452
|
<span class="ruby-constant">GC</span>.<span class="ruby-identifier">disable</span>
|
453
453
|
|
data/doc/created.rid
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
Sat, 14 Dec 2013 08:43:58 +0100
|
2
2
|
bin/ruby-prof Sat, 02 Feb 2013 10:23:19 +0100
|
3
3
|
bin/ruby-prof-check-trace Sun, 10 Mar 2013 10:57:14 +0100
|
4
4
|
examples/flat.txt Tue, 29 Jan 2013 16:43:39 +0100
|
@@ -17,7 +17,7 @@ lib/ruby-prof/printers/call_tree_printer.rb Tue, 29 Jan 2013 16:43:39 +0100
|
|
17
17
|
lib/ruby-prof/printers/dot_printer.rb Tue, 29 Jan 2013 16:44:27 +0100
|
18
18
|
lib/ruby-prof/printers/flat_printer.rb Sun, 10 Mar 2013 10:57:14 +0100
|
19
19
|
lib/ruby-prof/printers/flat_printer_with_line_numbers.rb Tue, 29 Jan 2013 16:44:27 +0100
|
20
|
-
lib/ruby-prof/printers/graph_html_printer.rb
|
20
|
+
lib/ruby-prof/printers/graph_html_printer.rb Thu, 11 Apr 2013 13:47:28 +0200
|
21
21
|
lib/ruby-prof/printers/graph_printer.rb Sun, 10 Mar 2013 10:57:14 +0100
|
22
22
|
lib/ruby-prof/printers/multi_printer.rb Tue, 29 Jan 2013 16:43:39 +0100
|
23
23
|
lib/ruby-prof/profile.rb Tue, 29 Jan 2013 16:44:27 +0100
|
@@ -27,6 +27,6 @@ lib/ruby-prof/test.rb Tue, 29 Jan 2013 16:43:39 +0100
|
|
27
27
|
lib/ruby-prof/thread.rb Tue, 29 Jan 2013 16:44:27 +0100
|
28
28
|
lib/unprof.rb Tue, 29 Jan 2013 16:43:39 +0100
|
29
29
|
ext/ruby_prof/ruby_prof.c Sun, 10 Mar 2013 10:57:14 +0100
|
30
|
-
ext/ruby_prof/version.h
|
31
|
-
README.rdoc
|
30
|
+
ext/ruby_prof/version.h Sat, 14 Dec 2013 08:38:44 +0100
|
31
|
+
README.rdoc Tue, 26 Nov 2013 08:07:21 +0100
|
32
32
|
LICENSE Tue, 29 Jan 2013 16:43:39 +0100
|
data/doc/examples/flat_txt.html
CHANGED
@@ -156,7 +156,7 @@ example, here is the output from running printers_test.rb.</p>
|
|
156
156
|
cumulative - The sum of the time spent in this method and all the methods listed above it.
|
157
157
|
total - The time spent in this method and its children.
|
158
158
|
self - The time spent in this method.
|
159
|
-
children - The time spent in this method
|
159
|
+
children - The time spent in this method's children.
|
160
160
|
calls - The number of times this method was called.
|
161
161
|
self/call - The average time spent per call in this method.
|
162
162
|
total/call - The average time spent per call in this method and its children.
|