On Monday, November 17, 2014 5:00:23 PM UTC-5, Jules wrote:
>
> 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
>

Looks like you're seeing a general 2x speedup, and an orthogonal 
${num_cores} speedup from parallelization. What's the source of the general 
2x speedup? Algorithmic improvement? Use of transients? 

-- 
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