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
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;
Conference_Titel :
Parallel Processing, 2009. ICPP '09. International Conference on
Conference_Location :
Vienna
Print_ISBN :
978-1-4244-4961-3
Electronic_ISBN :
0190-3918
DOI :
10.1109/ICPP.2009.17