benchmark-ips 2.8.2 → 2.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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: []
|