Sentinel Scheduling: A Model for Compiler-Controlled Speculative Execution ( PostScript version, PDF version)
S. A. Mahlke, W. Y. Chen, R. A. Bringmann, R. E. Hank, W. W. Hwu, B. R. Rau, and M. S. Schlansker
ACM Transactions on Computer Systems, Vol. 11, No. 4, Nov. 1993
Speculative execution is an important source of
parallelism for VLIW and superscalar processors. A serious
challenge with compiler-controlled speculative execution is
to efficiently handle exceptions for speculative instructions.
In this paper, a set of architectural features and
compile-time scheduling support collectively referred to as
sentinel scheduling is introduced. Sentinel scheduling
provides an effective framework for both compiler-controlled
speculative execution and exception handling. All program
exceptions are accurately detected and reported in a timely
manner with sentinel scheduling. Recovery from exceptions
is also ensured with the model. Experimental results show
the effectiveness of sentinel scheduling for exploiting
instruction-level parallelism and the overhead associated
with exception handling.
[ IMPACT Main Page |
Team Members |
Publications |
Software |
FAQ ]