Skip to main content

Ginger: Control independence using tag rewriting

Publication ,  Conference
Hilton, AD; Roth, A
Published in: Proceedings - International Symposium on Computer Architecture
October 22, 2007

The negative performance impact of branch mis-predictions can be reduced by exploiting control independence (CI). When a branch mis-predicts, the wrong-path instructions up to the point where control converges with the correct path are selectively squashed and replaced with correct-path instructions. Instructions beyond the convergence-point-the branch's control-independent (CI) instructions-are spared from squashing. Exploiting CI requires updating the input data dependences of CI instructions to reflect the selective removal and insertion of logically older instructions and transitively re-dispatching those CI instructions whose inputs have changed. This capability is generally called out-of-order renaming. Previously proposed CI designs use out-of-order renaming schemes that either consume excessive rename/dispatch bandwidth, can only be applied in limited cases, or incur a cost even when the branch would be correctly predicted. Ginger is a CI design that is both general and bandwidth efficient. Ginger implements out-of-order renaming using tag rewriting, re-linking the input dependences of CI instructions as they sit in the window. To do this, Ginger halts the pipeline uses the idle map table read and write ports and the issue queue match lines and write lines to perform a register-tag "search-and-replace" operation. After a few cycles, the pipeline restarts and execution resumes with correct data dependences. Cycle-level simulation shows that Ginger out-performs previous CI designs, yielding geometric mean speedups over an aggressive non-CI processor of 5%, 12%, and 11%-on SPECint2000, MediaBench, and Comm-Bench-with speedups of 15% or greater on 11 of 46 programs. Copyright 2007 ACM.

Duke Scholars

Altmetric Attention Stats
Dimensions Citation Stats

Published In

Proceedings - International Symposium on Computer Architecture

DOI

ISSN

1063-6897

Publication Date

October 22, 2007

Start / End Page

436 / 447
 

Citation

APA
Chicago
ICMJE
MLA
NLM
Hilton, A. D., & Roth, A. (2007). Ginger: Control independence using tag rewriting. In Proceedings - International Symposium on Computer Architecture (pp. 436–447). https://doi.org/10.1145/1250662.1250716
Hilton, A. D., and A. Roth. “Ginger: Control independence using tag rewriting.” In Proceedings - International Symposium on Computer Architecture, 436–47, 2007. https://doi.org/10.1145/1250662.1250716.
Hilton AD, Roth A. Ginger: Control independence using tag rewriting. In: Proceedings - International Symposium on Computer Architecture. 2007. p. 436–47.
Hilton, A. D., and A. Roth. “Ginger: Control independence using tag rewriting.” Proceedings - International Symposium on Computer Architecture, 2007, pp. 436–47. Scopus, doi:10.1145/1250662.1250716.
Hilton AD, Roth A. Ginger: Control independence using tag rewriting. Proceedings - International Symposium on Computer Architecture. 2007. p. 436–447.

Published In

Proceedings - International Symposium on Computer Architecture

DOI

ISSN

1063-6897

Publication Date

October 22, 2007

Start / End Page

436 / 447