parallel optimizations based on number of memory controllers vs cpus
Jay Norwood
jayn at prismnet.com
Fri Mar 23 06:46:20 PDT 2012
I believe the current std.parallelism default threadpool count is
number of cpus-1, according to some documentation. When I was
testing some concurrent vs threadpool parallel implementations I
was seeing improvements on the concurrent operation up to about
14 threads. I didn't try to figure out how to change the
threadpool.
While reading this article I noticed someone who reported similar
improvements up to 14 threads on memory related operations, and
explained it by the number of memory controllers being the
limiting issue. See his item number 4 where significant gains
were made in memory processing up to 14 threads.
So, I wonder if it wouldn't be good to have a couple of different
built-in threadpool types ... one meant for memory operations,
and one primarily for cpu crunching ... with different sizes.
http://stackoverflow.com/questions/4260602/how-to-increase-performance-of-memcpy
More information about the Digitalmars-d
mailing list