• DocumentCode
    2801701
  • Title

    Code Semantic-Aware Runahead Threads

  • Author

    Ramírez, RanausÙ ; Pajuelo, Alex ; Santana, Oliverio J. ; Valero, Mateo

  • Author_Institution
    Univ. Politec. de Catalunya, Barcelona, Spain
  • fYear
    2009
  • fDate
    22-25 Sept. 2009
  • Firstpage
    437
  • Lastpage
    444
  • Abstract
    Memory-intensive threads can hoard shared resources without making progress on a multithreading processor (SMT), thereby hindering the overall system performance. A recent promising solution to overcome this important problem in SMT processors is Runahead Threads (RaT). RaT employs runahead execution to allow a thread to speculatively execute instructions and prefetch data instead of stalling for a long-latency load. The main advantage of this mechanism is that it exploits memory-level parallelism under long latency loads without clogging up shared resources. As a result, RaT improves the overall processor performance reducing the resource contention among threads. In this paper, we propose simple code semantic based techniques to increase RaT efficiency. Our proposals are based on analyzing the prefetch opportunities (usefulness) of loops and subroutines during runahead thread executions. We dynamically analyze these particular program structures to detect when it is useful or not to control the runahead thread execution. By means of this dynamic information, the proposed techniques make a control decision either to avoid or to stall the loop or subroutine execution in runahead threads. Our experimental results show that our best proposal significantly reduces the speculative instruction execution (33% on average) while maintaining and, even improving the performance of RaT (up to 3%) in some cases.
  • Keywords
    multi-threading; SMT processors; code semantic-aware runahead threads; dynamic information; memory-intensive threads; memory-level parallelism; multithreading processor; prefetch data; runahead execution; runahead thread execution; speculative instruction execution; Algorithms; Delay; Multicore processing; Multithreading; Parallel processing; Prefetching; Proposals; Surface-mount technology; System performance; Yarn; Runahead; Simultaneous Multithreaded processors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing, 2009. ICPP '09. International Conference on
  • Conference_Location
    Vienna
  • ISSN
    0190-3918
  • Print_ISBN
    978-1-4244-4961-3
  • Electronic_ISBN
    0190-3918
  • Type

    conf

  • DOI
    10.1109/ICPP.2009.17
  • Filename
    5362436