DocumentCode
3134996
Title
Pointer cache assisted prefetching
Author
Collins, Jamison ; Sair, Suleyman ; Calder, Brad ; Tullsen, Dean M.
Author_Institution
Dept. of Comput. Sci. & Eng., California Univ., San Diego, La Jolla, CA, USA
fYear
2002
fDate
2002
Firstpage
62
Lastpage
73
Abstract
Data prefetching effectively reduces the negative effects of long load latencies on the performance of modern processors. Hardware prefetchers employ hardware structures to predict future memory addresses based on previous patterns. Thread-based prefetchers use portions of the actual program code to determine future load addresses for prefetching. This paper proposes the use of a pointer cache, which tracks pointer transitions, to aid prefetching. The pointer cache provides, for a given pointer´s effective address, the base address of the object pointed to by the pointer. We examine using the pointer cache in a wide issue superscalar processor as a value predictor and to aid prefetching when a chain of pointers is being traversed. When a load misses in the L1 cache, but hits in the pointer cache, the first two cache blocks of the pointed to object are prefetched. In addition, the load´s dependencies are broken by using the pointer cache hit as a value prediction. We also examine using the pointer cache to allow speculative precomputation to run farther ahead of the main thread of execution than in prior studies. Previously proposed thread-based prefetchers are limited in how far they can run ahead of the main thread when traversing a chain of recurrent dependent loads. When combined with the pointer cache, a speculative thread can make better progress ahead of the main thread, rapidly traversing data structures in the face of cache misses caused by pointer transitions.
Keywords
computer architecture; data structures; multi-threading; performance evaluation; storage management; data structures; long load latencies; performance; pointer cache; pointers; prefetching; thread; Accuracy; Computer science; Data engineering; Data structures; Delay; Electronic switching systems; Hardware; History; Prefetching; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 2002. (MICRO-35). Proceedings. 35th Annual IEEE/ACM International Symposium on
ISSN
1072-4451
Print_ISBN
0-7695-1859-1
Type
conf
DOI
10.1109/MICRO.2002.1176239
Filename
1176239
Link To Document