Hi,

The tag and data access latency you are seeing in 
\`src/mem/ruby/structures/RubyCache.py\` are actually not implemented by the 
RubyCache itself. Instead, SLICC machines query these parameters using the 
getTagLatency and getDataLatency member functions of the CacheMemory SimObject 
(these functions can be called from SLICC). If your machine decides to ignore 
these parameters, which is perfectly fine if you want your machine’s timings to 
be independent from the cache memory behavior, then these parameters won’t have 
any effect.

As for how does python SimObject’s work under the hood, this is a complex 
topic. Usually, you only need to understand that python SimObjects define a 
bunch of typed parameters (the \`param = Param.<Type>(…)\` attrinutes) that you 
can set using the \`obj.param = value\` and that will automagically be passed 
as constructor parameters to the corresponding C++ SimObject. The actual 
behavior is implemented on the C++ side.

Regards,

Gabriel
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to