Run-time Spatial Locality Detection and Optimization (PostScript version, PDF version)
Teresa L. Johnson, Matthew C. Merten, and Wen-mei W. Hwu,
IMPACT Technical Report, IMPACT-97-02, University of Illinois, Urbana, IL 1997

As the disparity between processor and main memory performance grows, the number of execution cycles spent waiting for memory accesses to complete also increases. As a result, latency hiding techniques are critical for improved application performance on future processors. In this paper we examine the spatial locality characteristics of several applications, and show that spatial locality varies substantially across and within applications. We then present a microarchitecture scheme which detects and adapts to this varying spatial locality, dynamically adjusting the amount of data fetched on a cache miss. The Spatial Locality Detection Table, introduced in this paper, facilitates the detection of spatial locality across adjacent small cached blocks. Results from detailed simulations of several integer programs show significant speedups. The improvements are due to the reduction of conflict %misses and capacity misses by utilizing small blocks and small fetch sizes when spatial locality is absent, and the prefetching effect of large fetch sizes when spatial locality exists.


[ IMPACT Main Page | Team Members | Publications | Software | FAQ ]