@inproceedings{8e434caf17c640428b786625f1c6ff52,
title = "Computational caches",
abstract = "Caching is a well-known technique for speeding up computation. We cache data from file systems and databases; we cache dynamically generated code blocks; we cache page translations in TLBs. We propose to cache the act of computation, so that we can apply it later and in different contexts. We use a state-space model of computation to support such caching, involving two interrelated parts: speculatively memoized predicted/resultant state pairs that we use to accelerate sequential computation, and trained probabilistic models that we use to generate predicted states from which to speculatively execute. The key techniques that make this approach feasible are designing probabilistic models that automatically focus on regions of program execution state space in which prediction is tractable and identifying state space equivalence classes so that predictions need not be exact.",
keywords = "Performance, Theory",
author = "Amos Waterland and Elaine Angelino and Cubuk, {Ekin D.} and Efthimios Kaxiras and Adams, {Ryan P.} and Jonathan Appavoo and Margo Seltzer",
year = "2013",
doi = "10.1145/2485732.2485749",
language = "English (US)",
isbn = "9781450321167",
series = "ACM International Conference Proceeding Series",
booktitle = "Proceedings of the 6th International Systems and Storage Conference, SYSTOR 2013",
note = "6th Annual International Systems and Storage Conference, SYSTOR 2013 ; Conference date: 30-06-2013 Through 02-07-2013",
}