{ by david linsin }

August 16, 2007

JVM Memory Pool Sizing Principles

Artima summarized the great blog post of Stefan Schneider on "Java Memory Pool Sizing and Garbage Collectors", which was also topic of Stefan's presentation at JUG-KA yesterday:

Tune your pools based on following principles:
  • The new generation should be large enough to keep all temporary objects until they are getting dereferenced.
  • The old generation should host all permanent objects
  • Young generation garbage collections (GC) are unavoidable. Their run time typically grows with the number of objects.
  • The young generation GC is typically cheap compared to the old generation GC
  • Old generation GC should be avoided. They're needed to clean up objects which aren't permanent, yet they slipped through the young generation GC.



  • mail(dlinsin@gmail.com)
  • jabber(dlinsin@gmail.com)
  • skype(dlinsin)