Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Here ya go

Author: Robert Hyatt

Date: 12:16:26 06/05/01

Go up one level in this thread


On June 05, 2001 at 14:47:04, Gian-Carlo Pascutto wrote:

>On June 05, 2001 at 14:17:03, Robert Hyatt wrote:
>
>>Part of that looks wrong.  The usual idea has always been "If a branch target
>>has not been seen previously (which means no prediction entry is avaliable) then
>>look at the _direction_ of the jump.  If it is backward, assume it will be
>>taken (a safe assumption since a backward branch is likely a loop) while if it
>>is forward, assume it is not taken.
>>
>>I had seen someone from Intel claim this is what they do, although I am not
>>certain.  That is easier to do in the hardware than to assume that if it is
>>taken, move it to ST and go from there...
>
>A simple explanation would be that your method is used when
>no or insufficient prediction information for that branch
>is available.
>
>Actually, I'm pretty sure that's how it works. With 20 instruction
>deep pipelines you need something more clever than a static criterion.
>
>--
>GCP

Maybe I didn't explain what I meant very well.  The web page said simply that
if a branch target has not been seen before, the branch is predicted to be not
taken, period.  _that_ was what I disagreed with.  I believe that the
'direction' of the branch is used to predict when the BTB doesn't have that
address in it.  The normal 4-state stuff is used once a BTB entry has been
made...



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.