Publication | Open Access
Compiler optimizations for improving data locality
289
Citations
22
References
1994
Year
Unknown Venue
Cluster ComputingEngineeringCompiler TechnologyComputer ArchitectureSoftware EngineeringSoftware AnalysisProcessor SpeedCompilersParallel ComputingParallelizing CompilerCompiler SupportComputer EngineeringComputer ScienceProgram OptimizationOptimizing CompilerData LocalityCache MemoriesProgram AnalysisParallel ProgrammingSystem SoftwareMemory Speed
In the past decade, processor speed has become significantly faster than memory speed. Small, fast cache memories are designed to overcome this discrepancy, but they are only effective when programs exhibit data locality. In this paper, we present compiler optimizations to improve data locality based on a simple yet accurate cost model. The model computes both temporal and spatial reuse of cache lines to find desirable loop organizations. The cost model drives the application of compound transformations consisting of loop permutation, loop fusion, loop distribution, and loop reversal. We demonstrate that these program transformations are useful for optimizing many programs.
| Year | Citations | |
|---|---|---|
Page 1
Page 1