[Rubygems-developers] faster rubygems.rb loading by way of deferred plugin loads, and other resource usage enhancements

Charles Oliver Nutter headius at headius.com
Fri Jul 9 14:36:51 EDT 2010

On Fri, Jul 9, 2010 at 12:40 PM, James Tucker <jftucker at gmail.com> wrote:
>> Wouldn't rubygems_plugin.rb do the Gem.register* command and deffer
>> the actual plugin loading script for the command invitation?
> Yes, it will defer calling activate and modifying the load path.
>> What is the benefit on indexing those, since these were already loaded?
> To avoid needing to load Gem.spec in order to execute Gem.find_files, which is insanely expensive (relatively speaking).

FWIW, I wrote up a blog post last night about how to walk the heap,
examine memory sizes, and so on using JRuby. One of the items I called
out were all the Gem::Version objects in memory, and there's other
offenders. If you'd like to do some of that exploration, I'm happy to


I'm definitely interested in helping reduce the startup load from
RubyGems. It's the largest (by far) slowdown for JRuby startup, which
drives our users a bit batty.

- Charlie

More information about the Rubygems-developers mailing list