benchmark_driver 0.14.20 → 0.14.21

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8da8cf07f970515a45b029602f411db25b32350e455c83080b71cb4a6a07cbed
4
- data.tar.gz: ced745db54c4ee5a8dccb57d911bf92f3e9714bcede2cb990a6f3742d5796437
3
+ metadata.gz: 60b50f8bfde2f225d9332ee85c8865ecac8337d1de770e8d7a1bdf4011772fdf
4
+ data.tar.gz: d6ca687f6eb41389b44a09148e34c6c812146dd3abdc808f79a5c114a202529c
5
5
  SHA512:
6
- metadata.gz: 6542433b89468cc83e65ba31b17e4f339d2c0cdd52022340f5cb2060c3ffcde154e9bedf48d99dfd965b53602478fdf3f91ff7c17b94b1042f0f33f399a9ba2c
7
- data.tar.gz: 948feb67c5e19ecea0b0f364049f27435e3610e729d39dd4adba9c89397f9911043a8bb036d7803c81f19bdb78bfe5c66d8e690692ca24bd297f3b6aa963a8b3
6
+ metadata.gz: 303fa292b389e5b020cc7058889fbb44056c21c69103155615dc37da5a9f5435b7956e785db90f98e251fa7d5d41ce2b3b5a5b495e21a17b7eeb5b5e0ff6a7de
7
+ data.tar.gz: c230230201bc66fd977fbffdd8fd52ccc8c3560587b02185e3477efc2b4c1ce4b1c3aa9b82132a96aee6743a5c503803e06c8afff8e60f66f3f46352f604e9fd
@@ -1,3 +1,8 @@
1
+ # v0.14.21
2
+
3
+ - Avoid crashinig on a zero division error in `compare` output
4
+ [#56](https://github.com/benchmark-driver/benchmark-driver/pull/56)
5
+
1
6
  # v0.14.20
2
7
 
3
8
  - Add `block` runner to automatically wrap a Ruby block in script for benchmarking MJIT
@@ -181,6 +181,17 @@ class BenchmarkDriver::Output::Compare
181
181
  end
182
182
  end
183
183
 
184
+ def show_slower(better_result, worse_result)
185
+ top = worse_result.value
186
+ bottom = better_result.value
187
+ top, bottom = bottom, top if @metrics.first.larger_better
188
+
189
+ unless BenchmarkDriver::Result::ERROR.equal?(bottom)
190
+ ratio = top / bottom
191
+ "- %.2fx #{@metrics.first.worse_word}" % ratio
192
+ end
193
+ end
194
+
184
195
  # @param [Array<BenchmarkDriver::Output::Compare::Result>] results
185
196
  # @param [TrueClass,FalseClass] show_context
186
197
  def show_results(results, show_context:)
@@ -194,14 +205,7 @@ class BenchmarkDriver::Output::Compare
194
205
 
195
206
  first = results.first
196
207
  results.each do |result|
197
- if result != first
198
- if @metrics.first.larger_better
199
- ratio = (first.value / result.value)
200
- else
201
- ratio = (result.value / first.value)
202
- end
203
- slower = "- %.2fx #{@metrics.first.worse_word}" % ratio
204
- end
208
+ slower = show_slower(first, result) if result != first
205
209
  if show_context
206
210
  name = result.context.name
207
211
  else
@@ -1,3 +1,3 @@
1
1
  module BenchmarkDriver
2
- VERSION = '0.14.20'
2
+ VERSION = '0.14.21'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: benchmark_driver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.20
4
+ version: 0.14.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takashi Kokubun
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-08-04 00:00:00.000000000 Z
11
+ date: 2019-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler