The Hint Bit for Conditional Branch Instructions

Misprediction of conditional branches is a major cause for reduced performance in high-performance processors. Recently there have been several branch prediction techniques proposed to improve the prediction accuracy of conditional branches. Most of these techniques are very expensive in their hardware requirements and incur a fairly significant amount of learning overhead. In this report we investigate the possibility of using a hint bit in conditional branch instructions to direct each branch to one of two dynamic predictors in an implementation. We identify two classes of predictors represented by this hint bit, and direct most of the branches to the simpler of the two predictors to ensure that the more sophisticated predictor is used mostly for the cases where its use is beneficial. We examine an algorithm to identify these classes and present results to demonstrate effectiveness of the technique under various size constraints and context switching situations.

By: Ravi Nair

Published in: RC20537 in 1996

LIMITED DISTRIBUTION NOTICE:

This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.

8260.ps.gz

Questions about this service can be mailed to reports@us.ibm.com .