mem-ruby: Use CircularQueue for prefetcher's unit filter
authorDaniel R. Carvalho <odanrc@yahoo.com.br>
Sat, 21 Dec 2019 14:10:08 +0000 (15:10 +0100)
committerDaniel Carvalho <odanrc@yahoo.com.br>
Fri, 9 Oct 2020 07:13:16 +0000 (07:13 +0000)
commit5c94320ce273865d13d8a4e9062464dad71cffea
treeed4ad18a630b86ddcb6b59b119852cd69f562d87
parentaf7eddaad1f07f10f5c078fd3dccb1260816d6e9
mem-ruby: Use CircularQueue for prefetcher's unit filter

Ruby prefetcher's unit filter is a circular queue, so use the class
created for this functionality.

This changes the behavior, since previously iterating through the
filter was completely arbitrary, and now it iterates from the
beginning of the queue to the end when accessing and updating
the filter's contents.

Change-Id: I834be88a33580d5857c38e9bae8b289c5a6250b9
Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/24532
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/mem/ruby/structures/RubyPrefetcher.cc
src/mem/ruby/structures/RubyPrefetcher.hh