Title :
Fetch-Criticality Reduction through Control Independence
Author :
Agarwal, Mayank ; Navale, Nitin ; Malik, Kshitiz ; Frank, Matthew I.
Author_Institution :
Coordinated Sci. Lab., Univ. of Illinois at Urbana-Champaign, Urbana, IL
Abstract :
Architectures that exploit control independence (CI) promise to remove in-order fetch bottlenecks, like branch mispredicts, instruction-cache misses and fetch unit stalls, from the critical path of single-threaded execution. By exposing more fetch options, however, CI architectures also expose more performance tradeoffs. These tradeoffs make it hard to design policies that deliver good performance. This paper presents a criticality-based model for reasoning about CI architectures, and uses that model to describe the tradeoffs between gains from control independence versus increased costs of honoring data dependences. The model is then used to derive the design of a criticality-aware task selection policy that strikes the right balance between fetch-criticality and execute-criticality. Finally, the paper validates the model by attacking branch-misprediction induced fetch-criticality through the above derived spawn policy. This leads to as high as 100% improvements in performance, and in the region of 40% or more improvements for four of the benchmarks where this is the main problem. Criticality analysis shows that this improvement arises due to reduced fetch-criticality.
Keywords :
computer architecture; branch mispredicts; control independence; criticality-aware task selection policy; data dependences; fetch unit stalls; fetch-criticality reduction; instruction-cache misses; single-threaded execution; Computer architecture; Costs; Degradation; Delay; Process control; Robustness; Control Independence; Fetch-Criticality; Implicit Parallelization;
Conference_Titel :
Computer Architecture, 2008. ISCA '08. 35th International Symposium on
Conference_Location :
Beijing
Print_ISBN :
978-0-7695-3174-8
DOI :
10.1109/ISCA.2008.39