benchmark_driver 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +0 -4
- data/.travis.yml +10 -6
- data/Gemfile +7 -2
- data/Gemfile.lock +30 -0
- data/README.md +125 -117
- data/Rakefile +14 -7
- data/benchmark_driver.gemspec +2 -4
- data/bin/console +1 -1
- data/examples/call.rb +12 -0
- data/examples/call_blank.rb +13 -0
- data/examples/call_erb.rb +33 -0
- data/examples/call_interpolation.rb +13 -0
- data/examples/exec_blank.rb +14 -0
- data/examples/exec_interpolation.rb +15 -0
- data/examples/yaml/array_duration_time.yml +3 -0
- data/examples/yaml/array_loop.yml +3 -0
- data/examples/yaml/array_loop_memory.yml +6 -0
- data/examples/yaml/array_loop_time.yml +4 -0
- data/examples/yaml/blank_hash.yml +8 -0
- data/examples/yaml/blank_hash_array.yml +10 -0
- data/examples/yaml/blank_loop.yml +9 -0
- data/examples/yaml/blank_loop_time.yml +10 -0
- data/examples/yaml/blank_string.yml +6 -0
- data/examples/yaml/blank_string_array.yml +8 -0
- data/examples/yaml/example_multi.yml +6 -0
- data/{benchmarks → examples/yaml}/example_single.yml +0 -0
- data/exe/benchmark-driver +44 -18
- data/lib/benchmark/driver.rb +52 -257
- data/lib/benchmark/driver/benchmark_result.rb +21 -0
- data/lib/benchmark/driver/configuration.rb +65 -0
- data/lib/benchmark/driver/duration_runner.rb +24 -0
- data/lib/benchmark/driver/error.rb +16 -0
- data/lib/benchmark/driver/repeatable_runner.rb +18 -0
- data/lib/benchmark/driver/ruby_dsl_parser.rb +57 -0
- data/lib/benchmark/driver/time.rb +12 -0
- data/lib/benchmark/driver/version.rb +2 -2
- data/lib/benchmark/driver/yaml_parser.rb +103 -0
- data/lib/benchmark/output.rb +16 -0
- data/lib/benchmark/output/ips.rb +114 -0
- data/lib/benchmark/output/memory.rb +57 -0
- data/lib/benchmark/output/time.rb +57 -0
- data/lib/benchmark/runner.rb +13 -0
- data/lib/benchmark/runner/call.rb +97 -0
- data/lib/benchmark/runner/exec.rb +190 -0
- metadata +40 -10
- data/benchmarks/core/array.yml +0 -4
- data/benchmarks/example_multi.yml +0 -10
- data/benchmarks/lib/erb.yml +0 -30
data/benchmarks/core/array.yml
DELETED
data/benchmarks/lib/erb.yml
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
prelude: |
|
2
|
-
require 'erb'
|
3
|
-
|
4
|
-
template = <<EOS
|
5
|
-
<html>
|
6
|
-
<head> <%= title %> </head>
|
7
|
-
<body>
|
8
|
-
<h1> <%= title %> </h1>
|
9
|
-
<p>
|
10
|
-
<%= content %>
|
11
|
-
</p>
|
12
|
-
</body>
|
13
|
-
</html>
|
14
|
-
EOS
|
15
|
-
|
16
|
-
title = "hello world!"
|
17
|
-
content = "hello world!\n" * 10
|
18
|
-
|
19
|
-
benchmarks:
|
20
|
-
- name: ERB compiling
|
21
|
-
benchmark: ERB.new(template)
|
22
|
-
loop_count: 10000
|
23
|
-
|
24
|
-
- name: ERB rendering
|
25
|
-
prelude: |
|
26
|
-
src = "def self.render(title, content); #{ERB.new(template).src}; end"
|
27
|
-
mod = Module.new
|
28
|
-
mod.instance_eval(src, "(ERB)")
|
29
|
-
benchmark: mod.render(title, content)
|
30
|
-
loop_count: 100000
|