File Manager
Viewing File: graph_html.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>graph.html - ruby-prof</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></script>
<link href="../css/fonts.css" rel="stylesheet">
<link href="../css/rdoc.css" rel="stylesheet">
<body id="top" role="document" class="file">
<nav role="navigation">
<div id="project-navigation">
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
<h2>
<a href="../index.html" rel="home">Home</a>
</h2>
<div id="table-of-contents-navigation">
<a href="../table_of_contents.html#pages">Pages</a>
<a href="../table_of_contents.html#classes">Classes</a>
<a href="../table_of_contents.html#methods">Methods</a>
</div>
</div>
<div id="search-section" role="search" class="project-section initially-hidden">
<form action="#" method="get" accept-charset="utf-8">
<div id="search-field-wrapper">
<input id="search-field" role="combobox" aria-label="Search"
aria-autocomplete="list" aria-controls="search-results"
type="text" name="search" placeholder="Search" spellcheck="false"
title="Type to search, Up and Down to navigate, Enter to load">
</div>
<ul id="search-results" aria-label="Search Results"
aria-busy="false" aria-expanded="false"
aria-atomic="false" class="initially-hidden"></ul>
</form>
</div>
</div>
<div id="project-metadata">
<div id="fileindex-section" class="nav-section">
<h3>Pages</h3>
<ul class="link-list">
<li><a href="../LICENSE.html">LICENSE</a>
<li><a href="../README_rdoc.html">README</a>
<li><a href="../examples/flat_txt.html">flat</a>
<li><a href="../examples/graph_html.html">graph.html</a>
<li><a href="../examples/graph_txt.html">graph</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-label="Page examples/graph.html">
<p><!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “<a
href="http://www.w3.org/TR/html4/strict.dtd">www.w3.org/TR/html4/strict.dtd</a>”>
<html> <head> <style media=“all” type=“text/css”></p>
<pre> table {
border-collapse: collapse;
border: 1px solid #CCC;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 9pt;
line-height: normal;
}
th {
text-align: center;
border-top: 1px solid #FB7A31;
border-bottom: 1px solid #FB7A31;
background: #FFC;
padding: 0.3em;
border-left: 1px solid silver;
}
tr.break td {
border: 0;
border-top: 1px solid #FB7A31;
padding: 0;
margin: 0;
}
tr.method td {
font-weight: bold;
}
td {
padding: 0.3em;
}
td:first-child {
width: 190px;
}
td {
border-left: 1px solid #CCC;
text-align: center;
}
</style></pre>
<p></head> <body> <h1> Graph Profile</h1>
<p>Graph profiles show how long each method runs, which methods call
it</p>
<pre>and which methods it calls. To understand how to read a graph profile, refer to
the <a href="graph.txt">documentation</a> for the text graph report. </p></pre>
<p><p>The main advantage of an HTML graph format versus the text format
is the use of</p>
<pre class="ruby"><span class="ruby-identifier">hyperlinks</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">jump</span> <span class="ruby-identifier">between</span> <span class="ruby-identifier">methods</span>. <span class="ruby-constant">This</span> <span class="ruby-identifier">makes</span> <span class="ruby-identifier">it</span> <span class="ruby-identifier">easier</span> <span class="ruby-identifier">to</span> <span class="ruby-identifier">understand</span> <span class="ruby-identifier">the</span> <span class="ruby-identifier">flow</span>
</pre>
<p>of control through a program and which methods take the most
time.</p> <p>Below is the output from running printers_test.rb
reproduced in HTML. </p> <p>Profile Report</p></p>
<p><table></p>
<pre><tr>
<th>Thread ID</th>
<th>Total Time</th>
</tr>
<tr>
<td><a href="#21277412">21277412</a></td>
<td>8.766</td>
</tr></pre>
<p></table></p>
<p><h2><a name=“21277412”>Thread 21277412</a></h2>
<table></p>
<pre><tr>
<th> %Total</th>
<th> %Self</th>
<th> Total</th>
<th> Self</th>
<th> Children</th>
<th> Calls</th>
<th>Name</th>
</tr>
<tr class="method">
<td> 100.00%</td>
<td> 0.00%</td>
<td> 8.77</td>
<td> 0.00</td>
<td> 8.77</td>
<td> 1</td>
<td><a name="_toplevel_21277412">#toplevel</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 8.77</td>
<td> 0.00</td>
<td> 8.77</td>
<td> 1/1</td>
<td><a href="#Object_run_primes_21277412">Object#run_primes</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 8.77</td>
<td> 0.00</td>
<td> 8.77</td>
<td> 1/1</td>
<td><a href="#_toplevel_21277412">#toplevel</a></td>
</tr>
<tr class="method">
<td> 100.00%</td>
<td> 0.00%</td>
<td> 8.77</td>
<td> 0.00</td>
<td> 8.77</td>
<td> 1</td>
<td><a name="Object_run_primes_21277412">Object#run_primes</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.02</td>
<td> 0.00</td>
<td> 0.02</td>
<td> 1/1</td>
<td><a href="#Object_make_random_array_21277412">Object#make_random_array</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 2.09</td>
<td> 1/1</td>
<td><a href="#Object_find_largest_21277412">Object#find_largest</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.66</td>
<td> 0.00</td>
<td> 6.66</td>
<td> 1/1</td>
<td><a href="#Object_find_primes_21277412">Object#find_primes</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.63</td>
<td> 4.06</td>
<td> 2.56</td>
<td> 500/501</td>
<td><a href="#Object_is_prime_21277412">Object#is_prime</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 2.09</td>
<td> 1/501</td>
<td><a href="#Object_find_largest_21277412">Object#find_largest</a></td>
</tr>
<tr class="method">
<td> 99.48%</td>
<td> 46.34%</td>
<td> 8.72</td>
<td> 4.06</td>
<td> 4.66</td>
<td> 501</td>
<td><a name="Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 61/61</td>
<td><a href="#Array_[]_21277412">Array#[]</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 61/61</td>
<td><a href="#Fixnum_>_21277412">Fixnum#_</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 2.09</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 61/61</td>
<td><a href="#Kernel_sleep_21277412">Kernel.sleep</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 1.24</td>
<td> 1.24</td>
<td> 0.00</td>
<td> 250862/250862</td>
<td><a href="#Fixnum____21277412">Fixnum#==</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 1.33</td>
<td> 1.33</td>
<td> 0.00</td>
<td> 250862/250862</td>
<td><a href="#Fixnum_%_21277412">Fixnum#%</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.66</td>
<td> 0.01</td>
<td> 6.64</td>
<td> 1/1</td>
<td><a href="#Object_find_primes_21277412">Object#find_primes</a></td>
</tr>
<tr class="method">
<td> 75.93%</td>
<td> 0.17%</td>
<td> 6.66</td>
<td> 0.01</td>
<td> 6.64</td>
<td> 1</td>
<td><a name="Array_select_21277412">Array#select</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.64</td>
<td> 0.01</td>
<td> 6.63</td>
<td> 500/500</td>
<td><a href="#Object_is_prime_21277412">Object#is_prime</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.66</td>
<td> 0.00</td>
<td> 6.66</td>
<td> 1/1</td>
<td><a href="#Object_run_primes_21277412">Object#run_primes</a></td>
</tr>
<tr class="method">
<td> 75.93%</td>
<td> 0.00%</td>
<td> 6.66</td>
<td> 0.00</td>
<td> 6.66</td>
<td> 1</td>
<td><a name="Object_find_primes_21277412">Object#find_primes</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.66</td>
<td> 0.01</td>
<td> 6.64</td>
<td> 1/1</td>
<td><a href="#Array_select_21277412">Array#select</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.64</td>
<td> 0.01</td>
<td> 6.63</td>
<td> 500/500</td>
<td><a href="#Array_select_21277412">Array#select</a></td>
</tr>
<tr class="method">
<td> 75.76%</td>
<td> 0.17%</td>
<td> 6.64</td>
<td> 0.01</td>
<td> 6.63</td>
<td> 500</td>
<td><a name="Object_is_prime_21277412">Object#is_prime</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500/501</td>
<td><a href="#Fixnum_-_21277412">Fixnum#-</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 6.63</td>
<td> 4.06</td>
<td> 2.56</td>
<td> 500/501</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 2.09</td>
<td> 1/1</td>
<td><a href="#Object_run_primes_21277412">Object#run_primes</a></td>
</tr>
<tr class="method">
<td> 23.89%</td>
<td> 0.00%</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 2.09</td>
<td> 1</td>
<td><a name="Object_find_largest_21277412">Object#find_largest</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/501</td>
<td><a href="#Fixnum_-_21277412">Fixnum#-</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 2.09</td>
<td> 1/501</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Array_first_21277412">Array#first</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Array_length_21277412">Array#length</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 2.09</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 61/61</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr class="method">
<td> 23.89%</td>
<td> 23.89%</td>
<td> 2.09</td>
<td> 2.09</td>
<td> 0.00</td>
<td> 61</td>
<td><a name="Kernel_sleep_21277412">Kernel.sleep</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 1.33</td>
<td> 1.33</td>
<td> 0.00</td>
<td> 250862/250862</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr class="method">
<td> 15.12%</td>
<td> 15.12%</td>
<td> 1.33</td>
<td> 1.33</td>
<td> 0.00</td>
<td> 250862</td>
<td><a name="Fixnum_%_21277412">Fixnum#%</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 1.24</td>
<td> 1.24</td>
<td> 0.00</td>
<td> 250862/250862</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr class="method">
<td> 14.13%</td>
<td> 14.13%</td>
<td> 1.24</td>
<td> 1.24</td>
<td> 0.00</td>
<td> 250862</td>
<td><a name="Fixnum____21277412">Fixnum#==</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.02</td>
<td> 0.00</td>
<td> 0.02</td>
<td> 1/1</td>
<td><a href="#Object_run_primes_21277412">Object#run_primes</a></td>
</tr>
<tr class="method">
<td> 0.18%</td>
<td> 0.00%</td>
<td> 0.02</td>
<td> 0.00</td>
<td> 0.02</td>
<td> 1</td>
<td><a name="Object_make_random_array_21277412">Object#make_random_array</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.02</td>
<td> 0.02</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Array_each_index_21277412">Array#each_index</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Class_new_21277412">Class#new</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.02</td>
<td> 0.02</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Object_make_random_array_21277412">Object#make_random_array</a></td>
</tr>
<tr class="method">
<td> 0.18%</td>
<td> 0.18%</td>
<td> 0.02</td>
<td> 0.02</td>
<td> 0.00</td>
<td> 1</td>
<td><a name="Array_each_index_21277412">Array#each_index</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500/500</td>
<td><a href="#Kernel_rand_21277412">Kernel.rand</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500/500</td>
<td><a href="#Array_[]__21277412">Array#[]=</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500/501</td>
<td><a href="#Object_is_prime_21277412">Object#is_prime</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/501</td>
<td><a href="#Object_find_largest_21277412">Object#find_largest</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 501</td>
<td><a name="Fixnum_-_21277412">Fixnum#-</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Kernel_rand_21277412">Kernel.rand</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1</td>
<td><a name="Integer_to_int_21277412">Integer#to_int</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Object_find_largest_21277412">Object#find_largest</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1</td>
<td><a name="Array_first_21277412">Array#first</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Class_new_21277412">Class#new</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1</td>
<td><a name="Array_initialize_21277412">Array#initialize</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Object_find_largest_21277412">Object#find_largest</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1</td>
<td><a name="Array_length_21277412">Array#length</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Object_make_random_array_21277412">Object#make_random_array</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1</td>
<td><a name="Class_new_21277412">Class#new</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Array_initialize_21277412">Array#initialize</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 61/61</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 61</td>
<td><a name="Fixnum_>_21277412">Fixnum#_</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 61/61</td>
<td><a href="#Integer_upto_21277412">Integer#upto</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 61</td>
<td><a name="Array_[]_21277412">Array#[]</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500/500</td>
<td><a href="#Array_each_index_21277412">Array#each_index</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500</td>
<td><a name="Array_[]__21277412">Array#[]=</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500/500</td>
<td><a href="#Array_each_index_21277412">Array#each_index</a></td>
</tr>
<tr class="method">
<td> 0.00%</td>
<td> 0.00%</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 500</td>
<td><a name="Kernel_rand_21277412">Kernel.rand</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 0.00</td>
<td> 1/1</td>
<td><a href="#Integer_to_int_21277412">Integer#to_int</a></td>
</tr>
<tr class="break">
<td colspan="7"></td>
</tr></pre>
<p></table> </body> </html></p>
</main>
<footer id="validator-badges" role="contentinfo">
<p><a href="http://validator.w3.org/check/referer">Validate</a>
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.2.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>