ACM Home Page
Please provide us with feedback. Feedback
Software caching vs. prefetching
Full text PdfPdf (151 KB)
Source ACM SIGPLAN Notices archive
Volume 38 ,  Issue 2 supplement  (February 2003) table of contents
MSP 2002 and ISMM 2002
SESSION: Implemention Techniques table of contents
Pages: 157 - 162  
Year of Publication: 2003
ISSN:0362-1340
Also published in ...
Author
Aneesh Aggarwal  University of Maryland, College Park, MD
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 50,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/773039.512450
What is a DOI?

ABSTRACT

The performance gap between memory subsystem and high-performance processors is ever-increasing. Prefetching is one method to bridge this performance gap. Prefetching has been proposed for array-based and pointer applications, typically using software-based techniques with the help of the compiler. Prefetching suffers from certain disadvantages such as an increase in memory traffic, an increase in the number of executed instructions, and an increase in memory requirement for some cases.In this paper, we investigate the technique of software caching for applications that perform searches or sorted insertions. For data structures larger than the processor data cache, such a search or sorted insert may result in multiple cache misses before the correct value is found. In a software caching approach, a small software buffer is maintained that records the most recently added values (these values are the ones that are later searched) along with their addresses and is consulted during a search or an insert. In this paper, we present results of our initial experiments. We found that for applications involving a search, software caching performs as high as 30% better than the original application. Also, this technique executes upto 14% less instructions and the number of cache accesses decrease by around upto 18%. We also compared this technique against software prefetching and found that in some cases, the performance improvement was as high as 40%. This technique also has an added advantage of using less memory space than prefetching (all the improvements were obtained for very small software caches). These initial results encourage a more in-depth study of this technique.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
D. Burger and T. Austin, "The simplescalar tool set," Technical report, Computer Sciences Department, University of Wisconsin, June, 1997.
3
4
5
6
 
7
 
8
M. Karlsson, F. Dahlgren and P. Stenstrom, "A Prefetching Technique for Irregular Accesses to Linked Data Structures", Proc. of HPCA, Jan. 2000.
9
10
11
12
13
14



Peer to Peer - Readers of this Article have also read: