Delaying physical register allocation through virtual-physical registers

  • Authors:
  • Teresa Monreal;Antonio González;Mateo Valero;José González;Victor Viñals

  • Affiliations:
  • Departamento de Informática e Ing. de Sistemas, Centro Politécnico Superior - Univ. de Zaragoza;Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya;-;-;Departamento de Informática e Ing. de Sistemas, Centro Politécnico Superior - Univ. de Zaragoza

  • Venue:
  • Proceedings of the 32nd annual ACM/IEEE international symposium on Microarchitecture
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

Register file access time represents one of the critical delays of current microprocessors, and it is expected to become more critical as future processors increase the instruction window size and the issue width. This paper present a novel physical register management scheme that allows for a late allocation (at the end of execution) of registers. We show that it can provide significant savings in number of registers and thus, it can significantly shorter the register file access time. The approach is based on virtual-physical registers, which we presented in a previous work, extended with a new register allocation policy. This policy consists of an on-demand allocation in order to maximize the register usage, combined with a stealing mechanism that prevents older instruction from being delayed by younger ones. This shortens the average number of cycles that each physical register is allocated, and allows for an early execution of instructions since they can obtain a physical register for its destination earlier than with the conventional scheme. Early execution is especially beneficial for branches and memory operations, since the former can be resolved earlier and the latter can prefetch their data in advance.