• DocumentCode
    2814417
  • Title

    The store-load address table and speculative register promotion

  • Author

    Postiff, Matthew ; Greene, David ; Mudge, Trevor

  • Author_Institution
    Adv. Comput. Archit. Lab., Michigan Univ., Ann Arbor, MI, USA
  • fYear
    2000
  • fDate
    2000
  • Firstpage
    235
  • Lastpage
    244
  • Abstract
    Register promotion is an optimization that allocates a value to a register for a region of its lifetime where it is provably not aliased. Conventional compiler analysis cannot always prove that a value is free of aliases, and thus promotion cannot always be applied. This paper proposes a new hardware structure, the store-load address table (SLAT), which watches both load and store instructions to see if they conflict with entries loaded into the SLAT by explicit software mapping instructions. One use of the SLAT is to allow values to be promoted to registers when they cannot be proven to be promotable by conventional compiler analysis. We call this new optimization speculative register promotion. Using this technique, a value can be promoted to a register and aliased loads and stores to that value´s home memory location are caught and the proper fixup is performed. This paper will: a) describe the SLAT hardware and software; b) demonstrate that conventional register promotion is often inhibited by static compiler analysis; c) describe the speculative register promotion optimization; and d) quantify the performance increases possible when a SLAT is used. Our results show that for certain benchmarks, up to 35% of loads and 15% of stores can potentially be eliminated by using the SLAT
  • Keywords
    computer architecture; optimising compilers; performance evaluation; benchmarks; compiler analysis; explicit software mapping instructions; hardware structure; optimization; speculative register promotion; store-load address table; Computer architecture; Hardware; Laboratories; Optimizing compilers; Performance gain; Program processors; Registers; Watches;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Microarchitecture, 2000. MICRO-33. Proceedings. 33rd Annual IEEE/ACM International Symposium on
  • Conference_Location
    Monterey, CA
  • ISSN
    1072-4451
  • Print_ISBN
    0-7695-0924-X
  • Type

    conf

  • DOI
    10.1109/MICRO.2000.898074
  • Filename
    898074