This paper introduces an analysis technique, commutativity analysis, for automatically parallelizing computations that manipulate dynamic, pointer-based data structures. Commutativity analysis views computations as composed of operations on objects. It then analyzes the program to discover when operations commute, i.e. leave the objects in the same state regardless of the order in which they execute. If all of the operations required to perform a given computation commute,the compiler can automatically generate parallel code. Commutativity analysis eliminates many of the limitations that have prevented existing compilers, which use data dependence analysis, from successfully parallelizing pointer-based applications. It enables compilers to ...
Even though impressive progress has been made in the area of optimizing and parallelizing array-base...
In this paper, we present a novel method for parallelizing imperative programs in the presence of dy...
Abstract—We propose a cooperation between the programmer, the compiler and the runtime system to ide...
. This paper presents the semantic foundations of commutativity analysis, an analysis technique for ...
Pointer analysis has been an active research field in recent years. Combining pointer analysis and d...
226 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1993.Explicit parallelism not only...
. Two operations commute if they generate the same result regardless of the order in which they exec...
The need for suitable software abstractions is proportional to the complexity of the underlying comp...
. Two operations commute if the result of their execution is independent of the order in which they ...
Pointer analysis is essential for optimizing and parallelizing compilers. It examines pointer as-sig...
Irregular applications, which manipulate complex, pointer-based data structures, are a promising tar...
We present a new approach to check for Commutativity in concurrent programs from their run-time stat...
Compiling for parallelism is a longstanding topic of compiler research. This book describes the fund...
Even though impressive progress has been made in the area of parallelizing scientific programs with ...
This paper presents a technique for dependence analysis on programs with pointers or dynamic recursi...
Even though impressive progress has been made in the area of optimizing and parallelizing array-base...
In this paper, we present a novel method for parallelizing imperative programs in the presence of dy...
Abstract—We propose a cooperation between the programmer, the compiler and the runtime system to ide...
. This paper presents the semantic foundations of commutativity analysis, an analysis technique for ...
Pointer analysis has been an active research field in recent years. Combining pointer analysis and d...
226 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1993.Explicit parallelism not only...
. Two operations commute if they generate the same result regardless of the order in which they exec...
The need for suitable software abstractions is proportional to the complexity of the underlying comp...
. Two operations commute if the result of their execution is independent of the order in which they ...
Pointer analysis is essential for optimizing and parallelizing compilers. It examines pointer as-sig...
Irregular applications, which manipulate complex, pointer-based data structures, are a promising tar...
We present a new approach to check for Commutativity in concurrent programs from their run-time stat...
Compiling for parallelism is a longstanding topic of compiler research. This book describes the fund...
Even though impressive progress has been made in the area of parallelizing scientific programs with ...
This paper presents a technique for dependence analysis on programs with pointers or dynamic recursi...
Even though impressive progress has been made in the area of optimizing and parallelizing array-base...
In this paper, we present a novel method for parallelizing imperative programs in the presence of dy...
Abstract—We propose a cooperation between the programmer, the compiler and the runtime system to ide...