135
- https://doi.org/10.1145/360128.360136
On pipelining dynamic instruction scheduling logic
- Dec 1, 2000
- Jared Stark +2 more
A machine's performance is the product of its IPC (Instructions Per Cycle) and clock frequency. Recently, S. Palacharla et al. (1997) warned that the dynamic instruction scheduling logic for current machines performs an atomic operation. Either you sacrifice IPC by pipelining this logic, thereby eliminating its ability to execute dependent instructions in consecutive cycles. Or you sacrifice clock frequency by not pipelining it, performing this atomic operation in a single long cycle. Both alternatives are unacceptable for high performance. The paper offers a third, acceptable, alternative: pipelined scheduling with speculative wakeup. This technique pipelines the scheduling logic without eliminating its ability to execute dependent instructions in consecutive cycles. With this technique, you sacrifice little IPC, and no clock frequency. Our results show that on the SPECint95 benchmarks, a machine using this technique has an average IPC that is 13% greater than the IPC of a baseline machine that pipelines the scheduling logic but sacrifices the ability to execute dependent instructions in consecutive cycles, and within 2% of the IPC of a conventional machine that uses single cycle scheduling logic.
- # Instructions Per Cycle
- # Scheduling Logic
- # Consecutive Cycles
- # SPECint95 Benchmarks
- # Clock Frequency
- # Pipelined Scheduling
- # Dynamic Logic
- # Dynamic Scheduling
- # Machine's Performance
- # Single Cycle