[Haskell-cafe] Aeson memory use
vanessa.mchale at iohk.io
Wed Aug 8 20:24:28 UTC 2018
I'm not 100% sure it's applicable in your case, but perhaps trying
threadscope would be a good idea?
Based on the heap profile, I'm guessing that most of the allocations are
due to slicing ByteStrings up. What happens when you try to read a map
I'd also note that your example uses evaluate and performGC which isn't
entirely realistic and thus may not actually correspond to the
performance of the application in practice. I gather it *was* a problem
in practice but nonetheless it's always good to benchmark the right thing.
On 08/08/2018 02:54 PM, Lana Black wrote:
> Hello Cafe,
> Recently while trying to optimize some code, I noticed that aeson
> requires quite a substantial amount of memory when parsing map-like
> structures. The quick example I crafted  is quite surprising. In
> order to parse an 11 megabyte file aeson requires around 300 megabytes
> of memory (according to the heap profiler), and the total memory
> footprint (according to htop) jumps to around 700 megabytes.
> Is there a way to reduce this number to something less insane? I
> suspect that I might be doing something wrong here, but I can't
> exactly see what.
>  https://github.com/greydot/aeson-example
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> Only members subscribed via the mailman list are allowed to post.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 488 bytes
Desc: OpenPGP digital signature
More information about the Haskell-Cafe