FYI we had a bit of a discussion about this at a meetup in Amherst MA yesterday, and while I'm not sufficiently on top of the JVM or system issues to have briefed everyone on all of the details there has been a little of followup since the discussion, including results of some different experiments by Chas Emerick, at: http://www.meetup.com/Functional-Programming-Connoisseurs/messages/boards/thread/30946382
-Lee On Jan 30, 2013, at 8:39 PM, Marshall Bockrath-Vandegrift wrote: > > Apologies for my very-slow reply here. I keep thinking that I’ll have > more time to look into this issue, and keep having other things > requiring my attention. And on top of that, I’ve temporarily lost the > many-way AMD system I was using as a test-bed. > > I very much want to see if I can get my hands on an Intel system to > compare to. My AMD system is in theory 32-way – two physical CPUs, each > with 16 cores. However, Linux reports (via /proc/cpuinfo) the cores in > groups of 8 (“cpu cores : 8” etc). And something very strange happens > when extending parallelism beyond 8-way... I ran several experiments > using a version of your whole-application benchmark I modified to > control the level of parallelism. At parallelism 9+, the real time it > takes to complete the benchmark hardly budges, but the user/CPU time > increases linearly with the level of parallelism! As far as I can tell, > multi-processor AMD *is* a NUMA architecture, which might potentially > explain things. But enabling the JVM NUMA options doesn’t seem to > affect the benchmark. > > I think next steps are two-fold: (1) examine parallelism vs real & CPU > time on an Intel system, and (2) attempt to reproduce the observed > behavior in pure Java. I’m keeping my fingers crossed that I’ll have > some time to look at this more soon, but I’m honestly not very hopeful. > > In the mean time, I hope you’ve managed to exploit multi-process > parallelism to run more efficiently? > > -Marshall -- -- 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/groups/opt_out.