arrow
Return

Detecting loop-carried dependences in programs with dynamic data structures

delete2007-01-01
delete4
PRE
AI
Á
Ángeles Navarro *
F
Francisco Corbera
A
Adrian Tineo
R
Rafael Asenjo
DOI:10.1016/j.jpdc.2006.08.007delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
The problem of data dependences detection in codes based on dynamic data structures, is crucial to various compiler optimizations. The approach presented in this paper focuses on detecting data dependences induced by heap-directed pointers on loops that access dynamic data structures. Knowledge about the shape of the data structure accessible from a heap-directed pointer provides critical information for disambiguating heap accesses originating from it. The new approach is based on a previously developed shape analysis that maintains topological information of the connections among the different nodes (memory locations) in the data structure. As a novelty, our approach carries out abstract interpretation of the statements being analyzed, annotating memory locations with read/write information. This information will be later used in a very accurate data dependence test which we describe in this paper. We also discuss its application to several different benchmarks. (C) 2006 Elsevier Inc. All rights reserved.
Keywords:
dynamic data structures
compiler optimizations
data dependence test
shape analysis
abstract interpretation
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Journal of Parallel and Distributed Computing cover
Journal of Parallel and Distributed Computing
IF:
4
Papers:
3.8K
Citations:
4.8K

Organization

No organization information available