std.parallelism: Request for Review
dsimcha
dsimcha at yahoo.com
Sat Feb 26 13:13:07 PST 2011
I've taken care of all of the issues Andrei mentioned a while back with
regard to std.parallelism. I've moved the repository to Github
(https://github.com/dsimcha/std.parallelism/wiki), updated/improved the
documentation
(http://cis.jhu.edu/~dsimcha/d/phobos/std_parallelism.html), cleaned up
a couple miscellaneous minor issues, added a LazyMap object for
pipelining, and added a benchmarks folder (in the Github source tree)
with at least one benchmark for each of the parallelism types (parallel
foreach, map, reduce, task-based, pipelining). This is an official
request for review of this module for inclusion in Phobos.
I didn't include any benchmark results on the wiki yet, because so far
I've only had a chance to run them on a dual core I have at home.
They're also admittedly slightly tuned to my hardware, so the results
would be biased, but all seem to provide at least close to linear
speedups. Others may feel free to post their benchmark results to the wiki.
One last note: Due to Bug 5612
(http://d.puremagic.com/issues/show_bug.cgi?id=5612), the benchmarks
don't work on 64-bit because core.cpuid won't realize that your CPU is
multicore. There are two ways around this. One is to use 32-bit mode.
The other is to change the benchmark files to manually set the number
of cores by setting the defaultPoolThreads property.
More information about the Digitalmars-d
mailing list