Hello Bradford Beckmann,
I'd like you to reexamine a change. Please visit
to look at the new patch set (#2).
Change subject: mem-ruby: Fix RubyPrefetcher support in MESI_Two_Level
mem-ruby: Fix RubyPrefetcher support in MESI_Two_Level
Only a small quantity of prefetches were issued, as the positive
feedback mechanism was not implemented. This commit adds a new
action po_observeHit, which notifies the RubyPrefetcher of
successful prefetches and resets the prefetch flag.
When a cache line was replaced by a prefetch, the wrong queue could
be stalled. This commit adds a new event PF_L1_Replacement, which
stalls the correct queue.
The behavior when receiving a prefetch or instruction fetch while
in PF_IS_I (prefetch caused GETs, but got invalidated before the
response was received) was undefined. This was changed to drop the
prefetch request or change the state to non-prefetch, respectively.
This behavior is analogous to IS_I (non-prefetch caused GETs, but
got invalidated before the response was received) and the data case,
In my local branch a major (20+%) performance increase can be
observed in SPEC2006 gobmk and leslie3d when enabling the
prefetcher. Some other benchmarks like bwaves, GemsFDTD, sphinx and
wrf show smaller (~10%) performance increases. Unfortunately, the
performance in most other SPEC benchmarks is still poor, most likely
as the prefetcher does not detect strides fast/often enough. In
order to push the change timely (most benchmarks have runtimes in
the order of days on my machine even with the smallest parameters)
after checkout, I have only run gobmk with the base repository
+ this commit. The results match those of my local branch.
1 file changed, 37 insertions(+), 10 deletions(-)
To view, visit https://gem5-review.googlesource.com/8801
To unsubscribe, or for help writing mail filters, visit
Gerrit-Owner: Rico Amslinger <rico.amslin...@informatik.uni-augsburg.de>
Gerrit-Reviewer: Bradford Beckmann <brad.beckm...@amd.com>
Gerit-CC: Jason Lowe-Power <ja...@lowepower.com>
gem5-dev mailing list