On Sun, Feb 28, 2010 at 6:06 PM, Pavel Perikov <perikov@gmail.com> wrote:
Did you really seen 100ms pauses?! I never did extensive research on this but my numbers are rather in microseconds range (below 1ms). What causes such a long garbage collection? Lots of allocated and long-living objects?


I am using an automated options trading system written in Haskell.  I'm more on the business side than the technical side of the issues so I'm not clear on all the details.  I can confirm that without tweaking the RTS settings we were seeing over 100ms GC pauses.  I've mainly been trying to minimise our overall response time and we were able to improve this by increasing the allocation area with -A.  I think this brought GC well under 100ms.  We are still working on analysis of this. 

I can also confirm, as others seem to have found, that under 6.12 the parallel GC seemed to make things much worse. I am always turning it off with -qg.  If there is a project to improve performance of the GC I could be interested to contribute.

Simon Cranshaw