Using predicated execution to improve the performance of a dynamically scheduled machine with speculative execution
- Univ. of Michigan, Ann Arbor, MI (United States)
- Intel Architecture Laboratory, Santa Clara, CA (United States)
Conditional branches incur a severe performance penalty in wide-issue, deeply pipelined processors. Speculative execution and predicated execution are two mechanisms that have been proposed for reducing this penalty. Speculative execution can completely eliminate the penalty associated with a particular branch, but requires accurate branch prediction to be effective. Predicated execution does not require accurate branch prediction to eliminate the branch penalty, but is not applicable to all branches and can increase the latencies within the program. This paper examines the performance benefit of using both mechanisms to reduce the branch execution penalty. Predicated execution is used to handle the hard-to-protect branches and speculative execution is used to handle the remaining branches. The hard-to-predict branches within the program are determined by profiling. We show that this approach can significantly reduce the branch execution penalty suffered by wide-issue processors.
- OSTI ID:
- 273922
- Journal Information:
- International Journal of Parallel Programming, Vol. 24, Issue 3; Other Information: PBD: Jun 1996
- Country of Publication:
- United States
- Language:
- English
Similar Records
A novel digital pulse processing architecture for nuclear instrumentation
Feedback-directed page placement for ccNUMA via hardware-generated memory traces