• DocumentCode
    2170664
  • Title

    Runahead execution vs. conventional data prefetching in the IBM POWER6 microprocessor

  • Author

    Cain, Harold W. ; Nagpurkar, Priya

  • Author_Institution
    IBM T.J. Watson Res. Center, Yorktown Heights, NY, USA
  • fYear
    2010
  • fDate
    28-30 March 2010
  • Firstpage
    203
  • Lastpage
    212
  • Abstract
    After many years of prefetching research, most commercially available systems support only two types of prefetching: software-directed prefetching and hardware-based prefetchers using simple sequential or stride-based prefetching algorithms. More sophisticated prefetching proposals, despite promises of improved performance, have not been adopted by industry. In this paper, we explore the efficacy of both hardware and software prefetching in the context of an IBM POWER6 commercial server. Using a variety of applications that have been compiled with an aggressively optimizing compiler to use software prefetching when appropriate, we perform the first study of a new runahead prefetching feature adopted by the POWER6 design, evaluating it in isolation and in conjunction with a conventional hardware-based sequential stream prefetcher and compiler-inserted software prefetching. We find that the POWER6 implementation of runahead prefetching is quite effective on many of the memory intensive applications studied; in isolation it improves performance as much as 36% and on average 10%. However, it outperforms the hardware-based stream prefetcher on only two of the benchmarks studied, and in those by a small margin. When used in conjunction with the conventional prefetching mechanisms, the runahead feature adds an additional 6% on average, and 39% in the best case (GemsFDTD).
  • Keywords
    microprocessor chips; program compilers; storage management; IBM POWER6 commercial server; IBM POWER6 microprocessor; compiler-inserted software prefetching; data prefetching; hardware-based sequential stream prefetcher; sequential based prefetching algorithms; software-directed prefetching; stride-based prefetching algorithms; Application software; Context modeling; Hardware; Java; Microprocessors; Optimizing compilers; Performance evaluation; Prefetching; Proposals; Software performance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Performance Analysis of Systems & Software (ISPASS), 2010 IEEE International Symposium on
  • Conference_Location
    White Plains, NY
  • Print_ISBN
    978-1-4244-6023-6
  • Electronic_ISBN
    978-1-4244-6024-3
  • Type

    conf

  • DOI
    10.1109/ISPASS.2010.5452021
  • Filename
    5452021