 <p>Depending on the exact version of the IBM JDK you are using, there are various options for tracking "large allocations". The differences are mainly in the implementation, and the result is a logging Java stack trace when an allocation over a certain size is made (which should help you track down the culprit).</p> <p>"Sovereign" 1.4.2 SR4+: <a href="http://www-01.ibm.com/support/docview.wss?uid=swg21236523" rel="nofollow noreferrer">http://www-01.ibm.com/support/docview.wss?uid=swg21236523</a></p> <p>"J9" 1.4.2 (if Java is running under -Xj9 option): You need to get hold of a JVMPI / JVMTI agent for the same purpose, I can't find a link for this one right now.</p>