diff options
author | 卜部昌平 <shyouhei@ruby-lang.org> | 2020-05-28 13:37:14 +0900 |
---|---|---|
committer | 卜部昌平 <shyouhei@ruby-lang.org> | 2020-06-03 16:13:47 +0900 |
commit | d4015cfee34f236b58e20da418d7dea540bf7cc1 (patch) | |
tree | dc98a2e4bf5610beaa433e5a301629ae0d89ebb0 /benchmark | |
parent | 6302b963681e810287b63b0c29adc4718bfe9c5a (diff) |
add benchmark for different block handlers
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/3152
Diffstat (limited to 'benchmark')
-rw-r--r-- | benchmark/vm_block_handler.yml | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/benchmark/vm_block_handler.yml b/benchmark/vm_block_handler.yml new file mode 100644 index 0000000000..461d7953ad --- /dev/null +++ b/benchmark/vm_block_handler.yml @@ -0,0 +1,27 @@ +# :FIXME: is there a way to benchmark block_handler_type_ifunc? + +prelude: | + p = proc{_1} + o = Object.new + def o.each + i = 0 + while i < 3_000_000 do + yield i + i += 1 + end + end + +benchmark: + - name: block_handler_type_iseq + script: | + o.each{_1} + + - name: block_handler_type_symbol + script: | + o.each(&:itself) + + - name: block_handler_type_proc + script: | + o.each(&p) + +loop_count: 1 |