On 20-Jan-2003, Simon Marlow <[EMAIL PROTECTED]> wrote: > > So, assuming the performance is roughly the same (I'm guessing that > using pools may be slightly faster than mallocForeignPtr, but not > significantly)
I am not yet convinced that this is a reasonable assumption if you are considering a wide range of Haskell implementations. Some Haskell implementations might use conservative collectors, and others (e.g. for .NET or JVM) may use collectors which are tuned for imperative/OO applications. On such implementations there might well be significant performance advantages to using pool-based manual memory management rather than garbage collection. In particular I suspect that pool-based manual memory management operations can be O(1) in some situations when non-copying GC'd allocation would be O(live data). I have observed significant overall speed-ups (e.g. for the Pseudoknot benchmark, about a factor of two) from using pool-like memory management rather than the Boehm collector. -- Fergus Henderson <[EMAIL PROTECTED]> | "I have always known that the pursuit The University of Melbourne | of excellence is a lethal habit" WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S. Garp. _______________________________________________ FFI mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/ffi