“Look it up" or "do the math": an energy, area, and timing analysis of instruction reuse and memoization

  • Authors:
  • Daniel Citron;Dror G. Feitelson

  • Affiliations:
  • IBM Haifa Labs, Haifa University Campus, Haifa, Israel;School of Computer Science and Engineering, The Hebrew University of Jerusalem, Jerusalem, Israel

  • Venue:
  • PACS'03 Proceedings of the Third international conference on Power - Aware Computer Systems
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

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.