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.