Publication | Closed Access
Improving locality using loop and data transformations in an integrated framework
55
Citations
16
References
2002
Year
Unknown Venue
Cluster ComputingEngineeringCache SimulatorCompiler TechnologyComputer ArchitectureSoftware AnalysisCache PerformanceData ScienceHigh-performance ArchitectureManagementData IntegrationParallel ComputingCompilersData ManagementHigh-performance Data AnalyticsMassively-parallel ComputingIntegrated FrameworkData OptimizationVery Large DatabaseParallelizing CompilerData TransformationsComputer EngineeringComputer ScienceLoop TransformationsData-intensive ComputingProgram AnalysisParallel Performance EvaluationParallel ProgrammingSystem SoftwareMassive Data ProcessingData Modeling
This paper presents a new integrated compiler framework for improving the cache performance of scientific applications. In addition to applying loop transformations, the method includes data layout optimizations, i.e., those that change the memory layouts of data structures (arrays in this case). A key characteristic of this approach is that loop transformations are used to improve temporal locality while data layout optimizations are used to improve spatial locality. This optimization framework was used with sixteen loop nests from several benchmarks and math libraries, and the performance was measured using a cache simulator in addition to using a single node of the SGI Origin 2000 distributed-shared-memory machine for measuring actual execution times. The results demonstrate that this approach is very effective in improving locality and outperforms current solutions that use either loop or data transformations alone. We expect that our solution will also enable better register usage due to increased temporal locality in the innermost loop, and that it will help in eliminating false-sharing on multiprocessors due to exploiting spatial locality in the innermost loop.
| Year | Citations | |
|---|---|---|
Page 1
Page 1