benchmark-ips 2.8.2 → 2.8.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/History.txt +24 -0
- data/lib/benchmark/ips.rb +1 -1
- data/lib/benchmark/ips/job.rb +5 -0
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4bd1437bad08cae3326e3598e00e6de5cc934ed419030cfff810fe3b213de495
|
4
|
+
data.tar.gz: 56b66543830a961b3e960b290205cb80d41229fb1bf5964d223f0af8438d1587
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8c7375472f21ef4403327d993cc71c9b000390507a69dfaeac60b3a149a60059bfd28f3aace273ffdb81c069084d091d67154bc77a72f0402d92f21da4568db
|
7
|
+
data.tar.gz: 1edd46fee8de839431b479d7dfaa01ac95b0a7d620cb85494ca6262786b87dc372df96eb9eff7ddced14e0b6e3168bc282687a8cd2653b557cb947665a615568
|
data/History.txt
CHANGED
@@ -1,3 +1,27 @@
|
|
1
|
+
=== 2.8.3 / 2020-08-28
|
2
|
+
|
3
|
+
* Bug fix
|
4
|
+
* Fixed inaccuracy caused by integer overflows.
|
5
|
+
|
6
|
+
=== 2.8.2 / 2020-05-04
|
7
|
+
|
8
|
+
* Bug fix
|
9
|
+
* Fixed problems with Manifest.txt.
|
10
|
+
* Empty interim results files are ignored.
|
11
|
+
|
12
|
+
=== 2.8.0 / 2020-05-01
|
13
|
+
|
14
|
+
* Feature
|
15
|
+
* Allow running with empty ips block.
|
16
|
+
* Added save! method for saving interim results.
|
17
|
+
* Run more than just 1 cycle during warmup to reduce overhead.
|
18
|
+
* Optimized Job::Entry hot-path for fairer results on JRuby/TruffleRuby.
|
19
|
+
|
20
|
+
* Bug fix
|
21
|
+
* Removed the warmup section if set to 0.
|
22
|
+
* Added some RDoc docs.
|
23
|
+
* Added some examples in examples/
|
24
|
+
|
1
25
|
=== 2.7.2 / 2016-08-18
|
2
26
|
|
3
27
|
* 1 bug fix:
|
data/lib/benchmark/ips.rb
CHANGED
data/lib/benchmark/ips/job.rb
CHANGED
@@ -9,6 +9,7 @@ module Benchmark
|
|
9
9
|
# The percentage of the expected runtime to allow
|
10
10
|
# before reporting a weird runtime
|
11
11
|
MAX_TIME_SKEW = 0.05
|
12
|
+
POW_2_30 = 1 << 30
|
12
13
|
|
13
14
|
# Two-element arrays, consisting of label and block pairs.
|
14
15
|
# @return [Array<Entry>] list of entries
|
@@ -263,6 +264,10 @@ module Benchmark
|
|
263
264
|
t1 = Timing.now
|
264
265
|
warmup_iter = cycles
|
265
266
|
warmup_time_us = Timing.time_us(t0, t1)
|
267
|
+
|
268
|
+
# If the number of cycles would go outside the 32-bit signed integers range
|
269
|
+
# then exit the loop to avoid overflows and start the 100ms warmup runs
|
270
|
+
break if cycles >= POW_2_30
|
266
271
|
cycles *= 2
|
267
272
|
end
|
268
273
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: benchmark-ips
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.8.
|
4
|
+
version: 2.8.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evan Phoenix
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|
@@ -90,7 +90,7 @@ licenses:
|
|
90
90
|
- MIT
|
91
91
|
metadata:
|
92
92
|
homepage_uri: https://github.com/evanphx/benchmark-ips
|
93
|
-
post_install_message:
|
93
|
+
post_install_message:
|
94
94
|
rdoc_options:
|
95
95
|
- "--main"
|
96
96
|
- README.md
|
@@ -108,7 +108,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
108
108
|
version: '0'
|
109
109
|
requirements: []
|
110
110
|
rubygems_version: 3.1.2
|
111
|
-
signing_key:
|
111
|
+
signing_key:
|
112
112
|
specification_version: 4
|
113
113
|
summary: An iterations per second enhancement to Benchmark.
|
114
114
|
test_files: []
|