Sciweavers

SPAA
2004
ACM

On-the-fly maintenance of series-parallel relationships in fork-join multithreaded programs

13 years 9 months ago
On-the-fly maintenance of series-parallel relationships in fork-join multithreaded programs
A key capability of data-race detectors is to determine whether one thread executes logically in parallel with another or whether the threads must operate in series. This paper provides two algorithms, one serial and one parallel, to maintain series-parallel (SP) relationships “on the fly” for fork-join multithreaded programs. The serial SP-order algorithm runs in O(1) amortized time per operation. In contrast, the previously best algorithm requires a time per operation that is proportional to Tarjan’s functional inverse of Ackermann’s function. SP-order employs an order-maintenance data structure that allows us to implement a more efficient “EnglishHebrew” labeling scheme than was used in earlier race detectors, which immediately yields an improved determinacy-race detector. In particular, any fork-join program running in T1 time on a single processor can be checked on the fly for determinacy races in O(T1) time. Corresponding improved bounds can also be obtained for m...
Michael A. Bender, Jeremy T. Fineman, Seth Gilbert
Added 30 Jun 2010
Updated 30 Jun 2010
Type Conference
Year 2004
Where SPAA
Authors Michael A. Bender, Jeremy T. Fineman, Seth Gilbert, Charles E. Leiserson
Comments (0)