What JVM and garbage collector setting? We are using the IBM JVM with their concurrent generational collector. I would strongly recommend trying a similar collector on your JVM. Hint: how much memory is in use after a full GC? That is a good approximation to the working set.
27GB is a very, very large heap. Is that really being used or is it just filling up with garbage which makes the collections really long? We run with a 4GB heap and really only need that to handle indexing or starting new searchers. Searching only needs a 2GB heap for us. Our full GC pauses for under a half second. Way longer than I'd like, but that's Java (I still miss Python sometimes). wunder On 1/21/09 9:49 AM, "wojtekpia" <wojte...@hotmail.com> wrote: > > I'm intermittently experiencing severe performance drops due to Java garbage > collection. I'm allocating a lot of RAM to my Java process (27GB of the 32GB > physically available). Under heavy load, the performance drops approximately > every 10 minutes, and the drop lasts for 30-40 seconds. This coincides with > the size of the old generation heap dropping from ~27GB to ~6GB. > > Is there a way to reduce the impact of garbage collection? A couple ideas > we've come up with (but haven't tried yet) are: increasing the minimum heap > size, more frequent (but hopefully less costly) garbage collection. > > Thanks, > > Wojtek