• DocumentCode
    1205690
  • Title

    An analysis of the performance impact of wrong-path memory references on out-of-order and runahead execution processors

  • Author

    Mutlu, Onur ; Kim, Hyesoon ; Armstrong, David N. ; Patt, Yale N.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Texas Univ., Austin, TX, USA
  • Volume
    54
  • Issue
    12
  • fYear
    2005
  • Firstpage
    1556
  • Lastpage
    1571
  • Abstract
    High-performance, out-of-order execution processors spend a significant portion of their execution time on the incorrect program path even though they employ aggressive branch prediction algorithms. Although memory references generated on the wrong path do not change the architectural state of the processor, they affect the arrangement of data in the memory hierarchy. This paper examines the effects of wrong-path memory references on processor performance. It is shown that these references significantly affect the IPC (instructions per cycle) performance of a processor. Not modeling them leads to errors of up to 10 percent (4 percent on average) in IPC estimates for the SPEC CPU2000 integer benchmarks on an out-of-order processor and errors of up to 63 percent on a runahead-execution processor. In general, the error in the IPC increases with increasing memory latency and instruction window size. We find that wrong-path references are usually beneficial for performance because they prefetch data that is used by later correct-path references. L2 cache pollution is found to be the most significant negative effect of wrong-path references. Code examples are shown to provide insights into how wrong-path references affect performance. We also show that it is crucial to model wrong-path references to accurately estimate the performance improvement provided by runahead execution.
  • Keywords
    cache storage; instruction sets; parallel architectures; IPC; L2 cache pollution; aggressive branch prediction algorithm; data prefetching; instruction window size; instructions per cycle performance; memory latency; out-of-order processor; processor performance model; runahead execution processor; single data stream architectures; wrong-path memory references; Bandwidth; Bars; Delay; Out of order; Performance analysis; Pollution; Prediction algorithms; Predictive models; Prefetching; Index Terms- Single data stream architectures; processor performance modeling.; runahead execution; speculative execution;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2005.190
  • Filename
    1524937