Register Packing: Exploiting Narrow-Width Operands for Reducing Register File Pressure
- 13 December 2005
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 304-315
- https://doi.org/10.1109/micro.2004.29
Abstract
A large percentage of computed results have fewer significant bits compared to the full width of a register. We exploit this fact to pack multiple results into a single physical register to reduce the pressure on the register file in a superscalar processor. Two schemes for dynamically packing multiple "narrow-width" results into partitions within a single register are evaluated. The first scheme is conservative and allocates a full-width register for a computed result. If the computed result turns out to be narrow, the result is reallocated to partitions within a common register, freeing up the full-width register. The second scheme allocates register partitions based on a prediction of the width of the result and reallocates register partitions when the actual result width is higher than what was predicted. If the actual width is narrower than what was predicted, allocated partitions are freed up. A detailed evaluation of our schemes show that average IPC gains of up to 15% can be realized across the SPEC 2000 benchmarks on a somewhat register-constrained datapath.Keywords
This publication has 32 references indexed in Scilit:
- Loose loops sink chipsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2004
- Bitwidth aware global register allocationPublished by Association for Computing Machinery (ACM) ,2003
- Reducing register ports using delayed write-back queues and operand pre-fetchPublished by Association for Computing Machinery (ACM) ,2003
- In-line interrupt handling for software-managed TLBsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A system-level energy minimization approach using datapath width optimizationPublished by Association for Computing Machinery (ACM) ,2001
- BitValue Inference: Detecting and Exploiting Narrow Bitwidth ComputationsLecture Notes in Computer Science, 2000
- Exploiting superword level parallelism with multimedia instruction setsPublished by Association for Computing Machinery (ACM) ,2000
- The Alpha 21264 microprocessorIEEE Micro, 1999
- The SimpleScalar tool set, version 2.0ACM SIGARCH Computer Architecture News, 1997
- The Mips R10000 superscalar microprocessorIEEE Micro, 1996