Just-In-Time instruction delivery is a general method for saving energy in a microprocessor by dynamically limiting the number of in-flight instructions. The goal is to save energy by 1) fetching valid instructions no sooner than necessary, avoiding cycles stalled in the pipeline --especially the issue queue, and 2 ) reducing the number of fetches and subsequent processing of misspeculated instructions. A simple algorithm monitors performance and adjusts the maximum number of in-flight instructions at fairly long intervals, lOOK instructions in this study. The proposed JIT instruction delivery scheme provides the combined benefits of more targeted schemes proposed previously. With only a 3% performance degradation, energy savings in the fetch, decode pipe, and issue queue are lo%, 12%, and 40%, respectively.
JIT Instruction Delivery REF dynamically limits the number of "in-flight" instructions.
Saving energy with just in time instruction delivery