"Look It Up" or "Do the Math": An energy, area, and timing analysis of instruction reuse and memoization

Daniel Citron*, Dror G. Feitelson

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

3 Scopus citations

Abstract

Instruction reuse and memoization exploit the fact that during a program run there are operations that execute more than once with the same operand values. By saving previous occurrences of instructions (operands and result) in dedicated, on-chip lookup tables, it is possible to avoid re-execution of these instructions. This has been shown to be efficient in a naive model that assumes single-cycle table lookup. We now extend the analysis to consider the energy, area, and timing overheads of maintaining such tables. We show that reuse opportunities abound in the SPEC CPU2000 benchmark suite, and that by judiciously selecting table configurations it is possible to exploit these opportunities with a minimal penalty. Energy consumption can be further reduced by employing confidence counters, which enable instructions that have a history of failed memoizations to be filtered out. We conclude by identifying those instructions that profit most from memoization, and the conditions under which it is beneficial.

Original languageEnglish
Pages (from-to)101-116
Number of pages16
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume3164
StatePublished - 2004

Keywords

  • Area
  • Energy
  • Lookup
  • Memoization
  • Reuse

Fingerprint

Dive into the research topics of '"Look It Up" or "Do the Math": An energy, area, and timing analysis of instruction reuse and memoization'. Together they form a unique fingerprint.

Cite this