From: ko1@... Date: 2017-02-06T03:19:44+00:00 Subject: [ruby-core:79447] [Ruby trunk Feature#8576] Add optimized method type for constant value methods Issue #8576 has been updated by Koichi Sasada. Actually, I tried this approach, but I couldn't find good improvement. I'll try it again. ---------------------------------------- Feature #8576: Add optimized method type for constant value methods https://bugs.ruby-lang.org/issues/8576#change-62879 * Author: Charlie Somerville * Status: Open * Priority: Normal * Assignee: Koichi Sasada * Target version: next minor ---------------------------------------- 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 -- https://bugs.ruby-lang.org/ Unsubscribe: