mem: Snoop filter support for large systems
authorTiago Muck <tiago.muck@arm.com>
Thu, 7 Feb 2019 19:37:40 +0000 (13:37 -0600)
committerTiago Mück <tiago.muck@arm.com>
Tue, 28 May 2019 16:14:22 +0000 (16:14 +0000)
commitc73b7e50d06a8313174de0133ea4050ccb5959d9
treede1366aa2ec9ff6c4844b7a241df888d2e92b4f0
parentcdc03f96a70b659ba3067c2dae1901aac5cda9df
mem: Snoop filter support for large systems

Changed SnoopMask to use std::bitset instead of uint64 so we can simulate
larger systems without having to workaround limitations on the number of
ports. No noticeable performance drop was observed after this change.
The size of the bitset is currently set to 256 which should fit most
needs.

Change-Id: I216882300500e2dcb789889756e73a1033271621
Signed-off-by: Tiago Muck <tiago.muck@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18791
Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/mem/snoop_filter.cc
src/mem/snoop_filter.hh