Is there some way to reduce the cost of garbage collection over large persistent datastructures without resorting to escaping to C to malloc memory outside the heap?
The program I'm working is part database, which cannot discard information. The net result is that I see figures like 82.9% of the time taken by garbage collection. The heap profile looks like a charging capacitor: a linear increase (as expected) which is slowly dilated as time increases by the garbage collector thrashing memory. When I worked on the LOLITA natural language processor we solved the problem by moving a lot of the data out to C++, so that the heap only contains things soon to be freed. I know generational garbage collection is supposed to help, but it doesn't seem to. Is there a pure Haskell solution to this problem? Sengan _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell