diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | benchmark/bm_vm1_yield.rb | 10 | ||||
-rw-r--r-- | benchmark/bm_vm2_method_with_block.rb | 9 |
3 files changed, 27 insertions, 0 deletions
@@ -1,3 +1,11 @@ +Wed Oct 17 05:35:37 2012 Koichi Sasada <ko1@atdot.net> + + * benchmark/bm_vm1_yield.rb: add a benchmark to measure `yield' + (invoke empty block) performance. + + * benchmark/bm_vm2_method_with_block.rb: add a benchmark to measure + method invocation with empty block. + Wed Oct 17 05:05:07 2012 Koichi Sasada <ko1@atdot.net> * vm_insnhelper.c (vm_invoke_block): vm_caller_setup_args() can skip diff --git a/benchmark/bm_vm1_yield.rb b/benchmark/bm_vm1_yield.rb new file mode 100644 index 0000000000..775597cea6 --- /dev/null +++ b/benchmark/bm_vm1_yield.rb @@ -0,0 +1,10 @@ +def m + i = 0 + while i<30_000_000 # while loop 1 + i += 1 + yield + end +end + +m{} + diff --git a/benchmark/bm_vm2_method_with_block.rb b/benchmark/bm_vm2_method_with_block.rb new file mode 100644 index 0000000000..b4efb4f520 --- /dev/null +++ b/benchmark/bm_vm2_method_with_block.rb @@ -0,0 +1,9 @@ +def m + nil +end + +i = 0 +while i<6_000_000 # benchmark loop 2 + i += 1 + m{}; m{}; m{}; m{}; m{}; m{}; m{}; m{}; +end |