From: "ko1 (Koichi Sasada)" Date: 2013-08-09T19:28:51+09:00 Subject: [ruby-core:56475] [ruby-trunk - Feature #8576] Add optimized method type for constant value methods Issue #8576 has been updated by ko1 (Koichi Sasada). Memo - Discussion on twitter: https://twitter.com/charliesome/status/350901225010638850 ---------------------------------------- Feature #8576: Add optimized method type for constant value methods https://bugs.ruby-lang.org/issues/8576#change-41022 Author: charliesome (Charlie Somerville) Status: Open Priority: Normal Assignee: ko1 (Koichi Sasada) Category: Target version: I've written a patch adding a new method type (VM_METHOD_TYPE_CONSTVAL) for methods that only return a constant value. The patch significantly improves the performance of calls to these types of methods. I've written a small benchmark script: require "benchmark" def foo 1234 end puts Benchmark.measure { 1_000_000.times do foo; foo; foo; foo; foo foo; foo; foo; foo; foo end } Before patch: $ ./rb x.rb 0.620000 0.000000 0.620000 ( 0.625130) After patch: $ ./rb x.rb 0.300000 0.000000 0.300000 ( 0.296528) The patch is here: https://github.com/charliesome/ruby/compare/constant-value-methods -- http://bugs.ruby-lang.org/