benchmark_driver 0.8.4 → 0.8.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/benchmark/driver/version.rb +1 -1
- data/lib/benchmark/output/ips.rb +30 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b988631bc66b48bd7c5f1e6e0c96d7608ad79326cd88b366bc1005f4eca86bd
|
4
|
+
data.tar.gz: 443d7912aeeeee587653b74b4d7b4c7e20fc46998b5a90cc57b2b3142d05f4a4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d98d096c50977365895b3d7c976983b4d2ea5d6f07425be6a17bbbb3e9e939d054d45f35dd52781feffadc1cd2e9e4b48e0d1cd4bb0c6c0b3e60d1d805eb1aa7
|
7
|
+
data.tar.gz: 0ab053b1a32973c86c7ea47f6dc7038c0749efb78c67b5e69d025986bfb7eb629e1217a019eefe36fe3d681d83c393d65a7beacde3c386ed088b0cdadf932c5a
|
data/CHANGELOG.md
CHANGED
data/lib/benchmark/output/ips.rb
CHANGED
@@ -61,6 +61,15 @@ class Benchmark::Output::Ips
|
|
61
61
|
@row_results.each do |r|
|
62
62
|
$stdout.print(" %3.6fs" % r.real)
|
63
63
|
end
|
64
|
+
if @row_results.size == 1
|
65
|
+
sec = @row_results[0].real
|
66
|
+
iter = result.iterations
|
67
|
+
if File.exist?('/proc/cpuinfo') && (clks = estimate_clock(sec, iter)) < 1_000
|
68
|
+
$stdout.print(" (#{pretty_sec(sec, iter)}/i, #{clks}clocks/i)")
|
69
|
+
else
|
70
|
+
$stdout.print(" (#{pretty_sec(sec, iter)}/i)")
|
71
|
+
end
|
72
|
+
end
|
64
73
|
$stdout.puts
|
65
74
|
end
|
66
75
|
|
@@ -81,7 +90,7 @@ class Benchmark::Output::Ips
|
|
81
90
|
case scale
|
82
91
|
when 1; 'k'
|
83
92
|
when 2; 'M'
|
84
|
-
when 3; '
|
93
|
+
when 3; 'G'
|
85
94
|
when 4; 'T'
|
86
95
|
when 5; 'Q'
|
87
96
|
else # < 1000 or > 10^15, no scale or suffix
|
@@ -91,6 +100,26 @@ class Benchmark::Output::Ips
|
|
91
100
|
"%#{width}.3f#{suffix}" % (value.to_f / (1000 ** scale))
|
92
101
|
end
|
93
102
|
|
103
|
+
def pretty_sec sec, iter
|
104
|
+
r = Rational(sec, iter)
|
105
|
+
case
|
106
|
+
when r >= 1
|
107
|
+
"#{'%3.2f' % r.to_f}s"
|
108
|
+
when r >= 1/1000r
|
109
|
+
"#{'%3.2f' % (r * 1_000).to_f}ms"
|
110
|
+
when r >= 1/1000_000r
|
111
|
+
"#{'%3.2f' % (r * 1_000_000).to_f}us"
|
112
|
+
else
|
113
|
+
"#{'%3.2f' % (r * 1_000_000_000).to_f}ns"
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def estimate_clock sec, iter
|
118
|
+
hz = File.read('/proc/cpuinfo').scan(/cpu MHz\s+:\s+([\d\.]+)/){|(f)| break hz = Rational(f.to_f) * 1_000_000}
|
119
|
+
r = Rational(sec, iter)
|
120
|
+
Integer(r/(1/hz))
|
121
|
+
end
|
122
|
+
|
94
123
|
def compare
|
95
124
|
$stdout.puts("\nComparison:")
|
96
125
|
results = @results.sort_by { |r| -r.ips }
|
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.8.
|
4
|
+
version: 0.8.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Takashi Kokubun
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|