Reducing misspeculation penalty in trace-level speculative multithreaded architectures

0Citations
Citations of this article
2Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Trace-Level Speculative Multithreaded Processors exploit trace-level speculation by means of two threads working cooperatively. One thread, called the speculative thread, executes instructions ahead of the other by speculating on the result of several traces. The other thread executes speculated traces and verifies the speculation made by the first thread. Speculated traces are validated by verifying their live-output values. Every time a trace misspeculation is detected, a thread synchronization is fired. This recovery action involves flushing the pipeline and reverting to a safe point in a program, which results in some performance penalties. This paper proposes a new thread synchronization scheme based on the observation that a significant number of instructions whose control and data are independent of the mispredicted instruction. This scheme significantly increases the performance potential of the architecture at less cost. Our experimental results show that the mechanism cuts the number of executed instructions by 8% and achieves on average speed-up of almost 9% for a collection of SPEC2000 benchmarks. © Springer-Verlag Berlin Heidelberg 2008.

Cite

CITATION STYLE

APA

Molina, C., Tubella, J., & González, A. (2008). Reducing misspeculation penalty in trace-level speculative multithreaded architectures. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4759 LNCS, pp. 43–55). Springer Verlag. https://doi.org/10.1007/978-3-540-77704-5_4

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free