
On Tue, May 31, 2011 at 02:13:14PM -0400, Edward Z. Yang wrote:
It is possible that the iteratees library is space leaking; I recall some recent discussion to this effect. Your example seems simple enough that you might recompile with a version of iteratees that has -auto-all enabled.
If I understand you correctly, you imply that I should try compiling iteratee with profiling, no? I did install the iteratee library with profiling support (I have the cabal profiling flag globally set in my cabal config,) but my profiles so far seem to be blaming LAGging ByteStrings and HashMaps. I, unfortunately, do not know how I would test iteratee itself for a space leak here.
Unfortunately, it's not really a safe bet to assume your libraries are leak free, and if you've pinpointed it down to a single line, and there doesn't seem a way to squash the leak, I'd bet it's the library's fault.
Since my knowledge of Haskell, and, in particular, high-performance Haskell, is very lacking, my current m.o. is to blame myself :-) It might be iteratee, but unfortunately, I have not found something that gives me better performance than iteratee yet. Regards, Aleks