aboutsummaryrefslogtreecommitdiffstats
path: root/benchmark
diff options
context:
space:
mode:
authorSamuel Williams <samuel.williams@oriontransfer.co.nz>2019-07-18 11:13:49 +1200
committerSamuel Williams <samuel.williams@oriontransfer.co.nz>2019-07-18 11:13:49 +1200
commit9b28eefeb2cea9690b897aeb3a1e1de2cbc19137 (patch)
tree73a7874630384b1e63bf8faba10f9b93a4fca811 /benchmark
parentbdec1ad9a96700eb00ab953ea6ee2168449827d9 (diff)
downloadruby-9b28eefeb2cea9690b897aeb3a1e1de2cbc19137.tar.gz
Add benchmark to help diagnose performance regression.
See https://bugs.ruby-lang.org/issues/16009 for more details.
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/vm2_fiber_reuse_gc.yml12
1 files changed, 12 insertions, 0 deletions
diff --git a/benchmark/vm2_fiber_reuse_gc.yml b/benchmark/vm2_fiber_reuse_gc.yml
new file mode 100644
index 0000000000..8fb91a84eb
--- /dev/null
+++ b/benchmark/vm2_fiber_reuse_gc.yml
@@ -0,0 +1,12 @@
+# https://bugs.ruby-lang.org/issues/16009
+prelude: |
+ fibers = []
+benchmark:
+ vm2_fiber_reuse_gc: |
+ 2000.times do
+ fiber = Fiber.new{Fiber.yield}
+ fibers << fiber
+ fiber.resume
+ end
+ fibers.clear
+loop_count: 100