So, it's time to bring up this question. ObjectSpace makes JRuby so much slower, I think it's time to consider disabling it by default.

For example, here's the fractal benchmark, which generates a text-based mandelbrot:

With ObjectSpace: Ruby Elapsed 45.967000
Without ObjectSpace: Ruby Elapsed 4.280000

We have also made modifications to allow ObjectSpace.each_object(Class) to work even when ObjectSpace is disabled, by tracking an in-memory graph of classes and subclasses. This allows the most visible use case for ObjectSpace--test/unit--to continue working until we can patch it to not use ObjectSpace.

So I have a few questions here:

- Could we now use -O to *enabled* objectspace?
- Would a requirable library be better? -robjectspace to enable the "extended" features for full object graph walking? - Do we know of anything else that needs ObjectSpace? Can we get those things patched? - Do we need to get buy-in from ruby-core for something like this? Can we convince them it's in everyone's best interest if ObjectSpace becomes an extension?

Over time, our perf numbers have shown ObjectSpace as more and more of a penalty. I'm tired of typing -O, but I'm not running a lot of real-world stuff day-to-day. What do you all think?

- Charlie

---------------------------------------------------------------------
To unsubscribe from this list please visit:

   http://xircles.codehaus.org/manage_email

Reply via email to