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.