A fundamental problem in the analysis of parallel programs is to determine when two statements in a program may run concurrently. This analysis is the parallel analog to control flow analysis on serial programs and is useful in detecting parallel programming errors and as a precursor to semantics-preserving code transformations. We consider the problem of analyzing parallel programs that access shared memory and use barrier synchronization, specifically those with textually aligned barriers and single-valued expressions. We present an intermediate graph representation for parallel programs and an efficient interprocedural analysis algorithm that conservatively computes the set of all concurrent statements. We improve the precision of this a...
Concurrency is an indispensable programming paradigm and multi-threaded programs form the bedrock of...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Developers of concurrent software need cost-effective analysis techniques to acquire confidence in t...
A fundamental problem in the analysis of parallel programs is to determine when two statements in a ...
Concurrency analysis is a static analysis technique that determines whether two statements or operat...
: Many coarse-grained, explicitly parallel programs execute in phases delimited by barriers to prese...
Parallel programming is an intellectually demanding task. One of the most difficult challenges in th...
Concurrent programs are pervasive owing to the increasing adoption of multi-core systems across the ...
226 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1993.Explicit parallelism not only...
In this paper we present a new framework for analysis and optimization of shared memory parallel pro...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
In recent years, manufacturers of processors are focusing on parallel architectures in order to incr...
If two parallel threads access the same location and at least one of them performs a write, a race e...
Many parallel programs are written in SPMD style, i.e. by running the same sequential program on all...
A data race or access anomaly is a bug in parallel programs, occurring when two parallel processes a...
Concurrency is an indispensable programming paradigm and multi-threaded programs form the bedrock of...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Developers of concurrent software need cost-effective analysis techniques to acquire confidence in t...
A fundamental problem in the analysis of parallel programs is to determine when two statements in a ...
Concurrency analysis is a static analysis technique that determines whether two statements or operat...
: Many coarse-grained, explicitly parallel programs execute in phases delimited by barriers to prese...
Parallel programming is an intellectually demanding task. One of the most difficult challenges in th...
Concurrent programs are pervasive owing to the increasing adoption of multi-core systems across the ...
226 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1993.Explicit parallelism not only...
In this paper we present a new framework for analysis and optimization of shared memory parallel pro...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
In recent years, manufacturers of processors are focusing on parallel architectures in order to incr...
If two parallel threads access the same location and at least one of them performs a write, a race e...
Many parallel programs are written in SPMD style, i.e. by running the same sequential program on all...
A data race or access anomaly is a bug in parallel programs, occurring when two parallel processes a...
Concurrency is an indispensable programming paradigm and multi-threaded programs form the bedrock of...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Developers of concurrent software need cost-effective analysis techniques to acquire confidence in t...