If I wanted to find something like the “time” feature on shell…
where you can do:
time ls
and it will tell you how long it took to execute…
How would I do this in Ruby or what is the packaged that can do this for
me? I want it to kick off as soon as the script gets called and just
print the time taken to execute at the end of the script.
Oscar G. wrote:
If I wanted to find something like the “time” feature on shell…
where you can do:
time ls
and it will tell you how long it took to execute…
How would I do this in Ruby or what is the packaged that can do this for
me? I want it to kick off as soon as the script gets called and just
print the time taken to execute at the end of the script.
Well, you can actually use ‘time my.rb’
Within ruby, you can use Benchmark (in stdlib):
require ‘benchmark’
Benchmark.bm {|bench|
bench.report { do_something_here }
}
Another popular idiom seems to be the classic:
start = Time.now
Do something
duration = Time.now - start
E
On Tue, 13 Dec 2005, Oscar G. wrote:
print the time taken to execute at the end of the script.
harp:~ > cat elapsed.rb
BEGIN{ $start_time = Time::now.to_f }
END{ $end_time = Time::now.to_f; puts "#{ $0 } elapsed: #{ $end_time
or
harp:~ > cat a.rb
#!/usr/bin/env ruby
sleep 2 and p 42
harp:~ > RUBYOPT="-relapsed" ./a.rb
42
./a.rb elapsed: 1.99908494949341 }
hth.
-a