GC Performance in IBM JDK
Submitted by Matt Fleming on Sun, 2005-11-27 01:36.
After reading this article about Young vs. Old Generation GC, I decided to run the same tests in the IBM 1.4.2 JDK.
Setup
- Win2k machine
- IBM JDK 1.4.2
- Classes from here
Results
| IBM Pool | IBM No Pool | Sun Pool | Sun No Pool | |
| %GC | 39% | 0% | 78% | 9% |
| #Objects | 760,342,474 | 48,335,363,654 | 223,206,001 | 4,043,776,370 |
Analysis
The IBM garbage collector doesn't work like the hotspot collector so the young vs. old question doesn't really mean anything. I don't really know what to make of the zero GCs for the non pooled instances.. somehow the vm doesn't even need to mark the objects that are not referenced for gc like the sun vm does. I need to read more about the way the IBM collector works to really figure this out. But the IBM vm sure does seem to do more in less time.. it created 3.5x more pooled objects and a staggering 12x more on non-pooled objects.

JRockit?
Might as well go Whole Hog and do a JRockit trial now, no?
I wish I had the time!
The only reason I did the IBM JDK is because I am currently working on performance tuning at a client using the IBM JDK. But if I get the urge maybe I'll do a whole host of JDKs