ACM Home Page
Please provide us with feedback. Feedback
An improved replacement strategy for function caching
Full text PdfPdf (818 KB)
Source Conference on LISP and Functional Programming archive
Proceedings of the 1988 ACM conference on LISP and functional programming table of contents
Snowbird, Utah, United States
Pages: 269 - 276  
Year of Publication: 1988
ISBN:0-89791-273-X
Author
William Pugh  Cornell University
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGART: ACM Special Interest Group on Artificial Intelligence
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 16,   Citation Count: 10
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/62678.62719
What is a DOI?

ABSTRACT

Function caching is the technique of remembering previous function calls and avoiding the cost of recomputing them. Function caching provides a simple way of implementing dynamic programming algorithms and can provide a facility for incremental computation. Previous discussions of function caching have generally relied on the user to purge items from the function cache or have proposed a strategy such as least-recently-used without any analysis of the appropriateness of that strategy. We describe a formal model that allows us to describe the potential of a function cache and use that model to develop a practical cache replacement strategy that performs substantially better than currently used strategies. Benchmarks show that in use in an incremental theorem prover, our caching strategy produces almost a factor of four improvement in running time over a system running without function caching and almost a factor of two improvement in running time over a system using a standard cache replacement strategy.


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.

 
All78
Coh79
FWW76
 
Hil76
J. Hilden, Elimination of recursive calls using a small table of 'randomly' selected function values, BIT, Vo116 no. 1, pp60-73 (1976)
 
Hug85
KS86
 
Mic68
Donald Michie, "Memo" Functions and .Machine Learning, Nature, No. 218, pp19-22 (April 1968)
 
MC85
Jack Mostow and Donald Cohen, Automating Program Speedup by Deciding What to Cache, Proc. of the Ninth International Joint Conference on Artificial Intelligence, 18-23 August, 1985, Vol. 1, pp 165-172.
 
Pug88
RT84
Rob87

CITED BY  10
 
 
 


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