Hi all,

Then, considering Arthur's answer, I suppose that we can remove
BPredUnit::predictInOrder() rather than updating and not testing it.

Regards,

--
Fernando A. Endo, Post-doc

INRIA Rennes-Bretagne Atlantique
France


2016-11-21 19:19 GMT+01:00 Arthur Perais <[email protected]>:

> I suppose it was called by the InOrder CPU once upon a time. Now the Minor
> CPU uses the same branch prediction code as the o3 CPU, which may have led
> to the current inconsistencies in how branch predictors handle out-of-order
> mispredictions (or not :)).
>
> I've submitted a patch regarding this recently (
> http://reviews.gem5.org/r/3727/), feel free to take a look.
>
> Arthur.
>
>
>
> Le 21/11/2016 à 16:40, Jason Lowe-Power a écrit :
>
>> Hi Fernando,
>>
>> I don't know what he original use of predictInOrder was, but you're right,
>> it doesn't look like it's in use now. You may be able to figure out what
>> it
>> was used for by inferring its function from the code.
>>
>> Jason
>>
>> On Sun, Nov 13, 2016 at 2:37 PM Jason Lowe-Power <[email protected]>
>> wrote:
>>
>> Hi Fernando,
>>>
>>> I have no idea, off the top of my head. I'd have to look into the code
>>> and/or the history of the file to figure it out.
>>>
>>> I'm busy with an ISCA submission right now, but I can find time to look
>>> into this in a week or so.
>>>
>>> Cheers,
>>> Jason
>>>
>>> On Sun, Nov 13, 2016 at 2:26 PM Fernando Endo <[email protected]>
>>> wrote:
>>>
>>> Hi Jason,
>>>
>>> I've been working a bit on the integration, and I wondered what is and
>>> where this method is used:
>>>
>>> BPredUnit::predictInOrder()
>>>
>>> I greped the source and built code and did not find a calling point.
>>>
>>> Thanks,
>>>
>>> --
>>> Fernando A. Endo, Post-doc
>>>
>>> INRIA Rennes-Bretagne Atlantique
>>> France
>>>
>>>
>>> 2016-11-06 21:38 GMT+01:00 Jason Lowe-Power <[email protected]>:
>>>
>>> Hi Fernando,
>>>>
>>>> Yes, it seems like a good idea to include a TAGE predictor in gem5.
>>>>
>>> Please
>>>
>>>> make patches and post them to the reviewboard. We welcome the
>>>>
>>> contribution.
>>>
>>>> Additionally, I believe there was a recent email about a possible bug
>>>>
>>> when
>>>
>>>> updating the branch predictor state on a mis-speculation. If you're
>>>> familiar with this code, or know of a fix for this, we would appreciate
>>>> a
>>>> patch. Or, if it's actually not broken, that would be great, too. It's
>>>>
>>> part
>>>
>>>> of the code that I'm not very familiar with.
>>>>
>>>> Cheers,
>>>> Jason
>>>>
>>>> On Fri, Nov 4, 2016 at 9:46 AM Fernando Endo <[email protected]>
>>>> wrote:
>>>>
>>>> Hello all,
>>>>
>>>> I'd like to know if the gem5 community would like to have a TAGE branch
>>>> prediction in gem5.
>>>> In my branch it seems to be working, so if you give me a positive
>>>>
>>> feedback
>>>
>>>> I may spend some spare time to rebase and test the patch over
>>>> mainstream.
>>>>
>>>> More specifically, I took the CBP2016 winner and removed local
>>>> prediction
>>>> tables. This specific version is called TAGE-GSC (Global Statistical
>>>> Corrector) and should go to src/cpu/pred/tage-gsc.hh. This file is
>>>> functionally equivalent to the original CBP2016 winner and can be
>>>>
>>> compared
>>>
>>>> against it without modification. Then, a glue code was implemented in
>>>> src/cpu/pred/TAGE.hh and src/cpu/pred/TAGE.cc, making tage-gsc.hh to
>>>> work
>>>> in gem5.
>>>>
>>>> I validated the gem5 implementation by comparing the predictor at fetch
>>>> with a validator at commit. The prediction tables must be the same.
>>>>
>>>> Regards,
>>>>
>>>> --
>>>> Fernando A. Endo, Post-doc
>>>>
>>>> INRIA Rennes-Bretagne Atlantique
>>>> France
>>>> _______________________________________________
>>>> gem5-dev mailing list
>>>> [email protected]
>>>> http://m5sim.org/mailman/listinfo/gem5-dev
>>>> _______________________________________________
>>>> gem5-dev mailing list
>>>> [email protected]
>>>> http://m5sim.org/mailman/listinfo/gem5-dev
>>>>
>>>> _______________________________________________
>>> gem5-dev mailing list
>>> [email protected]
>>> http://m5sim.org/mailman/listinfo/gem5-dev
>>>
>>>
>>> _______________________________________________
>> gem5-dev mailing list
>> [email protected]
>> http://m5sim.org/mailman/listinfo/gem5-dev
>>
>
> _______________________________________________
> gem5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/gem5-dev
>
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to