On Fri, Dec 6, 2013 at 1:45 PM, Ketil Malde <ketil@malde.org> wrote:
Then I thought I'd look at hash tables, using the 'hashtables' package.
I haven't tested it much yet, but it appears to be a lot slower than
Judy (maybe as much as 10x), and uses a lot more memory (also perhaps a
factor of 10).  I guess I might be able to improve things a bit by
judiciously applying strictness, but it seems to be storing both keys
and values unboxed, so I don't expect to come close to Judy - I guess
there isn't any unboxed hash table implementations around?

If you want to try the git master version of the hashtables library, I've made some performance and memory overhead improvements that haven't been released yet (I still need to run more benchmarks before release). Try both the "basic" and "cuckoo" hash tables (cuckoo might be better). IIRC we force keys stored in the hash tables but not the values -- you might want to confirm you're not building up value thunks.

G
--
Gregory Collins <greg@gregorycollins.net>