summaryrefslogtreecommitdiff
path: root/src/mem/ruby/system
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/ruby/system')
-rw-r--r--src/mem/ruby/system/GPUCoalescer.hh11
-rw-r--r--src/mem/ruby/system/GPUCoalescer.py10
2 files changed, 15 insertions, 6 deletions
diff --git a/src/mem/ruby/system/GPUCoalescer.hh b/src/mem/ruby/system/GPUCoalescer.hh
index 557d39235..2b42e1933 100644
--- a/src/mem/ruby/system/GPUCoalescer.hh
+++ b/src/mem/ruby/system/GPUCoalescer.hh
@@ -49,7 +49,7 @@
#include "mem/request.hh"
#include "mem/ruby/common/Address.hh"
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/system/RubyPort.hh"
+#include "mem/ruby/system/Sequencer.hh"
class DataBlock;
class CacheMsg;
@@ -255,10 +255,6 @@ class GPUCoalescer : public RubyPort
bool handleLlsc(Addr address, GPUCoalescerRequest* request);
- // Private copy constructor and assignment operator
- GPUCoalescer(const GPUCoalescer& obj);
- GPUCoalescer& operator=(const GPUCoalescer& obj);
-
class IssueEvent : public Event
{
private:
@@ -370,6 +366,11 @@ class GPUCoalescer : public RubyPort
std::vector<Stats::Histogram *> m_InitialToForwardDelayHist;
std::vector<Stats::Histogram *> m_ForwardToFirstResponseDelayHist;
std::vector<Stats::Histogram *> m_FirstResponseToCompletionDelayHist;
+
+private:
+ // Private copy constructor and assignment operator
+ GPUCoalescer(const GPUCoalescer& obj);
+ GPUCoalescer& operator=(const GPUCoalescer& obj);
};
inline std::ostream&
diff --git a/src/mem/ruby/system/GPUCoalescer.py b/src/mem/ruby/system/GPUCoalescer.py
index 0c19f875d..101a5fe30 100644
--- a/src/mem/ruby/system/GPUCoalescer.py
+++ b/src/mem/ruby/system/GPUCoalescer.py
@@ -36,7 +36,7 @@ from m5.params import *
from m5.proxy import *
from Sequencer import *
-class RubyGPUCoalescer(RubySequencer):
+class RubyGPUCoalescer(RubyPort):
type = 'RubyGPUCoalescer'
cxx_class = 'GPUCoalescer'
cxx_header = "mem/ruby/system/GPUCoalescer.hh"
@@ -46,3 +46,11 @@ class RubyGPUCoalescer(RubySequencer):
"max requests (incl. prefetches) outstanding")
assume_rfo = Param.Bool(True, "assume protocol implementes Read for "
"Ownership coherence");
+
+ icache = Param.RubyCache("")
+ dcache = Param.RubyCache("")
+ deadlock_threshold = Param.Cycles(500000,
+ "max outstanding cycles for a request before " \
+ "deadlock/livelock declared")
+ garnet_standalone = Param.Bool(False, "")
+ dcache_hit_latency = Param.Cycles(1, "Data cache hit latency")