viiite 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +70 -0
- data/Gemfile +2 -9
- data/Gemfile.lock +11 -32
- data/README.md +42 -123
- data/examples/bench_attr_vs_method-1.8.7.jpeg +0 -0
- data/examples/bench_attr_vs_method-1.9.3.jpeg +0 -0
- data/examples/bench_attr_vs_method.rb +18 -0
- data/examples/bench_iteration.rb +2 -4
- data/examples/bench_sort.rb +2 -7
- data/lib/viiite.rb +40 -18
- data/lib/viiite/bdb.rb +28 -0
- data/lib/viiite/bdb/cached.rb +63 -0
- data/lib/viiite/bdb/immediate.rb +46 -0
- data/lib/viiite/bdb/utils.rb +16 -0
- data/lib/viiite/benchmark.rb +35 -0
- data/lib/viiite/benchmark/runner.rb +50 -0
- data/lib/viiite/command.rb +33 -2
- data/lib/viiite/command/commons.rb +22 -0
- data/lib/viiite/command/help.rb +4 -5
- data/lib/viiite/command/plot.rb +44 -44
- data/lib/viiite/command/plot/to_gnuplot.rb +65 -0
- data/lib/viiite/command/{graph_style.rash → plot/to_gnuplot_graph.rash} +0 -0
- data/lib/viiite/command/{serie_style.rash → plot/to_gnuplot_serie.rash} +0 -0
- data/lib/viiite/command/plot/to_highcharts.rb +38 -0
- data/lib/viiite/command/plot/to_highcharts_graph.rb +29 -0
- data/lib/viiite/command/plot/to_text.rb +30 -0
- data/lib/viiite/command/report.rb +32 -10
- data/lib/viiite/command/run.rb +30 -7
- data/lib/viiite/errors.rb +5 -0
- data/lib/viiite/loader.rb +2 -2
- data/lib/viiite/tms.rb +21 -31
- data/lib/viiite/version.rb +5 -5
- data/spec/fixtures/bdb/Array/bench_sort.rb +7 -0
- data/spec/fixtures/{bench_iteration.rb → bdb/bench_iteration.rb} +2 -4
- data/spec/fixtures/command/bench_iteration.rb +3 -0
- data/spec/fixtures/saved/Array/bench_sort.rash +12 -0
- data/spec/fixtures/saved/bench_iteration.rash +18 -0
- data/spec/integration/plot/plot_1.cmd +1 -0
- data/spec/integration/plot/plot_1.stdout +64 -0
- data/spec/integration/plot/plot_2.cmd +1 -0
- data/spec/integration/plot/plot_2.stdout +37 -0
- data/spec/integration/plot/plot_3.cmd +1 -0
- data/spec/integration/plot/plot_3.stdout +64 -0
- data/spec/integration/plot/plot_4.cmd +1 -0
- data/spec/integration/plot/plot_4.stdout +1 -0
- data/spec/integration/report/viiite_report_1.cmd +1 -1
- data/spec/integration/report/viiite_report_1.stdout +7 -7
- data/spec/integration/report/viiite_report_2.cmd +1 -1
- data/spec/integration/report/viiite_report_2.stdout +22 -10
- data/spec/integration/report/viiite_report_3.cmd +1 -1
- data/spec/integration/report/viiite_report_3.stdout +46 -18
- data/spec/integration/report/viiite_report_4.cmd +1 -1
- data/spec/integration/report/viiite_report_4.stdout +34 -22
- data/spec/integration/report/viiite_report_5.cmd +1 -0
- data/spec/integration/report/viiite_report_5.stdout +7 -0
- data/spec/integration/report/viiite_report_6.cmd +1 -0
- data/spec/integration/report/viiite_report_6.stdout +7 -0
- data/spec/integration/report/viiite_report_7.cmd +1 -0
- data/spec/integration/report/viiite_report_7.stdout +7 -0
- data/spec/integration/report/viiite_report_8.cmd +1 -0
- data/spec/integration/report/viiite_report_8.stdout +16 -0
- data/spec/integration/report/viiite_report_9.cmd +1 -0
- data/spec/integration/report/viiite_report_9.stdout +88 -0
- data/spec/integration/test_command.rb +19 -23
- data/spec/integration/viiite/viiite_help.stdout +6 -0
- data/spec/spec_helper.rb +11 -17
- data/spec/unit/bdb/cached/test_dataset.rb +68 -0
- data/spec/unit/bdb/immediate/test_benchmark.rb +31 -0
- data/spec/unit/bdb/immediate/test_dataset.rb +31 -0
- data/spec/unit/bdb/immediate/test_enumerable.rb +20 -0
- data/spec/unit/bdb/immediate/test_pattern.rb +25 -0
- data/spec/unit/bdb/test_new.rb +44 -0
- data/spec/unit/bdb/utils/test_bench_file.rb +24 -0
- data/spec/unit/bdb/utils/test_replace_extension.rb +21 -0
- data/spec/unit/benchmark/bench_add.rb +3 -0
- data/spec/unit/benchmark/test_new.rb +28 -0
- data/spec/unit/command/commons/existing.rash +1 -0
- data/spec/unit/command/commons/test_single_source.rb +64 -0
- data/spec/unit/{formatter/plot → command/plot/gnuplot_utils}/test_to_data.rb +4 -4
- data/spec/unit/{formatter/plot → command/plot/gnuplot_utils}/test_to_dataset.rb +5 -5
- data/spec/unit/{formatter/plot → command/plot/gnuplot_utils}/test_to_plot.rb +4 -4
- data/spec/unit/command/test_run.rb +25 -12
- data/spec/unit/{test_runner.rb → test_benchmark.rb} +30 -11
- data/spec/unit/test_viiite.rb +17 -4
- data/spec/unit/tms/test_attributes.rb +11 -0
- data/spec/unit/tms/test_coerce.rb +11 -23
- data/spec/unit/tms/test_conversions.rb +23 -0
- data/spec/unit/tms/test_operations.rb +22 -0
- data/tasks/clean.rake +1 -1
- data/tasks/debug_mail.rake +13 -13
- data/tasks/gem.rake +13 -13
- data/tasks/integration_test.rake +3 -3
- data/tasks/spec_test.rake +9 -9
- data/tasks/unit_test.rake +9 -10
- data/tasks/yard.rake +13 -13
- data/viiite.gemspec +26 -29
- data/viiite.noespec +4 -7
- metadata +335 -235
- data/examples/bench_sort.eps +0 -816
- data/examples/bench_sort.rash +0 -100
- data/examples/raw.rash +0 -6
- data/lib/viiite/formatter.rb +0 -5
- data/lib/viiite/formatter/plot.rb +0 -38
- data/lib/viiite/runner.rb +0 -59
- data/lib/viiite/viiite_file.rb +0 -20
- data/spec/integration/raw_data.rash +0 -6
- data/spec/unit/tms/test_divide.rb +0 -26
- data/spec/unit/tms/test_minus.rb +0 -26
- data/spec/unit/tms/test_plus.rb +0 -34
- data/spec/unit/tms/test_times.rb +0 -26
- data/spec/unit/tms/test_to_a.rb +0 -11
- data/spec/unit/tms/test_to_ruby_literal.rb +0 -11
- data/spec/unit/tms/test_to_s.rb +0 -11
data/examples/bench_sort.rash
DELETED
@@ -1,100 +0,0 @@
|
|
1
|
-
{:bench => :quicksort, :i => 1, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.000931978225708008)}
|
2
|
-
{:bench => :bubblesort, :i => 1, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.02,0.0,0.0,0.0,0.0198590755462646)}
|
3
|
-
{:bench => :quicksort, :i => 2, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.000818967819213867)}
|
4
|
-
{:bench => :bubblesort, :i => 2, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.00999999999999998,0.0,0.0,0.0,0.0110490322113037)}
|
5
|
-
{:bench => :quicksort, :i => 3, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.000854969024658203)}
|
6
|
-
{:bench => :bubblesort, :i => 3, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.0112569332122803)}
|
7
|
-
{:bench => :quicksort, :i => 4, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.000792026519775391)}
|
8
|
-
{:bench => :bubblesort, :i => 4, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.02,0.0,0.0,0.0,0.0127270221710205)}
|
9
|
-
{:bench => :quicksort, :i => 5, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.000833034515380859)}
|
10
|
-
{:bench => :bubblesort, :i => 5, :size => 100, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.010761022567749)}
|
11
|
-
{:bench => :quicksort, :i => 1, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00189709663391113)}
|
12
|
-
{:bench => :bubblesort, :i => 1, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.06,0.0,0.0,0.0,0.051987886428833)}
|
13
|
-
{:bench => :quicksort, :i => 2, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0019068717956543)}
|
14
|
-
{:bench => :bubblesort, :i => 2, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.06,0.0,0.0,0.0,0.0540499687194824)}
|
15
|
-
{:bench => :quicksort, :i => 3, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00184392929077148)}
|
16
|
-
{:bench => :bubblesort, :i => 3, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.06,0.0,0.0,0.0,0.053170919418335)}
|
17
|
-
{:bench => :quicksort, :i => 4, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00193214416503906)}
|
18
|
-
{:bench => :bubblesort, :i => 4, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.06,0.0,0.0,0.0,0.0532131195068359)}
|
19
|
-
{:bench => :quicksort, :i => 5, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00188493728637695)}
|
20
|
-
{:bench => :bubblesort, :i => 5, :size => 200, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.04,0.0,0.0,0.0,0.0441248416900635)}
|
21
|
-
{:bench => :quicksort, :i => 1, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.0118849277496338)}
|
22
|
-
{:bench => :bubblesort, :i => 1, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.12,0.0,0.0,0.0,0.11739706993103)}
|
23
|
-
{:bench => :quicksort, :i => 2, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0030369758605957)}
|
24
|
-
{:bench => :bubblesort, :i => 2, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.12,0.0,0.0,0.0,0.120995044708252)}
|
25
|
-
{:bench => :quicksort, :i => 3, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00286102294921875)}
|
26
|
-
{:bench => :bubblesort, :i => 3, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.12,0.0,0.0,0.0,0.117074012756348)}
|
27
|
-
{:bench => :quicksort, :i => 4, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00310397148132324)}
|
28
|
-
{:bench => :bubblesort, :i => 4, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.11,0.0,0.0,0.0,0.112523078918457)}
|
29
|
-
{:bench => :quicksort, :i => 5, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00554203987121582)}
|
30
|
-
{:bench => :bubblesort, :i => 5, :size => 300, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.12,0.0,0.0,0.0,0.116988897323608)}
|
31
|
-
{:bench => :quicksort, :i => 1, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.00453591346740723)}
|
32
|
-
{:bench => :bubblesort, :i => 1, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.19,0.0,0.0,0.0,0.197253942489624)}
|
33
|
-
{:bench => :quicksort, :i => 2, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.00448203086853027)}
|
34
|
-
{:bench => :bubblesort, :i => 2, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.21,0.0,0.0,0.0,0.26711893081665)}
|
35
|
-
{:bench => :quicksort, :i => 3, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.00516200065612793)}
|
36
|
-
{:bench => :bubblesort, :i => 3, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.2,0.0,0.0,0.0,0.215794086456299)}
|
37
|
-
{:bench => :quicksort, :i => 4, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00426316261291504)}
|
38
|
-
{:bench => :bubblesort, :i => 4, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.21,0.0,0.0,0.0,0.210376024246216)}
|
39
|
-
{:bench => :quicksort, :i => 5, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.00404000282287598)}
|
40
|
-
{:bench => :bubblesort, :i => 5, :size => 400, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.2,0.0,0.0,0.0,0.198137998580933)}
|
41
|
-
{:bench => :quicksort, :i => 1, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0100000000000002,0.0,0.0,0.0,0.0057070255279541)}
|
42
|
-
{:bench => :bubblesort, :i => 1, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.31,0.0,0.0,0.0,0.315191030502319)}
|
43
|
-
{:bench => :quicksort, :i => 2, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.00999999999999979,0.0,0.0,0.0,0.00527501106262207)}
|
44
|
-
{:bench => :bubblesort, :i => 2, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.31,0.0,0.0,0.0,0.315762042999268)}
|
45
|
-
{:bench => :quicksort, :i => 3, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0100000000000002,0.0,0.0,0.0,0.0150480270385742)}
|
46
|
-
{:bench => :bubblesort, :i => 3, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.32,0.0,0.0,0.0,0.317266941070557)}
|
47
|
-
{:bench => :quicksort, :i => 4, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0100000000000002,0.0,0.0,0.0,0.00540494918823242)}
|
48
|
-
{:bench => :bubblesort, :i => 4, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.32,0.0,0.0,0.0,0.3280189037323)}
|
49
|
-
{:bench => :quicksort, :i => 5, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0100000000000002,0.0,0.0,0.0,0.0057520866394043)}
|
50
|
-
{:bench => :bubblesort, :i => 5, :size => 500, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.31,0.0,0.0,0.0,0.31823205947876)}
|
51
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 1, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0004265308380126953)}
|
52
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 1, :bench => :bubblesort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0036416053771972656)}
|
53
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 2, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0003561973571777344)}
|
54
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 2, :bench => :bubblesort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.003675222396850586)}
|
55
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 3, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0003838539123535156)}
|
56
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 3, :bench => :bubblesort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0036492347717285156)}
|
57
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 4, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00033593177795410156)}
|
58
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 4, :bench => :bubblesort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.003430604934692383)}
|
59
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 5, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0003409385681152344)}
|
60
|
-
{:ruby => "ruby 1.9.3dev", :size => 100, :i => 5, :bench => :bubblesort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0037250518798828125)}
|
61
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 1, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0049359798431396484)}
|
62
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 1, :bench => :bubblesort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.01381993293762207)}
|
63
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 2, :bench => :quicksort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.0007574558258056641)}
|
64
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 2, :bench => :bubblesort, :tms => Viiite::Tms(0.020000000000000018,0.0,0.0,0.0,0.019170284271240234)}
|
65
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 3, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.000804901123046875)}
|
66
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 3, :bench => :bubblesort, :tms => Viiite::Tms(0.019999999999999962,0.0,0.0,0.0,0.019022464752197266)}
|
67
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 4, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0008702278137207031)}
|
68
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 4, :bench => :bubblesort, :tms => Viiite::Tms(0.020000000000000018,0.0,0.0,0.0,0.02009725570678711)}
|
69
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 5, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0008249282836914062)}
|
70
|
-
{:ruby => "ruby 1.9.3dev", :size => 200, :i => 5, :bench => :bubblesort, :tms => Viiite::Tms(0.020000000000000018,0.0,0.0,0.0,0.01993274688720703)}
|
71
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 1, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0012989044189453125)}
|
72
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 1, :bench => :bubblesort, :tms => Viiite::Tms(0.03999999999999998,0.0,0.0,0.0,0.03730130195617676)}
|
73
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 2, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0013666152954101562)}
|
74
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 2, :bench => :bubblesort, :tms => Viiite::Tms(0.030000000000000027,0.0,0.0,0.0,0.037523508071899414)}
|
75
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 3, :bench => :quicksort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.0013306140899658203)}
|
76
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 3, :bench => :bubblesort, :tms => Viiite::Tms(0.039999999999999925,0.0,0.0,0.0,0.039438724517822266)}
|
77
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 4, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0012905597686767578)}
|
78
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 4, :bench => :bubblesort, :tms => Viiite::Tms(0.040000000000000036,0.0,0.0,0.0,0.035891056060791016)}
|
79
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 5, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0013623237609863281)}
|
80
|
-
{:ruby => "ruby 1.9.3dev", :size => 300, :i => 5, :bench => :bubblesort, :tms => Viiite::Tms(0.040000000000000036,0.0,0.0,0.0,0.03461289405822754)}
|
81
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 1, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.001710653305053711)}
|
82
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 1, :bench => :bubblesort, :tms => Viiite::Tms(0.06999999999999995,0.0,0.0,0.0,0.06537675857543945)}
|
83
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 2, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0019588470458984375)}
|
84
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 2, :bench => :bubblesort, :tms => Viiite::Tms(0.06999999999999995,0.0,0.0,0.0,0.06493997573852539)}
|
85
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 3, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0017993450164794922)}
|
86
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 3, :bench => :bubblesort, :tms => Viiite::Tms(0.07000000000000006,0.0,0.0,0.0,0.06435179710388184)}
|
87
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 4, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0017900466918945312)}
|
88
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 4, :bench => :bubblesort, :tms => Viiite::Tms(0.06999999999999995,0.0,0.0,0.0,0.06733965873718262)}
|
89
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 5, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0017752647399902344)}
|
90
|
-
{:ruby => "ruby 1.9.3dev", :size => 400, :i => 5, :bench => :bubblesort, :tms => Viiite::Tms(0.07000000000000006,0.0,0.0,0.0,0.06759476661682129)}
|
91
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 1, :bench => :quicksort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.0022673606872558594)}
|
92
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 1, :bench => :bubblesort, :tms => Viiite::Tms(0.09999999999999987,0.0,0.0,0.0,0.10301375389099121)}
|
93
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 2, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.0025730133056640625)}
|
94
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 2, :bench => :bubblesort, :tms => Viiite::Tms(0.1100000000000001,0.0,0.0,0.0,0.10222816467285156)}
|
95
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 3, :bench => :quicksort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.028038501739501953)}
|
96
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 3, :bench => :bubblesort, :tms => Viiite::Tms(0.10000000000000009,0.0,0.0,0.0,0.10360383987426758)}
|
97
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 4, :bench => :quicksort, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.002351999282836914)}
|
98
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 4, :bench => :bubblesort, :tms => Viiite::Tms(0.08999999999999986,0.0,0.0,0.0,0.10294198989868164)}
|
99
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 5, :bench => :quicksort, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.00250244140625)}
|
100
|
-
{:ruby => "ruby 1.9.3dev", :size => 500, :i => 5, :bench => :bubblesort, :tms => Viiite::Tms(0.10000000000000009,0.0,0.0,0.0,0.09821605682373047)}
|
data/examples/raw.rash
DELETED
@@ -1,6 +0,0 @@
|
|
1
|
-
{:ruby => "ruby 1.9.2p136", :bench => :for, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.007596015930175781)}
|
2
|
-
{:ruby => "ruby 1.9.2p136", :bench => :times, :tms => Viiite::Tms(0.009999999999999953,0.0,0.0,0.0,0.0069234371185302734)}
|
3
|
-
{:ruby => "ruby 1.9.2p136", :bench => :upto, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.007051944732666016)}
|
4
|
-
{:ruby => "ruby 1.9.2p136", :bench => :for, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.0076732635498046875)}
|
5
|
-
{:ruby => "ruby 1.9.2p136", :bench => :times, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00760650634765625)}
|
6
|
-
{:ruby => "ruby 1.9.2p136", :bench => :upto, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.007064342498779297)}
|
data/lib/viiite/formatter.rb
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
module Viiite
|
2
|
-
class Formatter
|
3
|
-
class Plot < Formatter
|
4
|
-
|
5
|
-
def self.to_data(rel)
|
6
|
-
[rel.collect{|t| t[:x]}, rel.collect{|t| t[:y]}]
|
7
|
-
end
|
8
|
-
|
9
|
-
def self.to_dataset(tuple)
|
10
|
-
ds = Gnuplot::DataSet.new(to_data(tuple[:data]))
|
11
|
-
tuple.each_pair do |k,v|
|
12
|
-
next if k == :data
|
13
|
-
if ds.respond_to?(:"#{k}=")
|
14
|
-
ds.send(:"#{k}=", v)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
ds
|
18
|
-
end
|
19
|
-
|
20
|
-
def self.to_plot(graph)
|
21
|
-
Gnuplot::Plot.new do |plot|
|
22
|
-
graph.each_pair do |k,v|
|
23
|
-
next if k == :series
|
24
|
-
plot.set(k.id2name, v)
|
25
|
-
end
|
26
|
-
plot.data = graph[:series].collect{|d| to_dataset(d)}
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
def self.to_plots(graphs, buffer = "")
|
31
|
-
graphs.each do |tuple|
|
32
|
-
buffer << to_plot(tuple).to_gplot << "\n"
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
end # class Plot
|
37
|
-
end # class Formatter
|
38
|
-
end # module Viiite
|
data/lib/viiite/runner.rb
DELETED
@@ -1,59 +0,0 @@
|
|
1
|
-
module Viiite
|
2
|
-
class Runner
|
3
|
-
include Alf::Iterator
|
4
|
-
|
5
|
-
def initialize(defn)
|
6
|
-
@defn = defn
|
7
|
-
end
|
8
|
-
|
9
|
-
### DSL
|
10
|
-
|
11
|
-
def with(hash)
|
12
|
-
if block_given?
|
13
|
-
@stack << @stack.last.merge(hash)
|
14
|
-
res = yield
|
15
|
-
@stack.pop
|
16
|
-
res
|
17
|
-
else
|
18
|
-
@stack.last.merge!(hash)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
def range_over(range, name, &block)
|
23
|
-
range.each do |value|
|
24
|
-
with(name => value){ block.call(value) }
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def variation_point(name, value, &proc)
|
29
|
-
h = {name => value}
|
30
|
-
with(h, &proc)
|
31
|
-
end
|
32
|
-
|
33
|
-
def report(hash = {}, &block)
|
34
|
-
hash = {:bench => hash} unless hash.is_a?(Hash)
|
35
|
-
with(hash) {
|
36
|
-
with(:tms => Viiite.measure{block.call}){ output }
|
37
|
-
}
|
38
|
-
end
|
39
|
-
|
40
|
-
### Alf contract
|
41
|
-
|
42
|
-
def each(&reporter)
|
43
|
-
self.dup._each(&reporter)
|
44
|
-
end
|
45
|
-
|
46
|
-
protected
|
47
|
-
|
48
|
-
def _each(&reporter)
|
49
|
-
@stack, @reporter = [ {} ], reporter
|
50
|
-
self.instance_eval &@defn
|
51
|
-
@stack, @reporter = nil, nil
|
52
|
-
end
|
53
|
-
|
54
|
-
def output
|
55
|
-
@reporter.call @stack.last.dup
|
56
|
-
end
|
57
|
-
|
58
|
-
end # class Runner
|
59
|
-
end # module Viiite
|
data/lib/viiite/viiite_file.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
def viiite_clean_binding
|
2
|
-
binding
|
3
|
-
end
|
4
|
-
|
5
|
-
module Viiite
|
6
|
-
class ViiiteFile < Alf::Reader
|
7
|
-
|
8
|
-
# (see Alf::Reader#each)
|
9
|
-
def each
|
10
|
-
op = if input.is_a?(String)
|
11
|
-
Kernel.eval(input_text, viiite_clean_binding, input)
|
12
|
-
else
|
13
|
-
Kernel.eval(input_text, viiite_clean_binding)
|
14
|
-
end
|
15
|
-
op.each(&Proc.new)
|
16
|
-
end
|
17
|
-
|
18
|
-
Alf::Reader.register(:viiite, [".viiite", ".rb"], self)
|
19
|
-
end # class ViiiteFile
|
20
|
-
end # module Viiite
|
@@ -1,6 +0,0 @@
|
|
1
|
-
{:bench => :for, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.0111169815063477)}
|
2
|
-
{:bench => :times, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.01,0.0,0.0,0.0,0.00408315658569336)}
|
3
|
-
{:bench => :upto, :ruby => "ruby 1.8.7", :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.00950002670288086)}
|
4
|
-
{:ruby => "ruby 1.9.2p136", :bench => :for, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.0076122283935546875)}
|
5
|
-
{:ruby => "ruby 1.9.2p136", :bench => :times, :tms => Viiite::Tms(0.010000000000000009,0.0,0.0,0.0,0.006944417953491211)}
|
6
|
-
{:ruby => "ruby 1.9.2p136", :bench => :upto, :tms => Viiite::Tms(0.0,0.0,0.0,0.0,0.003862142562866211)}
|
@@ -1,26 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
module Viiite
|
3
|
-
describe Tms, "#divide" do
|
4
|
-
|
5
|
-
subject{ tms / operand }
|
6
|
-
let(:tms){ Viiite::Tms.new([1.0, 2.0, 3.0, 4.0, 5.0]) }
|
7
|
-
|
8
|
-
describe "with an integer" do
|
9
|
-
let(:operand){ 2 }
|
10
|
-
specify{
|
11
|
-
subject.should be_a(Tms)
|
12
|
-
subject.to_a.should eq([0.5, 1.0, 1.5, 2.0, 2.5])
|
13
|
-
}
|
14
|
-
end
|
15
|
-
|
16
|
-
describe "with another tms" do
|
17
|
-
let(:operand){ tms }
|
18
|
-
specify{
|
19
|
-
subject.should be_a(Tms)
|
20
|
-
subject.to_a.should eq([1.0, 1.0, 1.0, 1.0, 1.0])
|
21
|
-
}
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
data/spec/unit/tms/test_minus.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
module Viiite
|
3
|
-
describe Tms, "#minus" do
|
4
|
-
|
5
|
-
subject{ tms - operand }
|
6
|
-
let(:tms){ Viiite::Tms.new([1.0, 2.0, 3.0, 4.0, 5.0]) }
|
7
|
-
|
8
|
-
describe "with an integer" do
|
9
|
-
let(:operand){ 1 }
|
10
|
-
specify{
|
11
|
-
subject.should be_a(Tms)
|
12
|
-
subject.to_a.should eq([0.0, 1.0, 2.0, 3.0, 4.0])
|
13
|
-
}
|
14
|
-
end
|
15
|
-
|
16
|
-
describe "with another tms" do
|
17
|
-
let(:operand){ tms }
|
18
|
-
specify{
|
19
|
-
subject.should be_a(Tms)
|
20
|
-
subject.to_a.should eq([0.0, 0.0, 0.0, 0.0, 0.0])
|
21
|
-
}
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
data/spec/unit/tms/test_plus.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
module Viiite
|
3
|
-
describe Tms, "#plus" do
|
4
|
-
|
5
|
-
subject{ tms + operand }
|
6
|
-
let(:tms){ Viiite::Tms.new([1.0, 2.0, 3.0, 4.0, 5.0]) }
|
7
|
-
|
8
|
-
describe "with an integer" do
|
9
|
-
let(:operand){ 2 }
|
10
|
-
specify{
|
11
|
-
subject.should be_a(Tms)
|
12
|
-
subject.to_a.should eq([3.0, 4.0, 5.0, 6.0, 7.0])
|
13
|
-
}
|
14
|
-
end
|
15
|
-
|
16
|
-
describe "with another tms" do
|
17
|
-
let(:operand){ tms }
|
18
|
-
specify{
|
19
|
-
subject.should be_a(Tms)
|
20
|
-
subject.to_a.should eq([2.0, 4.0, 6.0, 8.0, 10.0])
|
21
|
-
}
|
22
|
-
end
|
23
|
-
|
24
|
-
describe "the other way around" do
|
25
|
-
subject{ 2 + tms }
|
26
|
-
specify{
|
27
|
-
subject.should be_a(Tms)
|
28
|
-
subject.to_a.should eq([3.0, 4.0, 5.0, 6.0, 7.0])
|
29
|
-
}
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
data/spec/unit/tms/test_times.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
module Viiite
|
3
|
-
describe Tms, "#times" do
|
4
|
-
|
5
|
-
subject{ tms * operand }
|
6
|
-
let(:tms){ Viiite::Tms.new([1.0, 2.0, 3.0, 4.0, 5.0]) }
|
7
|
-
|
8
|
-
describe "with an integer" do
|
9
|
-
let(:operand){ 2 }
|
10
|
-
specify{
|
11
|
-
subject.should be_a(Tms)
|
12
|
-
subject.to_a.should eq([2.0, 4.0, 6.0, 8.0, 10.0])
|
13
|
-
}
|
14
|
-
end
|
15
|
-
|
16
|
-
describe "with another tms" do
|
17
|
-
let(:operand){ tms }
|
18
|
-
specify{
|
19
|
-
subject.should be_a(Tms)
|
20
|
-
subject.to_a.should eq([1.0, 4.0, 9.0, 16.0, 25.0])
|
21
|
-
}
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
data/spec/unit/tms/test_to_a.rb
DELETED
data/spec/unit/tms/test_to_s.rb
DELETED