summaryrefslogtreecommitdiff
path: root/src/mem/ruby/system/System.cc
AgeCommit message (Collapse)Author
2010-08-20ruby: Reset ruby stats in RubySystem unserializeBrad Beckmann
The main purpose for clearing stats in the unserialize process is so that the profiler can correctly set its start time to the unserialized value of curTick.
2010-06-10ruby: get rid of Vector and use STLNathan Binkert
add a couple of helper functions to base for deleteing all pointers in a container and outputting containers to a stream
2010-04-02ruby: get rid of gems_common/util.hh and .cc and use stuff in src/baseNathan Binkert
2010-04-02ruby: get "using namespace" out of headersNathan Binkert
In addition to obvious changes, this required a slight change to the slicc grammar to allow types with :: in them. Otherwise slicc barfs on std::string which we need for the headers that slicc generates.
2010-03-22ruby: style passNathan Binkert
2010-03-21ruby: Added flag to disable mem_vec allocationBrad Beckmann
The RubySystem flag no_mem_vec will disable Ruby from allocating it's memory data array.
2010-03-21ruby: Ruby support for sparse memoryBrad Beckmann
The patch includes direct support for the MI example protocol.
2010-01-29ruby: Removed the old config interfaceBrad Beckmann
Removed the old config interface from RubySystem and libruby.
2010-01-29ruby: Converted Garnet to M5 configurationBrad Beckmann
2010-01-29ruby: convert to M5 MemorySizeBrad Beckmann
Converted both ruby caches and directory memory to use the M5 MemorySize python type.
2010-01-29ruby: added ruby stats printBrad Beckmann
Moved the previous rubymem stats print feature to ruby System so that ruby stats are printed on simulation exit.
2010-01-29ruby: Memory Controller Profiler with new config systemBrad Beckmann
This patch includes a rather substantial change to the memory controller profiler in order to work with the new configuration system. Most noteably, the mem_cntrl_profiler no longer uses a string map, but instead a vector. Eventually this support should be removed from the main profiler and go into a separate object. Each memory controller should have a pointer to that new mem_cntrl profile object.
2010-01-29ruby: Wrapped ruby events into m5 eventsBrad Beckmann
Wrapped ruby events using the m5 event object. Removed the prio_heap from ruby's event queue and instead schedule ruby events on the m5 event queue.
2010-01-29ruby: Removed the tech_nm variable from RubySystemBrad Beckmann
2010-01-29ruby: Added clock to ruby systemBrad Beckmann
As a first step to migrate ruby to the M5 eventqueue, added a clock variable to the ruby system.
2010-01-29ruby: Calculate system total memory capacity in PythonSteve Reinhardt
rather than in RubySystem object.
2010-01-29ruby: Convert most Ruby objects to M5 SimObjects.Steve Reinhardt
The necessary companion conversion of Ruby objects generated by SLICC are converted to M5 SimObjects in the following patch, so this patch alone does not compile. Conversion of Garnet network models is also handled in a separate patch; that code is temporarily disabled from compiling to allow testing of interim code.
2009-11-18ruby: added sequencer stats to track what requests are waiting onDerek Hower
2009-07-29ruby: fixed clearStatsDerek Hower
2009-07-20ruby: moved cache stats from Profiler to CacheMemoryDerek Hower
Caches are now responsible for their own statistic gathering. This requires a direct callback from the protocol on misses, and so all future protocols need to take this into account.
2009-07-18ruby: removed all refs to old RubyConfigDerek Hower
2009-07-06ruby: apply some fixes that were overwritten by the recent ruby import.Nathan Binkert
2009-07-06ruby: Import the latest ruby changes from gems.Nathan Binkert
This was done with an automated process, so there could be things that were done in this tree in the past that didn't make it. One known regression is that atomic memory operations do not seem to work properly anymore.
2009-07-06ruby: replace strings that were missed in original ruby import.Nathan Binkert
2009-05-11ruby: Working M5 interface and updated Ruby interface.Daniel Sanchez
This changeset also includes a lot of work from Derek Hower <drh5@cs.wisc.edu> RubyMemory is now both a driver for Ruby and a port for M5. Changed makeRequest/hitCallback interface. Brought packets (superficially) into the sequencer. Modified tester infrastructure to be packet based. and Ruby can be used together through the example ruby_se.py script. SPARC parallel applications work, and the timing *seems* right from combined M5/Ruby debug traces. To run, % build/ALPHA_SE/m5.debug configs/example/ruby_se.py -c tests/test-progs/hello/bin/alpha/linux/hello -n 4 -t
2009-05-11ruby: Make ruby #includes use full paths to the files they're including.Nathan Binkert
This basically means changing all #include statements and changing autogenerated code so that it generates the correct paths. Because slicc generates #includes, I had to hard code the include paths to mem/protocol.
2009-05-11ruby: remove unnecessary code.Dan Gibson
1) Removing files from the ruby build left some unresovled symbols. Those have been fixed. 2) Most of the dependencies on Simics data types and the simics interface files have been removed. 3) Almost all mention of opal is gone. 4) Huge chunks of LogTM are now gone. 5) Handling 1-4 left ~hundreds of unresolved references, which were fixed, yielding a snowball effect (and the massive size of this delta).
2009-05-11ruby: Removed System name clash by renaming ruby's System to RubySystemDaniel Sanchez
2009-05-11ruby: Import ruby and slicc from GEMSNathan Binkert
We eventually plan to replace the m5 cache hierarchy with the GEMS hierarchy, but for now we will make both live alongside eachother.