From: Joel VanderWerf Date: 2002-10-29T04:12:02+09:00 Subject: Re: interpreting the second profiling column of Ruby profiler Olonichev Sergei wrote: > Hello, > > I doubt in interpreting the second profiling column of Ruby profiler. > Here you are a small portion of the profiler's output: > > % cumulative self self total > time seconds seconds calls ms/call ms/call name > 12.63 115.42 115.42 268703 0.43 0.63 Array#hash > 7.48 183.72 68.31 160340 0.43 0.64 Array#eql? > 6.06 239.10 55.38 161270 0.34 1.56 Hash#[] > 5.99 293.87 54.77 537406 0.10 0.10 Kernel.hash > 4.29 333.06 39.19 14370 2.73 10.98 FST#del_transition > > [...] > > 0.00 905.65 0.00 1 0.00 913743.00 #toplevel > 0.00 905.65 0.00 5 0.00 0.00 Module#public > 0.00 905.65 0.00 6 0.00 0.00 Hash#clear > 0.00 905.65 0.00 1 0.00 460.00 Chains2MINFST#finish > 0.00 905.65 0.00 5 0.00 0.00 Hash#new > > In "Ruby Developer's Guide", it is written: > "... The second column is the cumulative for the methods up to and including > the current one. ..." > > But why the numbers below in the second column are so big? It's cumulative as you read down the column, adding "self seconds" each time. So: 183.72 = 115.42 + 68.31 (approx.) and so on.