On Wed, May 26, 2010 at 7:51 PM, John Rose <[email protected]> wrote:
> On May 26, 2010, at 5:37 PM, Charles Oliver Nutter wrote:
>> Are there any good switches we can use to get some
>> visibility into EA decisions?
>
> Good old LogCompilation will tell you when allocations are eliminated.

A quick examination seemed to show the allocations were alive and well.

I assume EA depends on being able to inline all paths completely; that
could be where things get in the way for us. There's bound to be at
least one path that receives RubyFloat that we can't full inline, and
that one path would mean the object needs to exist...right?

> Also PrintEscapeAnalysis and PrintEliminateAllocations (non-product switches).

I'll have to give that a shot once I get my mlvm build env back up and going...

>> Fixnum, of course, does have numerous caching behaviors. If we remove
>> them, low-valued numeric operations become considerably slower without
>> EA, but I'm not sure we've ever been able to see EA solve this case.
>
> We had to put special logic into the dynamic compiler to recognize and 
> discount the effects of such caching in Integer.valueOf.  The caching is 
> required by the specification, useful for most apps, and noxious to the EA 
> optimization.

Since the EA stuff has filtered down to most Java 6 installs I
wouldn't be opposed to eliminating our cache if we could start to show
EA working. We're not using java.lang.Long/Integer for our fixnum
representation...

>> I hope there's a university out there somewhere about to announce
>> they've added value types to OpenJDK...we're going to fall behind
>> other dynlang impls that have fixnums and flonums :(
>
> The mlvm project is looking for a few good grad students...

What fun that would be! :)

- Charlie

-- 
You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=en.

Reply via email to