Title :
Complex branch profiling for dynamic conditional execution
Author :
Santos, Rafael R dos ; Santos, Tatiana G S dos ; Pilla, Mauricio L. ; Navaux, Philippe O A ; Bampi, Sergio ; Nemirovsky, Mario
Author_Institution :
Univ. Fed. do Rio Grande do Sul, Porto Alegre, Brazil
Abstract :
Branch predictors are widely used as an alternative to deal with conditional branches. Despite the high accuracy rates, misprediction penalties are still large in any superscalar pipeline. DCE, or dynamic conditional execution, is an alternative to reduce the number of predicted branches by executing both paths of certain branches, reducing the number of predictions and, therefore, the occurrence of mispredictions. The goal of this work is to analyze the complexity of branch structures and determine the number of branches that can be predicated in DCE and the distribution of mispredictions according to the proposed classification. The complex branch classification proposed extends the classification presented by Klauser [A. Klauser, et al., (1998)]. As result, we show that an average of 35% of all branches can be predicated in DCE and around 32% of all mispredictions fall into these branches.
Keywords :
instruction sets; parallel programming; pipeline processing; program compilers; system monitoring; DCE; branch predictor; complex branch profiling; dynamic conditional execution; instruction fetch address; speculative execution; superscalar pipeline; Accuracy; Clocks; Degradation; Engines; Feeds; Frequency; Optimizing compilers; Pattern analysis; Pipelines; Prefetching;
Conference_Titel :
Computer Architecture and High Performance Computing, 2003. Proceedings. 15th Symposium on
Print_ISBN :
0-7695-2046-4
DOI :
10.1109/CAHPC.2003.1250318