gem5/src/mem/ruby/structures
Andreas Hansson 2698e73966 base: Use the global Mersenne twister throughout
This patch tidies up random number generation to ensure that it is
done consistently throughout the code base. In essence this involves a
clean-up of Ruby, and some code simplifications in the traffic
generator.

As part of this patch a bunch of skewed distributions (off-by-one etc)
have been fixed.

Note that a single global random number generator is used, and that
the object instantiation order will impact the behaviour (the sequence
of numbers will be unaffected, but if module A calles random before
module B then they would obviously see a different outcome). The
dependency on the instantiation order is true in any case due to the
execution-model of gem5, so we leave it as is. Also note that the
global ranom generator is not thread safe at this point.

Regressions using the memtest, TrafficGen or any Ruby tester are
affected and will be updated accordingly.
2014-09-03 07:42:54 -04:00
..
AbstractReplacementPolicy.hh ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
BankedArray.cc ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
BankedArray.hh ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
Cache.py ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
CacheMemory.cc ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
CacheMemory.hh ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
DirectoryMemory.cc ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
DirectoryMemory.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
DirectoryMemory.py ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
LRUPolicy.hh ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
MemoryControl.cc ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
MemoryControl.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
MemoryControl.py ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
MemoryNode.cc ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
MemoryNode.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
MemoryVector.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
PerfectCacheMemory.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
PersistentTable.cc ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
PersistentTable.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
Prefetcher.cc ruby: replace Time with Cycles (final patch in the series) 2013-02-10 21:43:10 -06:00
Prefetcher.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
PseudoLRUPolicy.hh ruby: remove typedef of Index as int64 2014-09-01 16:55:50 -05:00
RubyMemoryControl.cc base: Use the global Mersenne twister throughout 2014-09-03 07:42:54 -04:00
RubyMemoryControl.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
RubyMemoryControl.py ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
RubyPrefetcher.py ruby: add a prefetcher 2012-12-11 10:05:54 -06:00
SConscript ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
SparseMemory.cc ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
SparseMemory.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
TBETable.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
TimerTable.cc ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
TimerTable.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
WireBuffer.cc ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
WireBuffer.hh ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00
WireBuffer.py ruby: move files from ruby/system to ruby/structures 2014-09-01 16:55:40 -05:00