Loading [MathJax]/extensions/MathMenu.js
Temporal Approximate Function Memoization | IEEE Journals & Magazine | IEEE Xplore

Temporal Approximate Function Memoization


Abstract:

Improving the performance of applications is a core target of computer systems research and has led to the creation of various techniques. Among them is function memoizat...Show More

Abstract:

Improving the performance of applications is a core target of computer systems research and has led to the creation of various techniques. Among them is function memoization, an intuitive technique that, unfortunately, failed to live up to its promised potential. Traditional function memoization falls short mainly because it is input-based, meaning the system needs to pattern-match the current invocations inputs with previously seen ones to decide which memoized output value to return. This is often computationally intensive and only suitable for a limited set of functions. However, function calls often exhibit temporal value locality on their output. We capitalize on this observation to create the first output-based function memoization technique. We demonstrate that compiler-directed output-based memoization reduces energy and runtime by 50 to 75 percent (2-4x speedup) at the cost of a relatively small degradation of the applications output quality.
Published in: IEEE Micro ( Volume: 38, Issue: 4, Jul./Aug. 2018)
Page(s): 60 - 70
Date of Publication: 09 August 2018

ISSN Information:


Contact IEEE to Subscribe

References

References is not available for this document.