• Home
  • Search
  • Control-Flow Independence Reuse via Dynamic Vectorization
  • Open Access IconOpen Access
  • Cite Icon6
  • https://doi.org/10.1109/ipdps.2005.154Copy DOI Icon

Control-Flow Independence Reuse via Dynamic Vectorization

  • Oct 27, 2016
  • A Pajuelo +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Current processors exploit out-of-order execution and branch prediction to improve instruction level parallelism. When a branch prediction is wrong, processors flush the pipeline and squash all the speculative work. However, control-flow independent instructions compute the same results when they re-enter the pipeline down the correct path. If these instructions are not squashed, branch misprediction penalty can significantly be reduced. In this paper we present a novel mechanism that detects control-flow independent instructions, executes them before the branch is resolved, and avoids their re-execution in the case of a branch misprediction. The mechanism can detect and exploit control-flow independence even for instructions that are far away from the corresponding branch and even out of the instruction window. Performance figures show that the proposed mechanism can exploit control-flow independence for nearly 50% of the mispredicted branches, which results in a performance improvement that ranges from 14% to 17,8% for realistic configurations of forthcoming microprocessors.

Similar Papers
  • Conference Article
  • Citations24

Code placement for improving dynamic branch prediction accuracy

  • Jun 12, 2005
  • Daniel A Jiménez
  • Conference Article
  • Citations7

Opportunistic Early Pipeline Re-steering for Data-dependent Branches

  • Sep 30, 2020
  • Saurabh Gupta +3
  • Conference Article
  • Citations49

Branch classification: a new mechanism for improving branch predictor performance

  • Aug 24, 2005
  • Po-Yung Chang +3
  • Conference Article
  • Citations24

Dual path instruction processing

  • Jun 22, 2002
  • Juan L Aragón +3
  • Conference Article
  • Citations18

The Bimode++ Branch Predictor

  • Jan 17, 2005
  • K Kise +3
  • Conference Article
  • Citations46

Exploring instruction-fetch bandwidth requirement in wide-issue superscalar processors

  • Jan 20, 2003
  • P Michaud +2
  • Conference Article
  • Citations8

Selective branch prediction reversal by correlating with data values and control flow

  • Mar 07, 2017
  • J.L Aragon +3
  • Book Chapter
  • Citations26

Compiler algorithms on if-conversion, speculative predicates assignment and predicated code optimizations

  • Jan 01, 1997
  • Jesse Z Fang
  • Conference Article
  • Citations115

Characterizing the impact of predicated execution on branch prediction

  • Jan 01, 1994
  • Scott A Mahlke +5
  • Conference Article
  • Citations91

Guarded execution and branch prediction in dynamic ILP processors

  • Apr 01, 1994
  • Dionisios Pnevmatikatos +1
  • Conference Article
  • Citations11

Quantifying and reducing the effects of wrong-path memory references in cache-coherent multiprocessor systems

  • Jan 01, 2006
  • R Sendag +3
  • Conference Article
  • Citations1

Two branch predictor schemes for reduction of misprediction rate in conditions of frequent context switches

  • Oct 20, 1998
  • M Petrovic +2
  • Book Chapter
  • Citations1

Area-Aware Pipeline Gating for Embedded Processors

  • Jan 01, 2005
  • Babak Salamat +1
  • PDF
  • Research Article

Comparison of the Efficiency and Theoretical Hardware Consumption of Four Different Dynamic and Static Branch Predictors

  • Sep 01, 2021
  • Journal of Physics: Conference Series
  • Boyang Li
  • Conference Article
  • Citations2

Architectures for one billion of transistors

  • Sep 20, 2000
  • Mateo Valero
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.