Back in February, I posted about some prototype code I had put together 
that attempted an alternative approach to map-merging that promised to be 
faster and generate less churn than the standard approach.

Glen Mailer suggested that I put it in a standalone library. At the time, I 
thought that this would not be possible because of its necessarily tight 
coupling to clojure.lang.PersistentHashMap, but then I found some more 
time, went away and had a go.

Here it is:

https://github.com/JulesGosnell/seqspert

along with some other hash-set, vector and array related stuff that I have 
been playing with, instructions to set it up in Lein and example code to 
paste straight into the repl to see how well it performs in your test 
environment.

Some simple testing indicates that the larger the map and the greater the 
number of threads that you can run in parallel, the better results you will 
see. I have seen 30x speedups on a 16-way box merging two hash-maps of 10M 
entries each.

Please take a look at it and let me know about any issues, improvements, 
results etc - I'd be very interested to hear from you.

I'll put out a stable release in a while, once interested parties have 
kicked the tyres a bit.

regards,


Jules

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to