Reducing the cost of garbage collecting small arrays
jmaessen at alum.mit.edu
Thu Jun 23 00:31:50 CEST 2011
On Wed, Jun 22, 2011 at 12:33 PM, Johan Tibell <johan.tibell at gmail.com> wrote:
> Now when we can efficiently copy small arrays I've gone back to
> benchmarking/optimizing my hash array mapped trie data structure. The
> data structure's performance depends on how efficiently we can
> allocate/collect/copy Array#s and MutableArrays#s of size <=32.
> Speeding up copying helped quite a bit, but the HAMT is still slower
> than a Patricia tree for inserts.
Is 5 the optimal number of bits to slice off at a time (ie the best
fanout)? It sounds like node copy cost on insert argues for a
slightly narrower fanout. You'll be evacuating / scanning more words
total, but new nodes may equate to less scanning overall (especially
if this is running long enough to have some nodes get tenure).
More information about the Glasgow-haskell-users