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 ...
The conditional branch has long been considered an expensive operation. The relative cost of conditi...
The complex and powerful out-of-order issue logic dismisses the repetitive nature of the code, unlik...
Conditional branches are expensive. Branches require a significant percentage of execution cycles si...
This paper presents the concept of dynamic control independence (DCI) and shows how it can be detect...
Current processors exploit out-of-order execution and branch prediction to improve instruction level...
Though current general-purpose processors have several small CPU cores as opposed to a single more c...
Many algorithms are inherently sequential and hard to explicitly parallelize. Cores designed to aggr...
An instruction is control independent of a preceding conditional branch if the decision to execute t...
148 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2009.I perform a thorough analysis...
The challenge of exploiting high degrees of instruction-level parallelism is often hampered by frequ...
With the constant advances in technology that lead to the increasing of the transistor count and pro...
Pipelining is an implementation techniquewhereby multiple instructions are overlapped inexecution; i...
Many modern applications result in a significant operating system (OS) component. The OS component h...
This paper proposes a new processor architecture for handling hard-to-predict branches, the diverge-...
To maintain a reasonable level of complexity, processor implementations contain Serializing Instruct...
The conditional branch has long been considered an expensive operation. The relative cost of conditi...
The complex and powerful out-of-order issue logic dismisses the repetitive nature of the code, unlik...
Conditional branches are expensive. Branches require a significant percentage of execution cycles si...
This paper presents the concept of dynamic control independence (DCI) and shows how it can be detect...
Current processors exploit out-of-order execution and branch prediction to improve instruction level...
Though current general-purpose processors have several small CPU cores as opposed to a single more c...
Many algorithms are inherently sequential and hard to explicitly parallelize. Cores designed to aggr...
An instruction is control independent of a preceding conditional branch if the decision to execute t...
148 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2009.I perform a thorough analysis...
The challenge of exploiting high degrees of instruction-level parallelism is often hampered by frequ...
With the constant advances in technology that lead to the increasing of the transistor count and pro...
Pipelining is an implementation techniquewhereby multiple instructions are overlapped inexecution; i...
Many modern applications result in a significant operating system (OS) component. The OS component h...
This paper proposes a new processor architecture for handling hard-to-predict branches, the diverge-...
To maintain a reasonable level of complexity, processor implementations contain Serializing Instruct...
The conditional branch has long been considered an expensive operation. The relative cost of conditi...
The complex and powerful out-of-order issue logic dismisses the repetitive nature of the code, unlik...
Conditional branches are expensive. Branches require a significant percentage of execution cycles si...