Parallelizing programs with recursive data structures
- Dept. of Computer Science, Cornell Univ., Ithaca, NY (US)
- Dept. of Information and Computer Science, Irvine, CA (US)
Interference estimation is a useful tool in developing parallel programs and is a key aspect of automatically parallelizing sequential programs. Interference analysis and disambiguation mechanisms for programs with simple data types and arrays have become a standard part of parallelizing and vectorizing compilers. However, efficient and implementable techniques for interference analysis in the presence of dynamic data structures have yet to be developed. In this paper the authors study the problem of estimating interference in an imperative language with dynamic data structures. They focus on developing efficient and implementable methods for recursive data structures. In particular, they present interference analysis tools and parallelization techniques for imperative programs that contain dynamically updatable trees and DAG's. The analysis methods are based on a regular-expression-like representation of the relationship between accessible nodes in the data structure. The authors have implemented our analysis and present some concrete examples that have been processed by their system.
- OSTI ID:
- 6445943
- Journal Information:
- IEEE Transactions on Parallel and Distributed Systems; (USA), Journal Name: IEEE Transactions on Parallel and Distributed Systems; (USA) Vol. 1:1; ISSN ITDSE; ISSN 1045-9219
- Country of Publication:
- United States
- Language:
- English
Similar Records
Analysis of program execution on a recursive stream-oriented data flow architecture
Analysis of program execution on a recursive stream-oriented data flow architecture