benchmarker 0.1.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
metadata CHANGED
@@ -1,94 +1,68 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: benchmarker
3
- version: !ruby/object:Gem::Version
4
- hash: 27
5
- prerelease:
6
- segments:
7
- - 0
8
- - 1
9
- - 0
10
- version: 0.1.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
11
5
  platform: ruby
12
- authors:
13
- - makoto kuwata
14
- autorequire:
6
+ authors:
7
+ - kwatch
8
+ autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2011-03-02 00:00:00 +09:00
19
- default_executable:
20
- dependencies: []
21
-
11
+ date: 2021-11-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: oktest
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
22
27
  description: |
23
- Benchmarker is a small utility for benchmarking.
24
-
25
- Quick Example (ex0.rb):
26
-
27
- require 'rubygems'
28
- require 'benchmarker'
29
-
30
- Benchmarker.new(:width=>20, :loop=>100*1000, :cycle=>5, :extra=>1) do |bm|
31
- range = 1..1000
32
- bm.task("each") do
33
- arr = []
34
- range.each {|n| arr << n }
35
- end
36
- bm.task("collect") do
37
- arr = range.collect {|n| n }
38
- end
39
- bm.task("inject") do
40
- arr = range.inject([]) {|a, n| a << n; a }
41
- end
42
- end
43
-
44
- email: kwa(at)kuwata-lab.com
28
+ Benchmarker is a pretty good benchmark tool for Ruby.
29
+ Compared to `benchmark.rb` (standard library), Benchmarker has a lot of useful features.
30
+ See: https://kwatch.github.io/benchmarker/ruby.html
31
+ email: kwatch@gmail.com
45
32
  executables: []
46
-
47
33
  extensions: []
48
-
49
34
  extra_rdoc_files: []
50
-
51
- files:
52
- - test/benchmarker_test.rb
53
- - test/oktest.rb
54
- - examples/bench_loop.rb
55
- - examples/bench_require.rb
56
- - CHANGES.txt
57
- - setup.rb
35
+ files:
36
+ - CHANGES.md
37
+ - MIT-LICENSE
38
+ - README.md
39
+ - Rakefile
58
40
  - benchmarker.gemspec
59
- has_rdoc: true
60
- homepage: http://github.com/kwatch/benchmarker/
61
- licenses: []
62
-
63
- post_install_message:
41
+ - lib/benchmarker.rb
42
+ - setup.rb
43
+ - test/benchmarker_test.rb
44
+ homepage: https://kwatch.github.io/benchmarker/ruby.html
45
+ licenses:
46
+ - MIT
47
+ metadata: {}
48
+ post_install_message:
64
49
  rdoc_options: []
65
-
66
- require_paths:
50
+ require_paths:
67
51
  - lib
68
- required_ruby_version: !ruby/object:Gem::Requirement
69
- none: false
70
- requirements:
52
+ required_ruby_version: !ruby/object:Gem::Requirement
53
+ requirements:
71
54
  - - ">="
72
- - !ruby/object:Gem::Version
73
- hash: 3
74
- segments:
75
- - 0
76
- version: "0"
77
- required_rubygems_version: !ruby/object:Gem::Requirement
78
- none: false
79
- requirements:
55
+ - !ruby/object:Gem::Version
56
+ version: '2.0'
57
+ required_rubygems_version: !ruby/object:Gem::Requirement
58
+ requirements:
80
59
  - - ">="
81
- - !ruby/object:Gem::Version
82
- hash: 3
83
- segments:
84
- - 0
85
- version: "0"
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
86
62
  requirements: []
87
-
88
- rubyforge_project: benchmarker
89
- rubygems_version: 1.6.0
90
- signing_key:
91
- specification_version: 3
92
- summary: a small utility for benchmarking
93
- test_files:
63
+ rubygems_version: 3.2.22
64
+ signing_key:
65
+ specification_version: 4
66
+ summary: pretty good benchmark library
67
+ test_files:
94
68
  - test/benchmarker_test.rb
data/CHANGES.txt DELETED
@@ -1,6 +0,0 @@
1
- = Benchmarker CHANGES
2
-
3
-
4
- == Release 0.1.0 (2011-03-02)
5
-
6
- * first release.
@@ -1,51 +0,0 @@
1
- ###
2
- ### benchmark to compare loop methods
3
- ###
4
-
5
- require 'benchmarker'
6
-
7
- nums = (1..10000).to_a #.shuffle
8
-
9
- Benchmarker.new(:width=>24, :loop=>1000, :cycle=>5, :extra=>1) do |bm|
10
-
11
- bm.empty_task do
12
- nil
13
- end
14
-
15
- bm.task("each() & '+='") do
16
- total = 0
17
- nums.each {|n| total += n }
18
- total
19
- end
20
-
21
- bm.task("inject()") do
22
- total = nums.inject(0) {|t, n| t += n }
23
- total
24
- end
25
-
26
- msg = " # skip because Symbol#to_proc() is not defined."
27
- msg = nil if :+.respond_to?(:to_proc)
28
- bm.task("inject(&:+)", :skip=>msg) do
29
- total = nums.inject(0, &:+)
30
- total
31
- end
32
-
33
- bm.task("for statement") do
34
- total = 0
35
- for n in nums
36
- total += n
37
- end
38
- total
39
- end
40
-
41
- bm.task("while statement") do
42
- i, len = 0, nums.length
43
- total = 0
44
- while i < len
45
- total += nums[i]
46
- i += 1
47
- end
48
- total
49
- end
50
-
51
- end
@@ -1,34 +0,0 @@
1
- ###
2
- ### benchmarks to measure library loading times.
3
- ###
4
-
5
-
6
- require 'benchmarker'
7
-
8
- targets = %w[cgi cgi/session erb tempfile tmpdir openssl
9
- logger pathname pstore time date2 uri drb fileutils
10
- rss rexml/document yaml psych json rubygems]
11
-
12
- if RUBY_VERSION >= '1.9'
13
- targets.delete('date2')
14
- elsif RUBY_VERSION < '1.9'
15
- targets.delete('psych')
16
- targets.delete('json')
17
- end
18
-
19
- loop = 10
20
- cycle = 1 # or 5
21
- Benchmarker.new(:loop=>loop, :cycle=>cycle, :extra=>1) do |bm|
22
-
23
- #bm.empty_task "(Empty) ruby" do
24
- bm.task "ruby" do
25
- system "ruby -e nil"
26
- end
27
-
28
- targets.each do |lib|
29
- bm.task "ruby -r #{lib}" do
30
- system "ruby -r #{lib} -e nil"
31
- end
32
- end
33
-
34
- end