• DocumentCode
    1478294
  • Title

    Leveraging Register Windows to Reduce Physical Registers to the Bare Minimum

  • Author

    Quiñones, Eduardo ; Parcerisa, Joan-Manuel ; González, Antonio

  • Author_Institution
    Barcelona Supercomput. Center, Barcelona, Spain
  • Volume
    59
  • Issue
    12
  • fYear
    2010
  • Firstpage
    1598
  • Lastpage
    1610
  • Abstract
    Register window is an architectural technique that reduces memory operations required to save and restore registers across procedure calls. Its effectiveness depends on the size of the register file. Such register requirements are normally increased for out-of-order execution because it requires registers for the in-flight instructions, in addition to the architectural ones. However, a large register file has an important cost in terms of area and power and may even affect the cycle time. In this paper, we propose a software/hardware early register release technique that leverage register windows to drastically reduce the register requirements, and hence, reduce the register file cost. Contrary to the common belief that out-of-order processors with register windows would need a large physical register file, this paper shows that the physical register file size may be reduced to the bare minimum by using this novel microarchitecture. Moreover, our proposal has much lower hardware complexity than previous approaches, and requires minimal changes to a conventional register window scheme. Performance studies show that the proposed technique can reduce the number of physical registers to the number of logical registers plus one (minimum number to guarantee forward progress) and still achieve almost the same performance as an unbounded register file.
  • Keywords
    file organisation; optimising compilers; remote procedure calls; software architecture; architectural technique; bare minimum; hardware complexity; in-flight instructions; leveraging register windows; logical registers; memory operations; microarchitecture; out-of-order execution; out-of-order processors; physical registers; procedure calls; register file cost; register requirements; register window scheme; software/hardware early register release technique; unbounded register file; Computer architecture; Costs; Forward contracts; Hardware; Microarchitecture; Out of order; Proposals; Registers; Runtime; Tin; Register windows; early register release.; physical register file;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2010.85
  • Filename
    5453344