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

James Tucker jftucker at gmail.com
Fri Jul 9 15:10:50 EDT 2010

On 9 Jul 2010, at 19:36, Charles Oliver Nutter wrote:

> 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
> help.
> http://blog.headius.com/2010/07/browsing-memory-jruby-way.html
> 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.

And yes, despite the interpreter specific details in my last, this is very much an architectural problem, and can be fixed with some work.

> - Charlie
> _______________________________________________
> Rubygems-developers mailing list
> http://rubyforge.org/projects/rubygems
> Rubygems-developers at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rubygems-developers

More information about the Rubygems-developers mailing list