A Hybrid Approach to Proving Memory Reference Monotonicity

Cosmin E. Oancea, Lawrence Rauchwerger

Research output: Chapter in Book/Report/Conference proceedingChapter

13 Scopus citations

Abstract

Array references indexed by non-linear expressions or subscript arrays represent a major obstacle to compiler analysis and to automatic parallelization. Most previous proposed solutions either enhance the static analysis repertoire to recognize more patterns, to infer array-value properties, and to refine the mathematical support, or apply expensive run time analysis of memory reference traces to disambiguate these accesses. This paper presents an automated solution based on static construction of access summaries, in which the reference non-linearity problem can be solved for a large number of reference patterns by extracting arbitrarily-shaped predicates that can (in)validate the reference monotonicity property and thus (dis)prove loop independence. Experiments on six benchmarks show that our general technique for dynamic validation of the monotonicity property can cover a large class of codes, incurs minimal run-time overhead and obtains good speedups. © 2013 Springer-Verlag.
Original languageEnglish (US)
Title of host publicationLanguages and Compilers for Parallel Computing
PublisherSpringer Nature
Pages61-75
Number of pages15
ISBN (Print)9783642360350
DOIs
StatePublished - 2013
Externally publishedYes

Fingerprint

Dive into the research topics of 'A Hybrid Approach to Proving Memory Reference Monotonicity'. Together they form a unique fingerprint.

Cite this