ARRAY DATA-FLOW ANALYSIS FOR LOAD-STORE OPTIMIZATIONS IN FINE-GRAIN ARCHITECTURES

Authors
Citation
R. Bodik et R. Gupta, ARRAY DATA-FLOW ANALYSIS FOR LOAD-STORE OPTIMIZATIONS IN FINE-GRAIN ARCHITECTURES, International journal of parallel programming, 24(6), 1996, pp. 481-512
Citations number
21
Categorie Soggetti
Computer Sciences","Computer Science Theory & Methods
ISSN journal
08857458
Volume
24
Issue
6
Year of publication
1996
Pages
481 - 512
Database
ISI
SICI code
0885-7458(1996)24:6<481:ADAFLO>2.0.ZU;2-6
Abstract
The performence of scientific programs on modern processors can be sig nificantly degraded by memory references that frequently arise due to load and store operations associated with array references. We have de veloped techniques for optimally allocating registers to array element s whose values are repeatedly referenced over one or more loop iterati ons. The resulting placement of loads and stores is optimal in that nu mber of loads and stores encoutered along each path through the loop i s minimal for the given program branching structure, To place load, st ore, and register-to-register shift operations without introducing ful ly/partially redundant and dead memory operations, a detailed value fl ow analysis of array references is required. We present an analysis fr amework to efficiently solve various data flow problems required by ar ray load-store optimizations. The framework determines the collective behavior of recurrent references spread over multiple loop iterations. We also demonstrate how our algorithms can be adapted for various fin e-grain architectures.