mirror of
https://github.com/ruby/ruby.git
synced 2026-10-28 08:25:20 +08:00
Add a benchmark for RubyVM::InstructionSequence.load_from_binary
This commit is contained in:
1 parent
2de7fbcdbb
commit
1041bff3b2
1 file changed
+25
Notes:
git
2026-06-26 09:47:19 +00:00
@@ -0,0 +1,25 @@
|
||||
prelude: |
|
||||
symbol = RubyVM::InstructionSequence.compile(":foo; :bar; :baz; :egg; :spam").to_binary
|
||||
|
||||
define_method = RubyVM::InstructionSequence.compile(%{
|
||||
def foo; end
|
||||
def bar; end
|
||||
def baz; end
|
||||
def egg; end
|
||||
def spam; end
|
||||
}).to_binary
|
||||
|
||||
all = RubyVM::InstructionSequence.compile(%{
|
||||
module Foo; def foo; :foo; end; end
|
||||
module Bar; def bar; :bar; end; end
|
||||
module Baz; def baz; :baz; end; end
|
||||
class Egg; def egg; :egg; end; end
|
||||
class Spaml; def spam; :spam; end; end
|
||||
}).to_binary
|
||||
|
||||
benchmark:
|
||||
symbol: RubyVM::InstructionSequence.load_from_binary(symbol)
|
||||
define_method: RubyVM::InstructionSequence.load_from_binary(define_method)
|
||||
all: RubyVM::InstructionSequence.load_from_binary(all)
|
||||
|
||||
loop_count: 100_000
|
||||
Reference in new issue
Block a user