Combining Measures for Temporal and Spatial Locality
Numerical software for sequential or parallel machines with memory hierarchies can benefit from locality optimizations which are usually achieved by program restructuring or program transformations. The choice of the program version that achieves the best performance is usually complex as many dependencies have to be taken into account. Thus program-based locality measures have been introduced to give programmers a guideline if a performance gain can be expected from a program restructuring. The novel contribution of this paper is the extension of these locality measures to support spatial locality. These extended measures are applied to two applications from scientific computing and the obtained prediction is compared to benchmark results.
KeywordsSpatial Locality Memory Access Locality Measure Program Version Memory Hierarchy
Unable to display preview. Download preview PDF.
- 1.Allen, R., Kennedy, K.: Optimizing Compilers for Modern Architectures. Academic Press, London (2002)Google Scholar
- 3.Hairer, E., Nørsett, S., Wanner, G.: Solving Ordinary Differential Equations, 2nd edn., vol. 1. Springer, Heidelberg (2002)Google Scholar
- 5.Hairer, E., Wanner, G.: Solving Ordinary Differential Equations, 2nd edn., vol. 2. Springer, Heidelberg (2004)Google Scholar
- 6.Ghosh, S., Martonosi, M., Malik, S.: Cache miss equations: An analytical representation of cache misses. In: Int. Conf. on Supercomputing, pp. 317–324 (1997)Google Scholar