[前][次][番号順一覧][スレッド一覧]

ruby-changes:72567

From: Jemma <ko1@a...>
Date: Sat, 16 Jul 2022 05:39:16 +0900 (JST)
Subject: [ruby-changes:72567] f375280d5a (master): Add benchmarks for setting / getting ivars on generics

https://git.ruby-lang.org/ruby.git/commit/?id=f375280d5a

From f375280d5a9d2a1da0a0432a9e9fe7ffed910d50 Mon Sep 17 00:00:00 2001
From: Jemma Issroff <jemmaissroff@g...>
Date: Fri, 15 Jul 2022 15:18:30 -0400
Subject: Add benchmarks for setting / getting ivars on generics

---
 benchmark/vm_ivar_generic_get.yml | 17 +++++++++++++++++
 benchmark/vm_ivar_generic_set.yml | 14 ++++++++++++++
 2 files changed, 31 insertions(+)
 create mode 100644 benchmark/vm_ivar_generic_get.yml
 create mode 100644 benchmark/vm_ivar_generic_set.yml

diff --git a/benchmark/vm_ivar_generic_get.yml b/benchmark/vm_ivar_generic_get.yml
new file mode 100644
index 0000000000..dae2d37671
--- /dev/null
+++ b/benchmark/vm_ivar_generic_get.yml
@@ -0,0 +1,17 @@ https://github.com/ruby/ruby/blob/trunk/benchmark/vm_ivar_generic_get.yml#L1
+prelude: |
+  class C < Array
+    attr_reader :a, :b, :c
+    def initialize
+      @a = nil
+      @b = nil
+      @c = nil
+    end
+  end
+
+  c = C.new
+benchmark:
+  vm_ivar_generic_get: |
+    c.a
+    c.b
+    c.c
+loop_count: 30000000
diff --git a/benchmark/vm_ivar_generic_set.yml b/benchmark/vm_ivar_generic_set.yml
new file mode 100644
index 0000000000..102a6577fb
--- /dev/null
+++ b/benchmark/vm_ivar_generic_set.yml
@@ -0,0 +1,14 @@ https://github.com/ruby/ruby/blob/trunk/benchmark/vm_ivar_generic_set.yml#L1
+prelude: |
+  class C < Array
+    def set_ivars
+      @a = nil
+      @b = nil
+      @c = nil
+    end
+  end
+
+  c = C.new
+benchmark:
+  vm_ivar_generic_set: |
+    c.set_ivars
+loop_count: 30000000
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]