Cherry: checkpointed early resource recycling in out-of-order microprocessors

  • Authors:
  • José F. Martínez;Jose Renau;Michael C. Huang;Milos Prvulovic;Josep Torrellas

  • Affiliations:
  • Cornell University;University of Illinois at Urbana-Champaign;University of Rochester;University of Illinois at Urbana-Champaign;University of Illinois at Urbana-Champaign

  • Venue:
  • Proceedings of the 35th annual ACM/IEEE international symposium on Microarchitecture
  • Year:
  • 2002

Quantified Score

Hi-index 0.01

Visualization

Abstract

This paper presents CHeckpointed Early Resource RecYcling (Cherry), a hybrid mode of execution based on ROB and checkpointing that decouples resource recycling and instruction retirement. Resources are recycled early, resulting in a more efficient utilization. Cherry relies on state checkpointing and rollback to service exceptions for instructions whose resources have been recycled. Cherry leverages the ROB to (1) not require in-order execution as a fallback mechanism, (2) allow memory replay traps and branch mispredictions without rolling back to the Cherry checkpoint, and (3) quickly fall back to conventional out-of-order execution without rolling back to the checkpoint or flushing the pipeline.We present a Cherry implementation with early recycling at three different points of the execution engine: the load queue, the store queue, and the register file. We report average speedups of 1.06 and 1.26 in SPECint and SPECfp applications, respectively, relative to an aggressive conventional architecture. We also describe how Cherry and speculative multithreading can be combined and complement each other.