Title
Sandbox Prefetching: Safe run-time evaluation of aggressive prefetchers
Abstract
Memory latency is a major factor in limiting CPU performance, and prefetching is a well-known method for hiding memory latency. Overly aggressive prefetching can waste scarce resources such as memory bandwidth and cache capacity, limiting or even hurting performance. It is therefore important to employ prefetching mechanisms that use these resources prudently, while still prefetching required data in a timely manner. In this work, we propose a new mechanism to determine at run-time the appropriate prefetching mechanism for the currently executing program, called Sandbox Prefetching. Sandbox Prefetching evaluates simple, aggressive offset prefetchers at run-time by adding the prefetch address to a Bloom filter, rather than actually fetching the data into the cache. Subsequent cache accesses are tested against the contents of the Bloom filter to see if the aggressive prefetcher under evaluation could have accurately prefetched the data, while simultaneously testing for the existence of prefetchable streams. Real prefetches are performed when the accuracy of evaluated prefetchers exceeds a threshold. This method combines the ideas of global pattern confirmation and immediate prefetching action to achieve high performance. Sandbox Prefetching improves performance across the tested workloads by 47.6% compared to not using any prefetching, and by 18.7% compared to the Feedback Directed Prefetching technique. Performance is also improved by 1.4% compared to the Access Map Pattern Matching Prefetcher, while incurring considerably less logic and storage overheads.
Year
DOI
Venue
2014
10.1109/HPCA.2014.6835971
High Performance Computer Architecture
Keywords
Field
DocType
data structures,storage management,Bloom filter,CPU performance,access map pattern matching prefetcher,cache capacity,central processing unit,feedback directed prefetching technique,logic overhead,memory bandwidth,memory latency,prefetching mechanisms,sandbox prefetching,storage overhead
Sandbox (computer security),Bloom filter,Computer performance,Memory bandwidth,Computer science,Cache,Parallel computing,Real-time computing,Bandwidth (signal processing),Instruction prefetch,Operating system,CAS latency
Conference
ISSN
Citations 
PageRank 
1530-0897
30
0.85
References 
Authors
14
9
Name
Order
Citations
PageRank
Seth H. Pugsley11936.84
Zeshan Chishti272334.65
Chris Wilkerson3157561.73
Peng-fei Chuang4300.85
Robert L. Scott5300.85
A. Jaleel6142670.43
Shih-Lien Lu795867.34
Kingsum Chow812610.23
Rajeev Balasubramonian92302116.79