ReSlice: Selective re-execution of long-retired misspeculated instructions using forward slicing

Smruti R. Sarangi, Wei Liu, Josep Torrellas, Yuanyuan Zhou

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

As more data value speculation mechanisms are being proposed to speed-up processors, there is growing pressure on the critical processor structures that must buffer the state of the speculative instructions. A scalable solution is to checkpoint the processor and retire speculative instructions. However, in this environment, misprediction recovery becomes very wasteful, as it involves discarding and re-executing all the instructions executed since the checkpoint. To speed-up execution in this environment, this paper presents a novel architecture (ReSlice) that selectively re-executes only the speculatively-retired instructions that directly depended on the mispredicted value, namely its Forward Slice. ReSlice buffers the (typically very few) instructions in the forward slice of the predicted value as such instructions initially execute. Then, potentially thousands of instructions later, ReSlice can quickly re-execute the slice if a misprediction is declared, and merge its state with the program state. In addition, this paper develops a sufficient condition for correct slice re-execution and merge. As one possible use of ReSlice, we apply it to recover from cross-task dependence violations in a chip multiprocessor with Thread-Level Speculation (TLS). ReSlice speeds up Speclnt applications over aggressive TLS by up to 33%, with a geometric mean of 12%. Moreover, E × D 2 decreases by 20%. All this is obtained by saving on average 61% of the task squashes through slice re-execution. On average, a slice re-executes only 6.6 instructions, compared to the 210 that would be re-executed on a squash.

Original languageEnglish (US)
Title of host publicationMICRO-38
Subtitle of host publicationProceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture
Pages257-268
Number of pages12
DOIs
StatePublished - Dec 1 2005
EventMICRO-38: 38th Annual IEEE/ACM International Symposium on Microarchitecture - Barcelona, Spain
Duration: Nov 12 2005Nov 16 2005

Publication series

NameProceedings of the Annual International Symposium on Microarchitecture, MICRO
ISSN (Print)1072-4451

Other

OtherMICRO-38: 38th Annual IEEE/ACM International Symposium on Microarchitecture
CountrySpain
CityBarcelona
Period11/12/0511/16/05

ASJC Scopus subject areas

  • Engineering(all)

Fingerprint Dive into the research topics of 'ReSlice: Selective re-execution of long-retired misspeculated instructions using forward slicing'. Together they form a unique fingerprint.

  • Cite this

    Sarangi, S. R., Liu, W., Torrellas, J., & Zhou, Y. (2005). ReSlice: Selective re-execution of long-retired misspeculated instructions using forward slicing. In MICRO-38: Proceedings of the 38th Annual IEEE/ACM International Symposium on Microarchitecture (pp. 257-268). [1540965] (Proceedings of the Annual International Symposium on Microarchitecture, MICRO). https://doi.org/10.1109/MICRO.2005.28