Sciweavers

ISCA
1995
IEEE

Unconstrained Speculative Execution with Predicated State Buffering

14 years 3 months ago
Unconstrained Speculative Execution with Predicated State Buffering
Speculative execution is execution of instructions before it is known whether these instructions should be executed. Compiler-based speculative execution has the potential to achieve both a high instruction per cycle rate and high clock rate. Pure compiler-based approaches, however, have greatly limited instruction scheduling due to a limited ability to handle side effects of speculative execution. Significant performance improvement is, thus, difficult in non-numerical applications. This paper proposes a new architectural mechanism, called predicating, which provides unconstrained speculative execution. Predicating removes restrictions which limit the compiler’s ability to schedule instructions. Through our hardware support, the compiler is allowed to move instructions past multiple basic block boundaries from any succeeding control path. Predicating buffers the side effects of speculative execution with its predicate, and the buffered predicate efficiently commits or squashes the ...
Hideki Ando, Chikako Nakanishi, Tetsuya Hara, Masa
Added 26 Aug 2010
Updated 26 Aug 2010
Type Conference
Year 1995
Where ISCA
Authors Hideki Ando, Chikako Nakanishi, Tetsuya Hara, Masao Nakaya
Comments (0)