Thanks. Would be enough to change a bit the lookupAndUpdateNextPC() function such that the return is always false ? I mean changing the:
if (!inst->isControl()) { TheISA::advancePC(nextPC, inst->staticInst); inst->setPredTarg(nextPC); inst->setPredTaken(false); return false; } to // if (!inst->isControl()) { TheISA::advancePC(nextPC, inst->staticInst); inst->setPredTarg(nextPC); inst->setPredTaken(false); return false; // } ? On Tue, Oct 23, 2012 at 10:02 AM, Mitch Hayenga < mitch.hayenga+g...@gmail.com> wrote: > Since gem5 the O3 cpu model actually executes instructions @ execute (not > fetch/decode) a perfect branch predictor is a bit tricky. Assuming you are > running a single-threaded app in SE mode (so you don't have > OS/multi-threaded time variance issues), you could simply run the > application twice. Save the branch outcomes from the first run. Then > re-run the app, with a "predictor" that just uses the branch results from > the first time you ran the application. > > On Mon, Oct 22, 2012 at 8:43 PM, mihai pricopi <mihai.pric...@gmail.com>wrote: > >> Hi, >> >> I am using arm_detailed SE mode. >> Is there a simple way to force the branch predictor to do perfect >> prediction ? >> >> Thanks >> >> _______________________________________________ >> gem5-users mailing list >> gem5-users@gem5.org >> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >> > > > _______________________________________________ > gem5-users mailing list > gem5-users@gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users