Hello,

I have observed while running X86 full system simulation for PARSEC
benchmark in gem5 with ruby timing model that the loads and younger
instructions keep getting squashed. re-fetched, reissued and again squashed
until response to outstanding load for same address is received. The
sequencer in ruby timing model does not allow multiple outstanding loads to
the same address. Due to this I can see significant number of unnecessary
squashes in gem5. Even though the outstanding load request in sequencer may
be squashed by processor due to branch mis-predict, another load to same
address and subsequent instructions keep getting squashed until response
for outstanding load is received

Apart from this Gem5 does not stall loads when the sequencer is full, it
squashes again,
Due to this even though gem5 with default configuration has 192 entry
instruction window 8 wide issue. it is not as aggressively speculative as
it is supposed to be. Most of them are squashed unnecessarily. Is this how
gem5 supposed to work, this is very inefficient and is there a patch to
resolve these unnecessary squashes?

-- 
Thanks & Regards,
Vamsi Krishna.
Graduate Student,
Electrical & Computer Engineering,
Texas A&M University.
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to