Title :
Branch-mispredict level parallelism (BLP) for control independence
Author :
Malik, Kshitiz ; Agarwal, Mayank ; Stone, Sam S. ; Woley, Kevin M. ; Frank, Matthew I.
Author_Institution :
Coordinated Sci. Lab., Univ. of Illinois at Urbana-Champaign, Urbana, IL
Abstract :
A microprocessorpsilas performance is fundamentally limited by the rate at which it can resolve branch mispredictions. Control independence (CI) architectures look for useful control and data independent instructions to fetch and execute in the shadow of a branch misprediction. This paper demonstrates that CI architectures can be guided to exploit substantial branch-mispredict level parallelism (BLP) in existing control intensive applications. A program has branch-mispredict level parallelism when its dynamic execution trace contains hard-to-predict branches that are both control and data independent, and thus could, potentially, be resolved in parallel. Although applications have a high degree of inherent BLP, we find that the amount of BLP exploited by naive CI architectures tends to be quite small. We show that spawn selection and data dependence handling policies in a CI architecture should make choices that explicitly aim to maximize branch-mispredict level parallelism. We demonstrate that with BLP-focussed policies, CI architectures can expose high amounts of branch-mispredict level parallelism and achieve 50% to 90% improvements in IPC on several of the SPEC 2000 Integer benchmarks.
Keywords :
multi-threading; parallelising compilers; program control structures; program diagnostics; branch-mispredict level parallelism; control independence architecture; data dependence handling policy; dynamic execution trace; multithreading; spawn selection; Data mining; Feedback; Flow graphs; Out of order; Process control;
Conference_Titel :
High Performance Computer Architecture, 2008. HPCA 2008. IEEE 14th International Symposium on
Conference_Location :
Salt Lake City, UT
Print_ISBN :
978-1-4244-2070-4
DOI :
10.1109/HPCA.2008.4658628