DocumentCode :
46526
Title :
Revisiting Using the Results of Pre-Executed Instructions in Runahead Processors
Author :
Wolff, Sonya R. ; Barnes, Ronald D.
Volume :
13
Issue :
2
fYear :
2014
fDate :
July-Dec. 16 2014
Firstpage :
97
Lastpage :
100
Abstract :
Long-latency cache accesses cause significant performance-impacting delays for both in-order and out-of-order processor systems. To address these delays, runahead pre-execution has been shown to produce speedups by warming-up cache structures during stalls caused by long-latency memory accesses. While improving cache related performance, basic runahead approaches do not otherwise utilize results from accurately pre-executed instructions during normal operation. This simple model of execution is potentially inefficient and performance constraining. However, a previous study showed that exploiting the results of accurately pre-executed runahead instructions for out-of-order processors provide little performance improvement over simple re-execution. This work will show that, unlike out-of-order runahead architectures, the performance improvement from runahead result use for an in-order pipeline is more significant, on average, and in some situations provides dramatic performance improvements. For a set of SPEC CPU2006 benchmarks which experience performance improvement from basic runahead, the addition of result use to the pipeline provided an additional speedup of 1.14× (high - 1.48×) for an in-order processor model compared to only 1.05× (high - 1.16×) for an out-of-order one. When considering benchmarks with poor data cache locality, the average speedup increased to 1.21× for in-order compared to only 1.10× for out-of-order.
Keywords :
cache storage; multiprocessing systems; SPEC CPU2006 benchmarks; data cache locality; in-order processor systems; long-latency cache accesses; long-latency memory accesses; out-of-order processor systems; out-of-order runahead architectures; preexecuted runahead instructions; runahead processors; Benchmark testing; Hidden Markov models; Out of order; Pipeline processing; Registers; C.1.5.c Superscalar dynamically-scheduled and statically-scheduled implementation; C.1.5.e Memory hierarchy; Memory Wall; Pre-Execution; Runahead;
fLanguage :
English
Journal_Title :
Computer Architecture Letters
Publisher :
ieee
ISSN :
1556-6056
Type :
jour
DOI :
10.1109/L-CA.2013.21
Filename :
6562693
Link To Document :
بازگشت