Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Increase default maximum size of normal methods

This helps in JIT'ing methods where the JIT profile changed because of
now treating + as a regular method. One example here is String#+ which
now can be inlined and benefits from larger maximum sizes.
  • Loading branch information...
commit 9c06167d5feb4696834467838e1d21b007da1af0 1 parent 658c187
Dirkjan Bussink dbussink authored
Showing with 1 addition and 1 deletion.
  1. +1 −1  lib/rubinius/configuration.rb
2  lib/rubinius/configuration.rb
View
@@ -87,7 +87,7 @@
i.vm_variable "small_method_size", 100,
"The maximum size for a small method"
- i.vm_variable "normal_method_size", 300,
+ i.vm_variable "normal_method_size", 500,
"The maximum size for a normal method"
i.vm_variable "large_method_size", 2000,

2 comments on commit 9c06167

Ian Leitch
Collaborator

Do these method size variables depend on context of the application, or are they roughly absolute given the general sizes of methods in all projects? If the former, it'd be great to auto-tune these.

Karol Hosiawa
Collaborator

AFAIK they're absolute values. Auto tuning would be a good solution provided the perf benefits outweigh the complexity of its implementation. We'd have to benchmark some real world apps and prove that the current absolute values aren't the best defaults. I did some benchmarks before on this but haven't found anything conclusive (the current defaults seemed to be OK, not necessarily the best).

Please sign in to comment.
Something went wrong with that request. Please try again.