Data relocation and prefetching for programs with large data sets

Yoji Yamada, John Gyllenhall, Grant Haab, Wen-Mei W Hwu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Numerical applications frequently contain nested loop structures that process large arrays of data. The execution of these loop structures often produces memory reference patterns that poorly utilize data caches. Limited associativity and cache capacity result in cache conflict misses. Also, nonunit stride access patterns can cause low utilization of cache lines. Data copying has been proposed and investigated in order to reduce cache conflict misses [1][2], but this technique has a high execution overhead since it performs the copy operations entirely in software. We propose a combined hardware and software technique called data relocation and prefetching which eliminates much of the overhead of data copying through the use of special hardware. Furthermore, by relocating the data while performing software prefetching, the overhead of copying the data can be reduced further. Experimental results for data relocation and prefetching are encouraging and show a large improvement in cache performance.

Original languageEnglish (US)
Title of host publicationProceedings of the 27th Annual International Symposium on Microarchitecture, MICRO 1994
PublisherIEEE Computer Society
Pages118-127
Number of pages10
ISBN (Electronic)0897917073
DOIs
StatePublished - Nov 30 1994
Event27th Annual International Symposium on Microarchitecture, MICRO 1994 - San Jose, United States
Duration: Nov 30 1994Dec 2 1994

Publication series

NameProceedings of the Annual International Symposium on Microarchitecture, MICRO
VolumePart F129425
ISSN (Print)1072-4451

Other

Other27th Annual International Symposium on Microarchitecture, MICRO 1994
CountryUnited States
CitySan Jose
Period11/30/9412/2/94

    Fingerprint

Keywords

  • Cache conflicts
  • Data copying
  • Data relocation
  • Program optimization
  • Software prefetching

ASJC Scopus subject areas

  • Hardware and Architecture

Cite this

Yamada, Y., Gyllenhall, J., Haab, G., & Hwu, W-M. W. (1994). Data relocation and prefetching for programs with large data sets. In Proceedings of the 27th Annual International Symposium on Microarchitecture, MICRO 1994 (pp. 118-127). (Proceedings of the Annual International Symposium on Microarchitecture, MICRO; Vol. Part F129425). IEEE Computer Society. https://doi.org/10.1145/192724.192740