Sciweavers

PPOPP
2012
ACM

Deterministic parallel random-number generation for dynamic-multithreading platforms

12 years 8 months ago
Deterministic parallel random-number generation for dynamic-multithreading platforms
Existing concurrency platforms for dynamic multithreading do not provide repeatable parallel random-number generators. This paper proposes that a mechanism called pedigrees be built into the runtime system to enable efficient deterministic parallel randomnumber generation. Experiments with the open-source MIT Cilk runtime system show that the overhead for maintaining pedigrees is negligible. Specifically, on a suite of 10 benchmarks, the relative overhead of Cilk with pedigrees to the original Cilk has a geometric mean of less than 1%. We persuaded Intel to modify its commercial C/C++ compiler, which provides the Cilk Plus concurrency platform, to include pedigrees, and we built a library implementation of a deterministic parallel random-number generator called DOTMIX that compresses the pedigree and then “RC6-mixes” the result. The statistical quality of DOTMIX is comparable to that of the popular Mersenne twister, but somewhat slower than a nondeterministic parallel version of...
Charles E. Leiserson, Tao B. Schardl, Jim Sukha
Added 25 Apr 2012
Updated 25 Apr 2012
Type Journal
Year 2012
Where PPOPP
Authors Charles E. Leiserson, Tao B. Schardl, Jim Sukha
Comments (0)