summaryrefslogtreecommitdiff
path: root/src/mem/cache/prefetch/Prefetcher.py
diff options
context:
space:
mode:
authorDaniel <odanrc@yahoo.com.br>2018-11-11 15:52:08 +0100
committerDaniel Carvalho <odanrc@yahoo.com.br>2018-11-15 16:53:27 +0000
commit153a33be851190acdec443264c3a1f1dfa44592a (patch)
tree4b041f997640f03ae73086628f17475ce46069d2 /src/mem/cache/prefetch/Prefetcher.py
parentd7a1db5cc44ad9a1bd5742f9fc4ffa5ea2e3b2f4 (diff)
downloadgem5-153a33be851190acdec443264c3a1f1dfa44592a.tar.xz
mem-cache: Make StridePrefetcher use Replacement Policies
Previously StridePrefetcher was only able to use random replacement policy. This change allows all replacement policies to be applied to the pc table. Change-Id: I8714e71a6a4c9c31fbca49a07a456dcacd3e402c Signed-off-by: Daniel <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/14360 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Diffstat (limited to 'src/mem/cache/prefetch/Prefetcher.py')
-rw-r--r--src/mem/cache/prefetch/Prefetcher.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mem/cache/prefetch/Prefetcher.py b/src/mem/cache/prefetch/Prefetcher.py
index 09717dff7..bae235d84 100644
--- a/src/mem/cache/prefetch/Prefetcher.py
+++ b/src/mem/cache/prefetch/Prefetcher.py
@@ -43,6 +43,7 @@ from ClockedObject import ClockedObject
from m5.SimObject import *
from m5.params import *
from m5.proxy import *
+from ReplacementPolicies import *
class HWPProbeEvent(object):
def __init__(self, prefetcher, obj, *listOfNames):
@@ -126,6 +127,10 @@ class StridePrefetcher(QueuedPrefetcher):
degree = Param.Int(4, "Number of prefetches to generate")
+ # Get replacement policy
+ replacement_policy = Param.BaseReplacementPolicy(RandomRP(),
+ "Replacement policy")
+
class TaggedPrefetcher(QueuedPrefetcher):
type = 'TaggedPrefetcher'
cxx_class = 'TaggedPrefetcher'