benchmark_driver 0.14.19 → 0.14.20
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/CHANGELOG.md +4 -0
- data/exe/benchmark-driver +1 -1
- data/lib/benchmark_driver/runner.rb +1 -0
- data/lib/benchmark_driver/runner/block.rb +22 -0
- data/lib/benchmark_driver/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8da8cf07f970515a45b029602f411db25b32350e455c83080b71cb4a6a07cbed
|
4
|
+
data.tar.gz: ced745db54c4ee5a8dccb57d911bf92f3e9714bcede2cb990a6f3742d5796437
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6542433b89468cc83e65ba31b17e4f339d2c0cdd52022340f5cb2060c3ffcde154e9bedf48d99dfd965b53602478fdf3f91ff7c17b94b1042f0f33f399a9ba2c
|
7
|
+
data.tar.gz: 948feb67c5e19ecea0b0f364049f27435e3610e729d39dd4adba9c89397f9911043a8bb036d7803c81f19bdb78bfe5c66d8e690692ca24bd297f3b6aa963a8b3
|
data/CHANGELOG.md
CHANGED
data/exe/benchmark-driver
CHANGED
@@ -15,7 +15,7 @@ config = BenchmarkDriver::Config.new.tap do |c|
|
|
15
15
|
parser = OptionParser.new do |o|
|
16
16
|
o.version = BenchmarkDriver::VERSION
|
17
17
|
o.banner = "Usage: #{File.basename($0, '.*')} [options] RUBY|YAML..."
|
18
|
-
o.on('-r', '--runner TYPE', String, 'Specify runner type: ips, time, memory, once (default: ips)') do |d|
|
18
|
+
o.on('-r', '--runner TYPE', String, 'Specify runner type: ips, time, memory, once, block (default: ips)') do |d|
|
19
19
|
c.runner_type = d
|
20
20
|
end
|
21
21
|
o.on('-o', '--output TYPE', String, 'Specify output type: compare, simple, markdown, record (default: compare)') do |out|
|
@@ -2,6 +2,7 @@ module BenchmarkDriver
|
|
2
2
|
module Runner
|
3
3
|
require 'benchmark_driver/runner/command_stdout'
|
4
4
|
require 'benchmark_driver/runner/ips'
|
5
|
+
require 'benchmark_driver/runner/block'
|
5
6
|
require 'benchmark_driver/runner/memory'
|
6
7
|
require 'benchmark_driver/runner/once'
|
7
8
|
require 'benchmark_driver/runner/recorded'
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'benchmark_driver/default_job'
|
2
|
+
require 'benchmark_driver/default_job_parser'
|
3
|
+
|
4
|
+
class BenchmarkDriver::Runner::Block < BenchmarkDriver::Runner::Ips
|
5
|
+
METRIC = BenchmarkDriver::Metric.new(name: 'Iteration per second', unit: 'i/s')
|
6
|
+
|
7
|
+
# JobParser returns this, `BenchmarkDriver::Runner.runner_for` searches "*::Job"
|
8
|
+
Job = Class.new(BenchmarkDriver::DefaultJob)
|
9
|
+
|
10
|
+
# Dynamically fetched and used by `BenchmarkDriver::JobParser.parse`
|
11
|
+
JobParser = BenchmarkDriver::DefaultJobParser.for(klass: Job, metrics: [METRIC]).extend(Module.new{
|
12
|
+
def parse(*)
|
13
|
+
jobs = super
|
14
|
+
jobs.map do |job|
|
15
|
+
job = job.dup
|
16
|
+
job.prelude = "#{job.prelude}\n__bmdv_script_block = proc { #{job.script} }"
|
17
|
+
job.script = '__bmdv_script_block.call'
|
18
|
+
job
|
19
|
+
end
|
20
|
+
end
|
21
|
+
})
|
22
|
+
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.
|
4
|
+
version: 0.14.20
|
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-
|
11
|
+
date: 2019-08-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -115,6 +115,7 @@ files:
|
|
115
115
|
- lib/benchmark_driver/repeater.rb
|
116
116
|
- lib/benchmark_driver/ruby_interface.rb
|
117
117
|
- lib/benchmark_driver/runner.rb
|
118
|
+
- lib/benchmark_driver/runner/block.rb
|
118
119
|
- lib/benchmark_driver/runner/command_stdout.rb
|
119
120
|
- lib/benchmark_driver/runner/ips.rb
|
120
121
|
- lib/benchmark_driver/runner/memory.rb
|
@@ -143,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
143
144
|
- !ruby/object:Gem::Version
|
144
145
|
version: '0'
|
145
146
|
requirements: []
|
146
|
-
rubygems_version: 3.0.
|
147
|
+
rubygems_version: 3.0.3
|
147
148
|
signing_key:
|
148
149
|
specification_version: 4
|
149
150
|
summary: Fully-featured accurate benchmark driver for Ruby
|