SLIDE 8 Introduction Related Work
Execution Assistance (2/2)
Classification of Mechanisms for Execution Assistance
1 Forwarding all valuesa
Highest speedup but also requires highest bandwidth Suited for components of a single core or adjacent cores
2 Forwarding loads and branchesb
Eliminates branch mispredictions and data cache misses Solves the problem of input incoherence Still requires considerable bandwidth
3 Forwarding only branchesc 4 Forwarding critical values aAR-SMT [FTCS ’99], DIVA [MICRO ’99], Slipstream∗ [ASPLOS ’00], Madan et al. [TPDS ’07] bSRT [ISCA ’00], CRT [ISCA ’02], SRTR [ISCA ’02], CRTR [ISCA ’03], SpecIV [HPCA ’08], etc. cPaceline [PACT ’08], PVA [PACT ’05], Circuit Pruning [MICRO ’07], Decoupled Performance Correctness Architecture [MICRO ’08], etc. Redundant Execution Using Critical Value Forwarding DSN 2010 29 June 2010 8 / 43