summaryrefslogtreecommitdiff
path: root/benchmark
diff options
context:
space:
mode:
authork0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-07-08 17:03:23 (GMT)
committerk0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-07-08 17:03:23 (GMT)
commit12068aa4e980ab32a0438408a519030e65dabf5e (patch)
treed62bc1f1849ef9d5c9abd2c58d0ababde219f2b5 /benchmark
parent1aedeaa476a073d81d0539f66cfb4f6363b6766a (diff)
benchmark/vm2_*.yml: abstract away the while loop
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'benchmark')
-rwxr-xr-xbenchmark/driver.rb8
-rw-r--r--benchmark/vm2_array.yml11
-rw-r--r--benchmark/vm2_bigarray.yml210
-rw-r--r--benchmark/vm2_bighash.yml8
-rw-r--r--benchmark/vm2_case.yml23
-rw-r--r--benchmark/vm2_case_lit.yml3
-rw-r--r--benchmark/vm2_defined_method.yml17
-rw-r--r--benchmark/vm2_dstr.yml11
-rw-r--r--benchmark/vm2_eval.yml11
-rw-r--r--benchmark/vm2_fiber_switch.yml14
-rw-r--r--benchmark/vm2_method.yml17
-rw-r--r--benchmark/vm2_method_missing.yml21
-rw-r--r--benchmark/vm2_method_with_block.yml17
-rw-r--r--benchmark/vm2_module_ann_const_set.yml11
-rw-r--r--benchmark/vm2_module_const_set.yml15
-rw-r--r--benchmark/vm2_mutex.yml17
-rw-r--r--benchmark/vm2_newlambda.yml11
-rw-r--r--benchmark/vm2_poly_method.yml36
-rw-r--r--benchmark/vm2_poly_method_ov.yml34
-rw-r--r--benchmark/vm2_poly_singleton.yml26
-rw-r--r--benchmark/vm2_proc.yml25
-rw-r--r--benchmark/vm2_raise1.yml31
-rw-r--r--benchmark/vm2_raise2.yml31
-rw-r--r--benchmark/vm2_regexp.yml11
-rw-r--r--benchmark/vm2_send.yml21
-rw-r--r--benchmark/vm2_string_literal.yml11
-rw-r--r--benchmark/vm2_struct_big_aref_hi.yml16
-rw-r--r--benchmark/vm2_struct_big_aref_lo.yml16
-rw-r--r--benchmark/vm2_struct_big_aset.yml16
-rw-r--r--benchmark/vm2_struct_big_href_hi.yml16
-rw-r--r--benchmark/vm2_struct_big_href_lo.yml16
-rw-r--r--benchmark/vm2_struct_big_hset.yml16
-rw-r--r--benchmark/vm2_struct_small_aref.yml16
-rw-r--r--benchmark/vm2_struct_small_aset.yml16
-rw-r--r--benchmark/vm2_struct_small_href.yml16
-rw-r--r--benchmark/vm2_struct_small_hset.yml16
-rw-r--r--benchmark/vm2_super.yml31
-rw-r--r--benchmark/vm2_unif1.yml14
-rw-r--r--benchmark/vm2_zsuper.yml33
39 files changed, 384 insertions, 505 deletions
diff --git a/benchmark/driver.rb b/benchmark/driver.rb
index a38481b..4185e20 100755
--- a/benchmark/driver.rb
+++ b/benchmark/driver.rb
@@ -72,17 +72,9 @@ loop_count: 1
files = (legacy_files + yaml_files).map{|file|
next if @pattern && /#{@pattern}/ !~ File.basename(file)
next if @exclude && /#{@exclude}/ =~ File.basename(file)
- case file
- when /bm_(vm2)_/, /bm_loop_(whileloop2).rb/
- flag[$1] = true
- end
file
}.compact
- if flag['vm2'] && !flag['whileloop2']
- files << File.join(@dir, 'bm_loop_whileloop2.rb')
- end
-
files.sort!
files
end
diff --git a/benchmark/vm2_array.yml b/benchmark/vm2_array.yml
index fb1f224..6bed8e3 100644
--- a/benchmark/vm2_array.yml
+++ b/benchmark/vm2_array.yml
@@ -1,8 +1,5 @@
benchmark:
- vm2_array: |
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- a = [1,2,3,4,5,6,7,8,9,10]
- end
-loop_count: 1
+ vm2_array: 'a = [1,2,3,4,5,6,7,8,9,10]
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_bigarray.yml b/benchmark/vm2_bigarray.yml
index f80e1e9..2ad6da3 100644
--- a/benchmark/vm2_bigarray.yml
+++ b/benchmark/vm2_bigarray.yml
@@ -1,109 +1,105 @@
benchmark:
vm2_bigarray: |
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- a = [
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- 1,2,3,4,5,6,7,8,9,10,
- ]
- end
-loop_count: 1
+ a = [
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ 1,2,3,4,5,6,7,8,9,10,
+ ]
+loop_count: 6000000
diff --git a/benchmark/vm2_bighash.yml b/benchmark/vm2_bighash.yml
index 8d6522b..e9154e4 100644
--- a/benchmark/vm2_bighash.yml
+++ b/benchmark/vm2_bighash.yml
@@ -1,8 +1,4 @@
benchmark:
vm2_bighash: |
- i = 0
- while i<60_000 # benchmark loop 2
- i += 1
- a = {0=>0, 1=>1, 2=>2, 3=>3, 4=>4, 5=>5, 6=>6, 7=>7, 8=>8, 9=>9, 10=>10, 11=>11, 12=>12, 13=>13, 14=>14, 15=>15, 16=>16, 17=>17, 18=>18, 19=>19, 20=>20, 21=>21, 22=>22, 23=>23, 24=>24, 25=>25, 26=>26, 27=>27, 28=>28, 29=>29, 30=>30, 31=>31, 32=>32, 33=>33, 34=>34, 35=>35, 36=>36, 37=>37, 38=>38, 39=>39, 40=>40, 41=>41, 42=>42, 43=>43, 44=>44, 45=>45, 46=>46, 47=>47, 48=>48, 49=>49, 50=>50, 51=>51, 52=>52, 53=>53, 54=>54, 55=>55, 56=>56, 57=>57, 58=>58, 59=>59, 60=>60, 61=>61, 62=>62, 63=>63, 64=>64, 65=>65, 66=>66, 67=>67, 68=>68, 69=>69, 70=>70, 71=>71, 72=>72, 73=>73, 74=>74, 75=>75, 76=>76, 77=>77, 78=>78, 79=>79, 80=>80, 81=>81, 82=>82, 83=>83, 84=>84, 85=>85, 86=>86, 87=>87, 88=>88, 89=>89, 90=>90, 91=>91, 92=>92, 93=>93, 94=>94, 95=>95, 96=>96, 97=>97, 98=>98, 99=>99, 100=>100, 101=>101, 102=>102, 103=>103, 104=>104, 105=>105, 106=>106, 107=>107, 108=>108, 109=>109, 110=>110, 111=>111, 112=>112, 113=>113, 114=>114, 115=>115, 116=>116, 117=>117, 118=>118, 119=>119, 120=>120, 121=>121, 122=>122, 123=>123, 124=>124, 125=>125, 126=>126, 127=>127, 128=>128, 129=>129, 130=>130, 131=>131, 132=>132, 133=>133, 134=>134, 135=>135, 136=>136, 137=>137, 138=>138, 139=>139, 140=>140, 141=>141, 142=>142, 143=>143, 144=>144, 145=>145, 146=>146, 147=>147, 148=>148, 149=>149, 150=>150, 151=>151, 152=>152, 153=>153, 154=>154, 155=>155, 156=>156, 157=>157, 158=>158, 159=>159, 160=>160, 161=>161, 162=>162, 163=>163, 164=>164, 165=>165, 166=>166, 167=>167, 168=>168, 169=>169, 170=>170, 171=>171, 172=>172, 173=>173, 174=>174, 175=>175, 176=>176, 177=>177, 178=>178, 179=>179, 180=>180, 181=>181, 182=>182, 183=>183, 184=>184, 185=>185, 186=>186, 187=>187, 188=>188, 189=>189, 190=>190, 191=>191, 192=>192, 193=>193, 194=>194, 195=>195, 196=>196, 197=>197, 198=>198, 199=>199, 200=>200, 201=>201, 202=>202, 203=>203, 204=>204, 205=>205, 206=>206, 207=>207, 208=>208, 209=>209, 210=>210, 211=>211, 212=>212, 213=>213, 214=>214, 215=>215, 216=>216, 217=>217, 218=>218, 219=>219, 220=>220, 221=>221, 222=>222, 223=>223, 224=>224, 225=>225, 226=>226, 227=>227, 228=>228, 229=>229, 230=>230, 231=>231, 232=>232, 233=>233, 234=>234, 235=>235, 236=>236, 237=>237, 238=>238, 239=>239, 240=>240, 241=>241, 242=>242, 243=>243, 244=>244, 245=>245, 246=>246, 247=>247, 248=>248, 249=>249, 250=>250, 251=>251, 252=>252, 253=>253, 254=>254, 255=>255, 256=>256, 257=>257, 258=>258, 259=>259, 260=>260, 261=>261, 262=>262, 263=>263, 264=>264, 265=>265, 266=>266, 267=>267, 268=>268, 269=>269, 270=>270, 271=>271, 272=>272, 273=>273, 274=>274, 275=>275, 276=>276, 277=>277, 278=>278, 279=>279, 280=>280, 281=>281, 282=>282, 283=>283, 284=>284, 285=>285, 286=>286, 287=>287, 288=>288, 289=>289, 290=>290, 291=>291, 292=>292, 293=>293, 294=>294, 295=>295, 296=>296, 297=>297, 298=>298, 299=>299, 300=>300, 301=>301, 302=>302, 303=>303, 304=>304, 305=>305, 306=>306, 307=>307, 308=>308, 309=>309, 310=>310, 311=>311, 312=>312, 313=>313, 314=>314, 315=>315, 316=>316, 317=>317, 318=>318, 319=>319, 320=>320, 321=>321, 322=>322, 323=>323, 324=>324, 325=>325, 326=>326, 327=>327, 328=>328, 329=>329, 330=>330, 331=>331, 332=>332, 333=>333, 334=>334, 335=>335, 336=>336, 337=>337, 338=>338, 339=>339, 340=>340, 341=>341, 342=>342, 343=>343, 344=>344, 345=>345, 346=>346, 347=>347, 348=>348, 349=>349, 350=>350, 351=>351, 352=>352, 353=>353, 354=>354, 355=>355, 356=>356, 357=>357, 358=>358, 359=>359, 360=>360, 361=>361, 362=>362, 363=>363, 364=>364, 365=>365, 366=>366, 367=>367, 368=>368, 369=>369, 370=>370, 371=>371, 372=>372, 373=>373, 374=>374, 375=>375, 376=>376, 377=>377, 378=>378, 379=>379, 380=>380, 381=>381, 382=>382, 383=>383, 384=>384, 385=>385, 386=>386, 387=>387, 388=>388, 389=>389, 390=>390, 391=>391, 392=>392, 393=>393, 394=>394, 395=>395, 396=>396, 397=>397, 398=>398, 399=>399, 400=>400, 401=>401, 402=>402, 403=>403, 404=>404, 405=>405, 406=>406, 407=>407, 408=>408, 409=>409, 410=>410, 411=>411, 412=>412, 413=>413, 414=>414, 415=>415, 416=>416, 417=>417, 418=>418, 419=>419, 420=>420, 421=>421, 422=>422, 423=>423, 424=>424, 425=>425, 426=>426, 427=>427, 428=>428, 429=>429, 430=>430, 431=>431, 432=>432, 433=>433, 434=>434, 435=>435, 436=>436, 437=>437, 438=>438, 439=>439, 440=>440, 441=>441, 442=>442, 443=>443, 444=>444, 445=>445, 446=>446, 447=>447, 448=>448, 449=>449, 450=>450, 451=>451, 452=>452, 453=>453, 454=>454, 455=>455, 456=>456, 457=>457, 458=>458, 459=>459, 460=>460, 461=>461, 462=>462, 463=>463, 464=>464, 465=>465, 466=>466, 467=>467, 468=>468, 469=>469, 470=>470, 471=>471, 472=>472, 473=>473, 474=>474, 475=>475, 476=>476, 477=>477, 478=>478, 479=>479, 480=>480, 481=>481, 482=>482, 483=>483, 484=>484, 485=>485, 486=>486, 487=>487, 488=>488, 489=>489, 490=>490, 491=>491, 492=>492, 493=>493, 494=>494, 495=>495, 496=>496, 497=>497, 498=>498, 499=>499, 500=>500,}
- end
-loop_count: 1
+ a = {0=>0, 1=>1, 2=>2, 3=>3, 4=>4, 5=>5, 6=>6, 7=>7, 8=>8, 9=>9, 10=>10, 11=>11, 12=>12, 13=>13, 14=>14, 15=>15, 16=>16, 17=>17, 18=>18, 19=>19, 20=>20, 21=>21, 22=>22, 23=>23, 24=>24, 25=>25, 26=>26, 27=>27, 28=>28, 29=>29, 30=>30, 31=>31, 32=>32, 33=>33, 34=>34, 35=>35, 36=>36, 37=>37, 38=>38, 39=>39, 40=>40, 41=>41, 42=>42, 43=>43, 44=>44, 45=>45, 46=>46, 47=>47, 48=>48, 49=>49, 50=>50, 51=>51, 52=>52, 53=>53, 54=>54, 55=>55, 56=>56, 57=>57, 58=>58, 59=>59, 60=>60, 61=>61, 62=>62, 63=>63, 64=>64, 65=>65, 66=>66, 67=>67, 68=>68, 69=>69, 70=>70, 71=>71, 72=>72, 73=>73, 74=>74, 75=>75, 76=>76, 77=>77, 78=>78, 79=>79, 80=>80, 81=>81, 82=>82, 83=>83, 84=>84, 85=>85, 86=>86, 87=>87, 88=>88, 89=>89, 90=>90, 91=>91, 92=>92, 93=>93, 94=>94, 95=>95, 96=>96, 97=>97, 98=>98, 99=>99, 100=>100, 101=>101, 102=>102, 103=>103, 104=>104, 105=>105, 106=>106, 107=>107, 108=>108, 109=>109, 110=>110, 111=>111, 112=>112, 113=>113, 114=>114, 115=>115, 116=>116, 117=>117, 118=>118, 119=>119, 120=>120, 121=>121, 122=>122, 123=>123, 124=>124, 125=>125, 126=>126, 127=>127, 128=>128, 129=>129, 130=>130, 131=>131, 132=>132, 133=>133, 134=>134, 135=>135, 136=>136, 137=>137, 138=>138, 139=>139, 140=>140, 141=>141, 142=>142, 143=>143, 144=>144, 145=>145, 146=>146, 147=>147, 148=>148, 149=>149, 150=>150, 151=>151, 152=>152, 153=>153, 154=>154, 155=>155, 156=>156, 157=>157, 158=>158, 159=>159, 160=>160, 161=>161, 162=>162, 163=>163, 164=>164, 165=>165, 166=>166, 167=>167, 168=>168, 169=>169, 170=>170, 171=>171, 172=>172, 173=>173, 174=>174, 175=>175, 176=>176, 177=>177, 178=>178, 179=>179, 180=>180, 181=>181, 182=>182, 183=>183, 184=>184, 185=>185, 186=>186, 187=>187, 188=>188, 189=>189, 190=>190, 191=>191, 192=>192, 193=>193, 194=>194, 195=>195, 196=>196, 197=>197, 198=>198, 199=>199, 200=>200, 201=>201, 202=>202, 203=>203, 204=>204, 205=>205, 206=>206, 207=>207, 208=>208, 209=>209, 210=>210, 211=>211, 212=>212, 213=>213, 214=>214, 215=>215, 216=>216, 217=>217, 218=>218, 219=>219, 220=>220, 221=>221, 222=>222, 223=>223, 224=>224, 225=>225, 226=>226, 227=>227, 228=>228, 229=>229, 230=>230, 231=>231, 232=>232, 233=>233, 234=>234, 235=>235, 236=>236, 237=>237, 238=>238, 239=>239, 240=>240, 241=>241, 242=>242, 243=>243, 244=>244, 245=>245, 246=>246, 247=>247, 248=>248, 249=>249, 250=>250, 251=>251, 252=>252, 253=>253, 254=>254, 255=>255, 256=>256, 257=>257, 258=>258, 259=>259, 260=>260, 261=>261, 262=>262, 263=>263, 264=>264, 265=>265, 266=>266, 267=>267, 268=>268, 269=>269, 270=>270, 271=>271, 272=>272, 273=>273, 274=>274, 275=>275, 276=>276, 277=>277, 278=>278, 279=>279, 280=>280, 281=>281, 282=>282, 283=>283, 284=>284, 285=>285, 286=>286, 287=>287, 288=>288, 289=>289, 290=>290, 291=>291, 292=>292, 293=>293, 294=>294, 295=>295, 296=>296, 297=>297, 298=>298, 299=>299, 300=>300, 301=>301, 302=>302, 303=>303, 304=>304, 305=>305, 306=>306, 307=>307, 308=>308, 309=>309, 310=>310, 311=>311, 312=>312, 313=>313, 314=>314, 315=>315, 316=>316, 317=>317, 318=>318, 319=>319, 320=>320, 321=>321, 322=>322, 323=>323, 324=>324, 325=>325, 326=>326, 327=>327, 328=>328, 329=>329, 330=>330, 331=>331, 332=>332, 333=>333, 334=>334, 335=>335, 336=>336, 337=>337, 338=>338, 339=>339, 340=>340, 341=>341, 342=>342, 343=>343, 344=>344, 345=>345, 346=>346, 347=>347, 348=>348, 349=>349, 350=>350, 351=>351, 352=>352, 353=>353, 354=>354, 355=>355, 356=>356, 357=>357, 358=>358, 359=>359, 360=>360, 361=>361, 362=>362, 363=>363, 364=>364, 365=>365, 366=>366, 367=>367, 368=>368, 369=>369, 370=>370, 371=>371, 372=>372, 373=>373, 374=>374, 375=>375, 376=>376, 377=>377, 378=>378, 379=>379, 380=>380, 381=>381, 382=>382, 383=>383, 384=>384, 385=>385, 386=>386, 387=>387, 388=>388, 389=>389, 390=>390, 391=>391, 392=>392, 393=>393, 394=>394, 395=>395, 396=>396, 397=>397, 398=>398, 399=>399, 400=>400, 401=>401, 402=>402, 403=>403, 404=>404, 405=>405, 406=>406, 407=>407, 408=>408, 409=>409, 410=>410, 411=>411, 412=>412, 413=>413, 414=>414, 415=>415, 416=>416, 417=>417, 418=>418, 419=>419, 420=>420, 421=>421, 422=>422, 423=>423, 424=>424, 425=>425, 426=>426, 427=>427, 428=>428, 429=>429, 430=>430, 431=>431, 432=>432, 433=>433, 434=>434, 435=>435, 436=>436, 437=>437, 438=>438, 439=>439, 440=>440, 441=>441, 442=>442, 443=>443, 444=>444, 445=>445, 446=>446, 447=>447, 448=>448, 449=>449, 450=>450, 451=>451, 452=>452, 453=>453, 454=>454, 455=>455, 456=>456, 457=>457, 458=>458, 459=>459, 460=>460, 461=>461, 462=>462, 463=>463, 464=>464, 465=>465, 466=>466, 467=>467, 468=>468, 469=>469, 470=>470, 471=>471, 472=>472, 473=>473, 474=>474, 475=>475, 476=>476, 477=>477, 478=>478, 479=>479, 480=>480, 481=>481, 482=>482, 483=>483, 484=>484, 485=>485, 486=>486, 487=>487, 488=>488, 489=>489, 490=>490, 491=>491, 492=>492, 493=>493, 494=>494, 495=>495, 496=>496, 497=>497, 498=>498, 499=>499, 500=>500,}
+loop_count: 60000
diff --git a/benchmark/vm2_case.yml b/benchmark/vm2_case.yml
index 7875ab1..7716783 100644
--- a/benchmark/vm2_case.yml
+++ b/benchmark/vm2_case.yml
@@ -1,16 +1,13 @@
benchmark:
vm2_case: |
- i = 0
- while i<6_000_000 # while loop 2
- case :foo
- when :bar
- raise
- when :baz
- raise
- when :boo
- raise
- when :foo
- i += 1
- end
+ case :foo
+ when :bar
+ raise
+ when :baz
+ raise
+ when :boo
+ raise
+ when :foo
+ # noop
end
-loop_count: 1
+loop_count: 6000000
diff --git a/benchmark/vm2_case_lit.yml b/benchmark/vm2_case_lit.yml
index ced0f10..c49b8df 100644
--- a/benchmark/vm2_case_lit.yml
+++ b/benchmark/vm2_case_lit.yml
@@ -1,3 +1,4 @@
+# loop_count is not utilized since `i` is involved in the script
benchmark:
vm2_case_lit: |
i = 0
@@ -6,7 +7,7 @@ benchmark:
@ret[i % @ret.size]
end
- while i<6_000_000 # while loop 2
+ while i<6_000_000
case foo(i)
when "foo" then :foo
when true then true
diff --git a/benchmark/vm2_defined_method.yml b/benchmark/vm2_defined_method.yml
index fbf997a..8bc65cf 100644
--- a/benchmark/vm2_defined_method.yml
+++ b/benchmark/vm2_defined_method.yml
@@ -1,12 +1,9 @@
+prelude: |
+ class Object
+ define_method(:m){}
+ end
benchmark:
- vm2_defined_method: |
- class Object
- define_method(:m){}
- end
+ vm2_defined_method: 'm; m; m; m; m; m; m; m;
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- m; m; m; m; m; m; m; m;
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_dstr.yml b/benchmark/vm2_dstr.yml
index b1f5381..f8bd6e0 100644
--- a/benchmark/vm2_dstr.yml
+++ b/benchmark/vm2_dstr.yml
@@ -1,9 +1,6 @@
+prelude: |
+ x = y = 'z'
benchmark:
vm2_dstr: |
- i = 0
- x = y = 'z'
- while i<6_000_000 # benchmark loop 2
- i += 1
- str = "foo#{x}bar#{y}baz"
- end
-loop_count: 1
+ str = "foo#{x}bar#{y}baz"
+loop_count: 6000000
diff --git a/benchmark/vm2_eval.yml b/benchmark/vm2_eval.yml
index a660dfa..65b9359 100644
--- a/benchmark/vm2_eval.yml
+++ b/benchmark/vm2_eval.yml
@@ -1,8 +1,5 @@
benchmark:
- vm2_eval: |
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- eval("1")
- end
-loop_count: 1
+ vm2_eval: 'eval("1")
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_fiber_switch.yml b/benchmark/vm2_fiber_switch.yml
index 63aab8b..f3e4c91 100644
--- a/benchmark/vm2_fiber_switch.yml
+++ b/benchmark/vm2_fiber_switch.yml
@@ -1,13 +1,9 @@
prelude: |
# based on benchmark for [ruby-core:65518] [Feature #10341] by Knut Franke
+ fib = Fiber.new do
+ loop { Fiber.yield }
+ end
benchmark:
vm2_fiber_switch: |
- fib = Fiber.new do
- loop { Fiber.yield }
- end
- i = 0
- while i< 6_000_000 # benchmark loop 2
- i += 1
- fib.resume
- end
-loop_count: 1
+ fib.resume
+loop_count: 6000000
diff --git a/benchmark/vm2_method.yml b/benchmark/vm2_method.yml
index 84ac6c1..15baf05 100644
--- a/benchmark/vm2_method.yml
+++ b/benchmark/vm2_method.yml
@@ -1,12 +1,9 @@
+prelude: |
+ def m
+ nil
+ end
benchmark:
- vm2_method: |
- def m
- nil
- end
+ vm2_method: 'm; m; m; m; m; m; m; m;
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- m; m; m; m; m; m; m; m;
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_method_missing.yml b/benchmark/vm2_method_missing.yml
index 742c3dd..67e8838 100644
--- a/benchmark/vm2_method_missing.yml
+++ b/benchmark/vm2_method_missing.yml
@@ -1,15 +1,12 @@
-benchmark:
- vm2_method_missing: |
- class C
- def method_missing mid
- end
+prelude: |
+ class C
+ def method_missing mid
end
+ end
- obj = C.new
+ obj = C.new
+benchmark:
+ vm2_method_missing: 'obj.m; obj.m; obj.m; obj.m; obj.m; obj.m; obj.m; obj.m;
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- obj.m; obj.m; obj.m; obj.m; obj.m; obj.m; obj.m; obj.m;
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_method_with_block.yml b/benchmark/vm2_method_with_block.yml
index f0017d5..ab4be77 100644
--- a/benchmark/vm2_method_with_block.yml
+++ b/benchmark/vm2_method_with_block.yml
@@ -1,12 +1,9 @@
+prelude: |
+ def m
+ nil
+ end
benchmark:
- vm2_method_with_block: |
- def m
- nil
- end
+ vm2_method_with_block: 'm{}; m{}; m{}; m{}; m{}; m{}; m{}; m{};
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- m{}; m{}; m{}; m{}; m{}; m{}; m{}; m{};
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_module_ann_const_set.yml b/benchmark/vm2_module_ann_const_set.yml
index 15dd2ad..4783bce 100644
--- a/benchmark/vm2_module_ann_const_set.yml
+++ b/benchmark/vm2_module_ann_const_set.yml
@@ -1,8 +1,5 @@
benchmark:
- vm2_module_ann_const_set: |
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- Module.new.const_set(:X, Module.new)
- end
-loop_count: 1
+ vm2_module_ann_const_set: 'Module.new.const_set(:X, Module.new)
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_module_const_set.yml b/benchmark/vm2_module_const_set.yml
index a69d499..05a6400 100644
--- a/benchmark/vm2_module_const_set.yml
+++ b/benchmark/vm2_module_const_set.yml
@@ -1,11 +1,8 @@
+prelude: |
+ module M
+ end
+ $VERBOSE = nil
benchmark:
vm2_module_const_set: |
- i = 0
- module M
- end
- $VERBOSE = nil
- while i<6_000_000 # benchmark loop 2
- i += 1
- M.const_set(:X, Module.new)
- end
-loop_count: 1
+ M.const_set(:X, Module.new)
+loop_count: 6000000
diff --git a/benchmark/vm2_mutex.yml b/benchmark/vm2_mutex.yml
index 8aefe23..caa0e9a 100644
--- a/benchmark/vm2_mutex.yml
+++ b/benchmark/vm2_mutex.yml
@@ -1,12 +1,9 @@
-benchmark:
- vm2_mutex: |
- require 'thread'
+prelude: |
+ require 'thread'
- m = Thread::Mutex.new
+ m = Thread::Mutex.new
+benchmark:
+ vm2_mutex: 'm.synchronize{}
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- m.synchronize{}
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_newlambda.yml b/benchmark/vm2_newlambda.yml
index 344993d..6f7c516 100644
--- a/benchmark/vm2_newlambda.yml
+++ b/benchmark/vm2_newlambda.yml
@@ -1,8 +1,5 @@
benchmark:
- vm2_newlambda: |
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- lambda {}
- end
-loop_count: 1
+ vm2_newlambda: 'lambda {}
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_poly_method.yml b/benchmark/vm2_poly_method.yml
index b5e66a0..6554151 100644
--- a/benchmark/vm2_poly_method.yml
+++ b/benchmark/vm2_poly_method.yml
@@ -1,23 +1,19 @@
-benchmark:
- vm2_poly_method: |
- class C1
- def m
- 1
- end
+prelude: |
+ class C1
+ def m
+ 1
end
- class C2
- def m
- 2
- end
+ end
+ class C2
+ def m
+ 2
end
+ end
- o1 = C1.new
- o2 = C2.new
-
- i = 0
- while i<6_000_000 # benchmark loop 2
- o = (i % 2 == 0) ? o1 : o2
- o.m; o.m; o.m; o.m; o.m; o.m; o.m; o.m
- i += 1
- end
-loop_count: 1
+ o1 = C1.new
+ o2 = C2.new
+benchmark:
+ vm2_poly_method: |
+ o = (i % 2 == 0) ? o1 : o2
+ o.m; o.m; o.m; o.m; o.m; o.m; o.m; o.m
+loop_count: 6000000
diff --git a/benchmark/vm2_poly_method_ov.yml b/benchmark/vm2_poly_method_ov.yml
index 3b7f315..b77a588 100644
--- a/benchmark/vm2_poly_method_ov.yml
+++ b/benchmark/vm2_poly_method_ov.yml
@@ -1,23 +1,19 @@
-benchmark:
- vm2_poly_method_ov: |
- class C1
- def m
- 1
- end
+prelude: |
+ class C1
+ def m
+ 1
end
- class C2
- def m
- 2
- end
+ end
+ class C2
+ def m
+ 2
end
+ end
- o1 = C1.new
- o2 = C2.new
-
- i = 0
- while i<6_000_000 # benchmark loop 2
- o = (i % 2 == 0) ? o1 : o2
+ o1 = C1.new
+ o2 = C2.new
+benchmark:
+ vm2_poly_method_ov: |
+ o = (i % 2 == 0) ? o1 : o2
# o.m; o.m; o.m; o.m; o.m; o.m; o.m; o.m
- i += 1
- end
-loop_count: 1
+loop_count: 6000000
diff --git a/benchmark/vm2_poly_singleton.yml b/benchmark/vm2_poly_singleton.yml
index b0082e3..a22c3c3 100644
--- a/benchmark/vm2_poly_singleton.yml
+++ b/benchmark/vm2_poly_singleton.yml
@@ -1,17 +1,13 @@
+prelude: |
+ class C1
+ def m; 1; end
+ end
+
+ o1 = C1.new
+ o2 = C1.new
+ o2.singleton_class
benchmark:
vm2_poly_singleton: |
- class C1
- def m; 1; end
- end
-
- o1 = C1.new
- o2 = C1.new
- o2.singleton_class
-
- i = 0
- while i<6_000_000 # benchmark loop 2
- o = (i % 2 == 0) ? o1 : o2
- o.m; o.m; o.m; o.m; o.m; o.m; o.m; o.m
- i += 1
- end
-loop_count: 1
+ o = (i % 2 == 0) ? o1 : o2
+ o.m; o.m; o.m; o.m; o.m; o.m; o.m; o.m
+loop_count: 6000000
diff --git a/benchmark/vm2_proc.yml b/benchmark/vm2_proc.yml
index 481dbc2..782e9ae 100644
--- a/benchmark/vm2_proc.yml
+++ b/benchmark/vm2_proc.yml
@@ -1,16 +1,13 @@
-benchmark:
- vm2_proc: |
- def m &b
- b
- end
+prelude: |
+ def m &b
+ b
+ end
- pr = m{
- a = 1
- }
+ pr = m{
+ a = 1
+ }
+benchmark:
+ vm2_proc: 'pr.call
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- pr.call
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_raise1.yml b/benchmark/vm2_raise1.yml
index 4ca89ba..f6eb308 100644
--- a/benchmark/vm2_raise1.yml
+++ b/benchmark/vm2_raise1.yml
@@ -1,21 +1,16 @@
+prelude: |
+ def rec n
+ if n > 0
+ rec n-1
+ else
+ raise
+ end
+ end
benchmark:
vm2_raise1: |
- def rec n
- if n > 0
- rec n-1
- else
- raise
- end
- end
-
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
-
- begin
- rec 1
- rescue
- # ignore
- end
+ begin
+ rec 1
+ rescue
+ # ignore
end
-loop_count: 1
+loop_count: 6000000
diff --git a/benchmark/vm2_raise2.yml b/benchmark/vm2_raise2.yml
index d9455b8..7d51b1b 100644
--- a/benchmark/vm2_raise2.yml
+++ b/benchmark/vm2_raise2.yml
@@ -1,21 +1,16 @@
+prelude: |
+ def rec n
+ if n > 0
+ rec n-1
+ else
+ raise
+ end
+ end
benchmark:
vm2_raise2: |
- def rec n
- if n > 0
- rec n-1
- else
- raise
- end
- end
-
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
-
- begin
- rec 10
- rescue
- # ignore
- end
+ begin
+ rec 10
+ rescue
+ # ignore
end
-loop_count: 1
+loop_count: 6000000
diff --git a/benchmark/vm2_regexp.yml b/benchmark/vm2_regexp.yml
index da7416b..0f3968a 100644
--- a/benchmark/vm2_regexp.yml
+++ b/benchmark/vm2_regexp.yml
@@ -1,9 +1,6 @@
+prelude: |
+ str = 'xxxhogexxx'
benchmark:
vm2_regexp: |
- i = 0
- str = 'xxxhogexxx'
- while i<6_000_000 # benchmark loop 2
- /hoge/ =~ str
- i += 1
- end
-loop_count: 1
+ /hoge/ =~ str
+loop_count: 6000000
diff --git a/benchmark/vm2_send.yml b/benchmark/vm2_send.yml
index eaeb1a7..6011d31 100644
--- a/benchmark/vm2_send.yml
+++ b/benchmark/vm2_send.yml
@@ -1,15 +1,12 @@
-benchmark:
- vm2_send: |
- class C
- def m
- end
+prelude: |
+ class C
+ def m
end
+ end
- o = C.new
+ o = C.new
+benchmark:
+ vm2_send: 'o.__send__ :m
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- o.__send__ :m
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_string_literal.yml b/benchmark/vm2_string_literal.yml
index 5b85995..265cf9b 100644
--- a/benchmark/vm2_string_literal.yml
+++ b/benchmark/vm2_string_literal.yml
@@ -1,8 +1,5 @@
benchmark:
- vm2_string_literal: |
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
- end
-loop_count: 1
+ vm2_string_literal: 'x = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_big_aref_hi.yml b/benchmark/vm2_struct_big_aref_hi.yml
index 8f86566..2db4f3c 100644
--- a/benchmark/vm2_struct_big_aref_hi.yml
+++ b/benchmark/vm2_struct_big_aref_hi.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(*('a'..'z').map { |x| x.to_sym })
+ x = s.new
benchmark:
- vm2_struct_big_aref_hi: |
- s = Struct.new(*('a'..'z').map { |x| x.to_sym })
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x.z # x[25]
- end
-loop_count: 1
+ vm2_struct_big_aref_hi: 'x.z # x[25]
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_big_aref_lo.yml b/benchmark/vm2_struct_big_aref_lo.yml
index 5e16d67..17b2b0c 100644
--- a/benchmark/vm2_struct_big_aref_lo.yml
+++ b/benchmark/vm2_struct_big_aref_lo.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(*('a'..'z').map { |x| x.to_sym })
+ x = s.new
benchmark:
- vm2_struct_big_aref_lo: |
- s = Struct.new(*('a'..'z').map { |x| x.to_sym })
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x.k # x[10]
- end
-loop_count: 1
+ vm2_struct_big_aref_lo: 'x.k # x[10]
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_big_aset.yml b/benchmark/vm2_struct_big_aset.yml
index 54b3aa1..4578876 100644
--- a/benchmark/vm2_struct_big_aset.yml
+++ b/benchmark/vm2_struct_big_aset.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(*('a'..'z').map { |x| x.to_sym })
+ x = s.new
benchmark:
- vm2_struct_big_aset: |
- s = Struct.new(*('a'..'z').map { |x| x.to_sym })
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x.k = i # x[10] = i
- end
-loop_count: 1
+ vm2_struct_big_aset: 'x.k = i # x[10] = i
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_big_href_hi.yml b/benchmark/vm2_struct_big_href_hi.yml
index c8e67c6..aa5d778 100644
--- a/benchmark/vm2_struct_big_href_hi.yml
+++ b/benchmark/vm2_struct_big_href_hi.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(*('a'..'z').map { |x| x.to_sym })
+ x = s.new
benchmark:
- vm2_struct_big_href_hi: |
- s = Struct.new(*('a'..'z').map { |x| x.to_sym })
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x[:z]
- end
-loop_count: 1
+ vm2_struct_big_href_hi: 'x[:z]
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_big_href_lo.yml b/benchmark/vm2_struct_big_href_lo.yml
index da89941..d662816 100644
--- a/benchmark/vm2_struct_big_href_lo.yml
+++ b/benchmark/vm2_struct_big_href_lo.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(*('a'..'z').map { |x| x.to_sym })
+ x = s.new
benchmark:
- vm2_struct_big_href_lo: |
- s = Struct.new(*('a'..'z').map { |x| x.to_sym })
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x[:k]
- end
-loop_count: 1
+ vm2_struct_big_href_lo: 'x[:k]
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_big_hset.yml b/benchmark/vm2_struct_big_hset.yml
index 89dadc2..963b668 100644
--- a/benchmark/vm2_struct_big_hset.yml
+++ b/benchmark/vm2_struct_big_hset.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(*('a'..'z').map { |x| x.to_sym })
+ x = s.new
benchmark:
- vm2_struct_big_hset: |
- s = Struct.new(*('a'..'z').map { |x| x.to_sym })
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x[:k] = i
- end
-loop_count: 1
+ vm2_struct_big_hset: 'x[:k] = i
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_small_aref.yml b/benchmark/vm2_struct_small_aref.yml
index 57e3d6a..22cd919 100644
--- a/benchmark/vm2_struct_small_aref.yml
+++ b/benchmark/vm2_struct_small_aref.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(:a, :b, :c)
+ x = s.new
benchmark:
- vm2_struct_small_aref: |
- s = Struct.new(:a, :b, :c)
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x.a
- end
-loop_count: 1
+ vm2_struct_small_aref: 'x.a
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_small_aset.yml b/benchmark/vm2_struct_small_aset.yml
index e16c41c..e6a8a5e 100644
--- a/benchmark/vm2_struct_small_aset.yml
+++ b/benchmark/vm2_struct_small_aset.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(:a, :b, :c)
+ x = s.new
benchmark:
- vm2_struct_small_aset: |
- s = Struct.new(:a, :b, :c)
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x.a = i
- end
-loop_count: 1
+ vm2_struct_small_aset: 'x.a = i
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_small_href.yml b/benchmark/vm2_struct_small_href.yml
index 14b8efd..c98122a 100644
--- a/benchmark/vm2_struct_small_href.yml
+++ b/benchmark/vm2_struct_small_href.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(:a, :b, :c)
+ x = s.new
benchmark:
- vm2_struct_small_href: |
- s = Struct.new(:a, :b, :c)
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x[:a]
- end
-loop_count: 1
+ vm2_struct_small_href: 'x[:a]
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_struct_small_hset.yml b/benchmark/vm2_struct_small_hset.yml
index 8c02b22..edfde8b 100644
--- a/benchmark/vm2_struct_small_hset.yml
+++ b/benchmark/vm2_struct_small_hset.yml
@@ -1,10 +1,8 @@
+prelude: |
+ s = Struct.new(:a, :b, :c)
+ x = s.new
benchmark:
- vm2_struct_small_hset: |
- s = Struct.new(:a, :b, :c)
- x = s.new
- i = 0
- while i<6_000_000 # benchmark loop 2
- i += 1
- x[:a] = 1
- end
-loop_count: 1
+ vm2_struct_small_hset: 'x[:a] = 1
+
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_super.yml b/benchmark/vm2_super.yml
index 92d1428..79da4ac 100644
--- a/benchmark/vm2_super.yml
+++ b/benchmark/vm2_super.yml
@@ -1,23 +1,20 @@
-benchmark:
- vm2_super: |
+prelude: |2
- class C
- def m
- 1
- end
+ class C
+ def m
+ 1
end
+ end
- class CC < C
- def m
- super()
- end
+ class CC < C
+ def m
+ super()
end
+ end
- obj = CC.new
+ obj = CC.new
+benchmark:
+ vm2_super: 'obj.m
- i = 0
- while i<6_000_000 # benchmark loop 2
- obj.m
- i += 1
- end
-loop_count: 1
+'
+loop_count: 6000000
diff --git a/benchmark/vm2_unif1.yml b/benchmark/vm2_unif1.yml
index d4759ea..caef132 100644
--- a/benchmark/vm2_unif1.yml
+++ b/benchmark/vm2_unif1.yml
@@ -1,11 +1,7 @@
+prelude: |
+ def m a, b
+ end
benchmark:
vm2_unif1: |
- i = 0
- def m a, b
- end
-
- while i<6_000_000 # benchmark loop 2
- i += 1
- m 100, 200
- end
-loop_count: 1
+ m 100, 200
+loop_count: 6000000
diff --git a/benchmark/vm2_zsuper.yml b/benchmark/vm2_zsuper.yml
index bde57be..f760cfd 100644
--- a/benchmark/vm2_zsuper.yml
+++ b/benchmark/vm2_zsuper.yml
@@ -1,23 +1,18 @@
-benchmark:
- vm2_zsuper: |
- i = 0
-
- class C
- def m a
- 1
- end
+prelude: |
+ class C
+ def m a
+ 1
end
+ end
- class CC < C
- def m a
- super
- end
+ class CC < C
+ def m a
+ super
end
+ end
- obj = CC.new
-
- while i<6_000_000 # benchmark loop 2
- obj.m 10
- i += 1
- end
-loop_count: 1
+ obj = CC.new
+benchmark:
+ vm2_zsuper: |
+ obj.m 10
+loop_count: 6000000