From d10fd3471979d19014ecb9e8a8ac4a8a85e0cfa7 Mon Sep 17 00:00:00 2001 From: Maxime Chevalier-Boisvert Date: Thu, 25 Jul 2024 16:05:06 -0400 Subject: [PATCH] Add object-new microbenchmark to track allocation performance --- benchmarks.yml | 4 ++++ benchmarks/object-new.rb | 9 +++++++++ 2 files changed, 13 insertions(+) create mode 100644 benchmarks/object-new.rb diff --git a/benchmarks.yml b/benchmarks.yml index 22bf2e43..8ce6f99a 100644 --- a/benchmarks.yml +++ b/benchmarks.yml @@ -119,6 +119,10 @@ respond_to: desc: respond_to tests the performance of the respond_to? method. category: micro single_file: true +object-new: + desc: instantiate a new object in a loop to test allocation performance + category: micro + single_file: true setivar: desc: setivar tests the performance of setting instance variable values. category: micro diff --git a/benchmarks/object-new.rb b/benchmarks/object-new.rb new file mode 100644 index 00000000..b079c393 --- /dev/null +++ b/benchmarks/object-new.rb @@ -0,0 +1,9 @@ +require_relative '../harness/loader' + +run_benchmark(100) do + i = 0 + while i < 1_000_000 + Object.new + i += 1 + end +end