MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  OPTIMIZING PARALLEL PROGRAMS WITH DYNAMIC DATA STRUCTURES

Download:
Download as a PDF | Download as a PS
by Yingchun Zhu
http://www.sable.mcgill.ca/~hendren/ftp/ying/thesis.ps.gz
Add To MetaCart

Abstract:

Distributed memory parallel architectures support a memory model where some memory accesses are local, and thus inexpensive, while other memory accesses are remote, and potentially quite expensive. In order to achieve efficiency on such architectures, we need to reduce remote accesses. This is particularly challenging for applications that use dynamic data structures. In this thesis, I present two compiler techniques to reduce the overhead of remote memory accesses for dynamic data structure based applications: locality techniques and communication optimizations. Locality techniques include a static locality analysis, which statically estimates when an indirect reference via a pointer can be safely assumed to be a local access, and dynamic locality checks, which consists of runtime tests to identify local accesses. Communication techniques include: 1) code movement to issue remote reads earlier and writes later; 2) code transformations to replace repeated/redundant remote accesses with one access; and 3) transformations to block or pipeline a group of remote requests together. Both locality and communication

Citations

329 Context-sensitive interprocedural points-to analysis in the presence of function pointers – Enami, Ghiya, et al. - 1994
152 Is it a Tree, a DAG, or a Cyclic Graph? A shape analysis for heap-directed pointers in C – Ghiya, Hendren - 1996
138 Communication Optimization and Code Generation for Distributed Memory – Amarasinghe, Lam - 1993
82 Putting pointer analysis to work – Ghiya, Hendren - 1998
81 Software Caching and Computation Migration in Olden – Carlisle, Rogers - 1995
52 Olden: Parallelizing programs with dynamic data structures on distributed-memory machines – CARLISLE - 1996
45 Global communication analysis and optimization – Chakrabarti, Gupta, et al. - 1996
40 Taming Control Flow: A Structured Approach to Eliminating GOTO Statements – Erosa, Hendren - 1994
30 Interprocedural partial redundancy elimination and its application to distributed memory compilation – Agrawal, Saltz, et al. - 1995
28 Latency hiding in message-passing architectures – Bruening, Giloi, et al.
26 Synchronization transformations for paral-lel computing – Diniz, Rinard - 1997
6 Connection Analaysis: A practical interprocedural heap analysis for C – Ghiya, Hendren - 1996
1 Supporting shared variables and atomic functions in the earth-c language. Master's thesis – Ghobrial - 1997