Use benchmark-ips

This commit is contained in:
Loic Nageleisen 2023-04-26 11:58:41 +02:00
parent 484269dba2
commit f42114b16a
Signed by: lloeki
GPG key ID: D05DAEE6889F94C2
4 changed files with 34 additions and 5 deletions

View file

@ -1,5 +1,12 @@
```
user system total real
block 0.961390 0.008933 0.970323 ( 0.978850)
ensure 0.752044 0.006407 0.758451 ( 0.763439)
Warming up --------------------------------------
block 1.000 i/100ms
ensure 1.000 i/100ms
Calculating -------------------------------------
block 1.099 (± 0.0%) i/s - 6.000 in 5.460202s
ensure 1.400 (± 0.0%) i/s - 8.000 in 5.713243s
Comparison:
ensure: 1.4 i/s
block: 1.1 i/s - 1.27x slower
```

View file

@ -1,6 +1,7 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
require 'benchmark'
require 'benchmark/ips'
class Example
def initialize
@ -20,10 +21,15 @@ class Example
end
end
Benchmark.bm(12) do |x|
Benchmark.ips do |x|
x.time = 5
x.warmup = 0.5
ex = Example.new
n = 10_000_000
x.report('block') { n.times { ex.using_block } }
x.report('ensure') { n.times { ex.using_ensure } }
x.compare!
end