In this paper we present a new framework for analysis and optimization of shared memory parallel programs. Our framework is based on two key concepts: (1) concurrency relation and (2) isolation semantics. Two statements are said to be concurrent if there is an execution in which two threads can execute the two statements simultaneously. Isolation semantics essentially treats critical sections as being isolated or atomic. The main contributions of this paper are as follows: • We present a simple algorithm for computing concurrency relation among two or more statements in a parallel program that includes cobegin/coend, parallel for, barrier, post/wait, and critical sections. • We propose a new framework for solving data flow problems by reify...
This paper proposes a modal extension of Separation Logic [8, 11] for reasoning about data-parallel ...
Parallel programming is an intellectually demanding task. One of the most difficult challenges in th...
The goal of this work was to examine existing shared memory parallel programming models, figure out ...
A fundamental problem in the analysis of parallel programs is to determine when two statements in a ...
The increasing attention toward distributed shared memory systems attests to the fact that programme...
226 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1993.Explicit parallelism not only...
Most current compiler analysis techniques are unable to cope with the semantics introduced by explic...
Concurrency analysis is a static analysis technique that determines whether two statements or operat...
Separation logic is a recent approach to the analysis of pointer programs in which resource separati...
Abstract. Separation Logic is a recent development in programming logic which has been applied by Pe...
: Many coarse-grained, explicitly parallel programs execute in phases delimited by barriers to prese...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Increased programmability for concurrent applications in distributed systems requires automatic supp...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Concurrent separation logic is a development of Hoare logic adapted to deal with pointers and concur...
This paper proposes a modal extension of Separation Logic [8, 11] for reasoning about data-parallel ...
Parallel programming is an intellectually demanding task. One of the most difficult challenges in th...
The goal of this work was to examine existing shared memory parallel programming models, figure out ...
A fundamental problem in the analysis of parallel programs is to determine when two statements in a ...
The increasing attention toward distributed shared memory systems attests to the fact that programme...
226 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1993.Explicit parallelism not only...
Most current compiler analysis techniques are unable to cope with the semantics introduced by explic...
Concurrency analysis is a static analysis technique that determines whether two statements or operat...
Separation logic is a recent approach to the analysis of pointer programs in which resource separati...
Abstract. Separation Logic is a recent development in programming logic which has been applied by Pe...
: Many coarse-grained, explicitly parallel programs execute in phases delimited by barriers to prese...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Increased programmability for concurrent applications in distributed systems requires automatic supp...
Information about which pairs of statements in a concurrent program can execute in parallel is impor...
Concurrent separation logic is a development of Hoare logic adapted to deal with pointers and concur...
This paper proposes a modal extension of Separation Logic [8, 11] for reasoning about data-parallel ...
Parallel programming is an intellectually demanding task. One of the most difficult challenges in th...
The goal of this work was to examine existing shared memory parallel programming models, figure out ...