NewRatio: to twiddle or not to twiddle
Charles Oliver Nutter
charles.nutter at sun.com
Tue Sep 2 14:11:42 PDT 2008
> Hi Charles,
> Peter, awesome explination. I use hpjmeter right now to do very gross
> analysis on gc logs. It doesn't tolerate all the Sun non-standard
> non-standard switches (-XX and as apposed to the standard non-standard
> switches -X) ;-) I've also signed up with Tony to work in gchisto, a
> tool that should be more tolerant to Sun gc logs (is there anyway we can
> settle on a standard format???) though that tool is still very limited.
> Eventually it should get rolled into visualvm but that is a future.
If not a standard format, at least a version-frozen format with a
I'll have to look into hpjmeter. At the moment I think half our
"problems" on JRuby come from lack of experience with the right tools to
gain visibility into the JVM. Oh, and lack of resources; two guys does
not a language implementation team make.
> What I'm finding is that techniques that focus more on evacuation seem
> to work better than those that focus on collection compaction. This is
> one of the reasons I'm very interested in seeing G1 released into the
> wild. I believe that G1 will mix very well with dynamic languages
> because it primary logic is on evacuation. With G1, I don't believe it
> will matter if old fills up with transient objects that maybe should
> have died in young. In fact I'd bet money that G1 will excel under these
> conditions because old spaces will be evacuated based on who has the
> lowest live ratios. The biggest draw back that I can see will be copying
> costs. Even so, expect a win.
If it's true that G1 (what is G1?) wouldn't care about transient objects
getting promoted, I'd be interested in that as well. Overall, though, I
think the exercise of exploring memory usage patterns to reduce such
promotions will be very important, since there's going to be a lot of
users on less helpful JVM versions, hotspot or otherwise.
More information about the hotspot-dev