----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.gem5.org/r/2902/#review6669 -----------------------------------------------------------
Brandon, overall I would suggest, if it is possible, that you spend sometime on making RubySystem a sim object. That way you would not require to copy the pointer to so many places. I think objects that need clock really should be clocked objects themselves or hold pointer to some real clocked object. RubySystem is really a glue object which should not have a clock of its own. src/mem/ruby/network/MessageBuffer.hh (line 48) <http://reviews.gem5.org/r/2902/#comment5776> Why is RubySystem required here? If you can, move it to MessageBuffer.cc. src/mem/ruby/profiler/AddressProfiler.hh (line 53) <http://reviews.gem5.org/r/2902/#comment5777> ?? src/mem/ruby/profiler/Profiler.cc (line 69) <http://reviews.gem5.org/r/2902/#comment5778> OK. Pass this pointer here and in AddressProfiler.cc, directly make the function call on the Profiler. src/mem/ruby/structures/BankedArray.cc (line 74) <http://reviews.gem5.org/r/2902/#comment5779> I strongly suggest that you write a patch that is applied before this ruby system patch. The new patch would do away with this tick handling. Everything should be handled in Cycles. The function tryAccess() would receive a current cycle time value as input, which means that curTick() would not be called. When CacheMemory object calls tryAccess(), either CacheMemory should itself receive a current cycle value as input, or CacheMemory itself should be converted to a ClockedObject. Ultimately the BankedArray class should not require ruby system at all. src/mem/ruby/structures/Cache.py (line 50) <http://reviews.gem5.org/r/2902/#comment5780> This should not be done. Please write a patch that either makes CacheMemory into a ClockedObject or get the time value from its controller. src/mem/slicc/symbols/StateMachine.py (line 41) <http://reviews.gem5.org/r/2902/#comment5781> Really! How come Brad and Steve not chide you for this? - Nilay Vaish On June 26, 2015, 5:37 p.m., Brandon Potter wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.gem5.org/r/2902/ > ----------------------------------------------------------- > > (Updated June 26, 2015, 5:37 p.m.) > > > Review request for Default. > > > Repository: gem5 > > > Description > ------- > > Changeset 10877:2e6e2150542a > --------------------------- > ruby: removes g_system_ptr and replaces with object based references > > > Diffs > ----- > > src/mem/ruby/common/Global.hh ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/common/Global.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/network/MessageBuffer.hh > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/network/MessageBuffer.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/network/simple/Throttle.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/profiler/AddressProfiler.hh > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/profiler/AddressProfiler.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/profiler/Profiler.hh ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/profiler/Profiler.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/BankedArray.hh > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/BankedArray.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/Cache.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/CacheMemory.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/RubyMemoryControl.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/WireBuffer.hh > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/WireBuffer.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/structures/WireBuffer.py > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/DMASequencer.hh > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/DMASequencer.cc > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/RubyPort.hh ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/RubyPort.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/Sequencer.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/Sequencer.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/System.hh ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/ruby/system/System.cc ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/slicc/symbols/StateMachine.py > ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > src/mem/slicc/symbols/Type.py ebb3d0737aa72ec4fa24b6af9cf9a6b2a1109d18 > > Diff: http://reviews.gem5.org/r/2902/diff/ > > > Testing > ------- > > > Thanks, > > Brandon Potter > > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
