Brad, given current versions of MESI_CMP_directory.py and Ruby.py, the
following change to the way cache memory is added to the system creates a
loop. What am I missing here?

class RubyAbstractMemory(SimObject):
    type = 'RubyAbstractMemory'
    cxx_class = 'AbstractMemory'
    system = Param.RubySystem(Parent.any,"Ruby System");

class RubyCache(RubyAbstractMemory):
    type = 'RubyCache'
    cxx_class = 'CacheMemory'
    size = Param.MemorySize("capacity in bytes");
    latency = Param.Int("");
    assoc = Param.Int("");
    replacement_policy = Param.String("PSEUDO_LRU", "");
    start_index_bit = Param.Int(6, "index start, default 6 for 64-byte
line");

--
Nilay

On Tue, March 8, 2011 6:35 pm, Steve Reinhardt wrote:
> It probably means that two objects have pointers to each other as
> parameters
> (or more generally there's a cycle).  See step 3 here:
> http://m5sim.org/wiki/index.php/SimObject_Initialization
>
>
> On Tue, Mar 8, 2011 at 4:27 PM, Nilay Vaish <ni...@cs.wisc.edu> wrote:
>
>> When does the following error occurs? Is it that an object is being
>> accessed while it is being created?
>>
>>
>> File "/afs/
>> cs.wisc.edu/u/n/i/nilay/private/Architecture/GEM5/m5/src/python/m5/SimObject.py",
>> line 834, in getCCObject
>>    raise RuntimeError, "%s: Cycle found in configuration hierarchy." \
>> RuntimeError: system.l1_cntrl0.L1DcacheMemory: Cycle found in
>> configuration
>> hierarchy.
>>
>>
>> --
>> Nilay
>>
>>

_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to