Skip to main content

2004 | OriginalPaper | Buchkapitel

Polynomial-Time Algorithms for Enforcing Sequential Consistency in SPMD Programs with Arrays

verfasst von : Wei-Yu Chen, Arvind Krishnamurthy, Katherine Yelick

Erschienen in: Languages and Compilers for Parallel Computing

Verlag: Springer Berlin Heidelberg

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

The simplest semantics for parallel shared memory programs is sequential consistency in which memory operations appear to take place in the order specified by the program. But many compiler optimizations and hardware features explicitly reorder memory operations or make use of overlapping memory operations which may violate this constraint. To ensure sequential consistency while allowing for these optimizations, traditional data dependence analysis is augmented with a parallel analysis called cycle detection. In this paper, we present new algorithms to enforce sequential consistency for the special case of the Single Program Multiple Data (SPMD) model of parallelism. First, we present an algorithm for the basic cycle detection problem, which lowers the running time from O(n3) to O(n2). Next, we present three polynomial-time methods that more accurately support programs with array accesses. These results are a step toward making sequentially consistent shared memory programming a practical model across a wide range of languages and hardware platforms.

Metadaten
Titel
Polynomial-Time Algorithms for Enforcing Sequential Consistency in SPMD Programs with Arrays
verfasst von
Wei-Yu Chen
Arvind Krishnamurthy
Katherine Yelick
Copyright-Jahr
2004
Verlag
Springer Berlin Heidelberg
DOI
https://doi.org/10.1007/978-3-540-24644-2_22

Premium Partner