DocumentCode
3375857
Title
Data relocation and prefetching for programs with large data sets
Author
Yamada, Yoji ; Gyllenhall, John ; Haab, Grant ; Hwu, Wen-Mei
Author_Institution
Center for Reliable & High Performance Comput., Illinois Univ., Urbana, IL, USA
fYear
1994
fDate
30 Nov.-2 Dec. 1994
Firstpage
118
Lastpage
127
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, non-unit 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 else 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.
Keywords
data structures; industrial property; associativity; data caches; data copying; data prefetching; data relocation; large data sets; memory reference patterns; nested loop structures; software prefetching; Application software; Costs; Delay; Distributed computing; Hardware; Machinery; Permission; Prefetching; Software performance;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 1994. MICRO-27. Proceedings of the 27th Annual International Symposium on
ISSN
1072-4451
Print_ISBN
0-89791-707-3
Type
conf
DOI
10.1109/MICRO.1994.717449
Filename
717449
Link To Document