From: shevegen@... Date: 2020-05-07T12:48:57+00:00 Subject: [ruby-core:98185] [Ruby master Feature#16837] Can we make Ruby 3.0 as fast as Ruby 2.7 with the new assertions? Issue #16837 has been updated by shevegen (Robert A. Heiler). I have a question concerning one point mentioned above. k0kubun wrote: > Provide .so for an assertion-enabled mode? (ko1's idea) Could someone briefly explain the general idea behind this? I assume for a .so file the ruby user would have to require/load that file, but what may be the perceived benefits/disadvantages for doing so? ---------------------------------------- Feature #16837: Can we make Ruby 3.0 as fast as Ruby 2.7 with the new assertions? https://bugs.ruby-lang.org/issues/16837#change-85425 * Author: k0kubun (Takashi Kokubun) * Status: Open * Priority: Normal ---------------------------------------- ## Problem How can we make Ruby 3.0 as fast as (or faster than) Ruby 2.7? ### Background * Split ruby.h https://github.com/ruby/ruby/pull/2991 added some new assertions * While it has been helpful for revealing various bugs, it also made some Ruby programs notably slow, especially Optcarrot https://benchmark-driver.github.io/benchmarks/optcarrot/commits.html ## Possible approaches I have no strong preference yet. Here are some random ideas: * Optimize the assertion code somehow * Enable the new assertions only on CIs, at least ones in hot spots * Not sure which places have large impact on Optcarrot yet * Make some other not-so-important assertions CI-only to offset the impact from new ones * Provide .so for an assertion-enabled mode? (ko1's idea) I hope people will comment more ideas in this ticket. -- https://bugs.ruby-lang.org/ Unsubscribe: