ruby: removed all refs to old RubyConfig
authorDerek Hower <drh5@cs.wisc.edu>
Sat, 18 Jul 2009 23:20:03 +0000 (18:20 -0500)
committerDerek Hower <drh5@cs.wisc.edu>
Sat, 18 Jul 2009 23:20:03 +0000 (18:20 -0500)
45 files changed:
src/mem/ruby/buffers/MessageBuffer.cc
src/mem/ruby/common/Address.hh
src/mem/ruby/common/NetDest.cc
src/mem/ruby/common/NetDest.hh
src/mem/ruby/common/Set.cc
src/mem/ruby/common/Set.hh
src/mem/ruby/common/SubBlock.hh
src/mem/ruby/config/RubyConfig.cc [deleted file]
src/mem/ruby/config/RubyConfig.hh [deleted file]
src/mem/ruby/eventqueue/RubyEventQueue.cc
src/mem/ruby/filters/AbstractBloomFilter.hh
src/mem/ruby/filters/BlockBloomFilter.hh
src/mem/ruby/filters/BulkBloomFilter.hh
src/mem/ruby/filters/GenericBloomFilter.cc
src/mem/ruby/filters/GenericBloomFilter.hh
src/mem/ruby/filters/H3BloomFilter.hh
src/mem/ruby/filters/LSB_CountingBloomFilter.hh
src/mem/ruby/filters/MultiBitSelBloomFilter.hh
src/mem/ruby/filters/MultiGrainBloomFilter.hh
src/mem/ruby/filters/NonCountingBloomFilter.hh
src/mem/ruby/network/Network.hh
src/mem/ruby/network/garnet-flexible-pipeline/NetworkConfig.hh
src/mem/ruby/network/simple/PerfectSwitch.cc
src/mem/ruby/network/simple/SimpleNetwork.cc
src/mem/ruby/network/simple/Throttle.cc
src/mem/ruby/network/simple/Topology.cc
src/mem/ruby/profiler/AccessTraceForAddress.hh
src/mem/ruby/profiler/Profiler.cc
src/mem/ruby/profiler/Profiler.hh
src/mem/ruby/profiler/StoreTrace.hh
src/mem/ruby/recorder/Tracer.cc
src/mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh
src/mem/ruby/slicc_interface/RubySlicc_Util.hh
src/mem/ruby/system/AbstractMemOrCache.hh
src/mem/ruby/system/CacheMemory.hh
src/mem/ruby/system/DirectoryMemory.cc
src/mem/ruby/system/PerfectCacheMemory.hh
src/mem/ruby/system/Sequencer.cc
src/mem/ruby/system/Sequencer.hh
src/mem/ruby/system/System.cc
src/mem/ruby/system/System.hh
src/mem/ruby/tester/RaceyPseudoThread.cc
src/mem/slicc/ast/EnqueueStatementAST.cc
src/mem/slicc/symbols/StateMachine.cc
src/mem/slicc/symbols/Type.cc

index 7e2715ff98995e2cbd94370316886c0033c331a1..3928e94e60d08fef6bfb2cbc6bd210ab9c8b0047 100644 (file)
@@ -32,7 +32,6 @@
  */
 
 #include "mem/ruby/buffers/MessageBuffer.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/system/System.hh"
 
 MessageBuffer::MessageBuffer()
@@ -323,7 +322,6 @@ void MessageBuffer::clear()
 
 void MessageBuffer::recycle()
 {
-  //  const int RubyConfig::getRecycleLatency() = 3;
   DEBUG_MSG(QUEUE_COMP,MedPrio,"recycling " + m_name);
   assert(isReady());
   MessageBufferNode node = m_prio_heap.extractMin();
index b6899d1accb191bfa9dab564dedc3868333979f9..c48152354cae509e1fb008bb69b6ba511b0a6ecd 100644 (file)
@@ -107,16 +107,6 @@ private:
 inline
 Address line_address(const Address& addr) { Address temp(addr); temp.makeLineAddress(); return temp; }
 
-/*
-inline
-Address next_stride_address(const Address& addr, int stride) {
-  Address temp = addr;
-  temp.makeNextStrideAddress(stride);
-  temp.setAddress(temp.maskHighOrderBits(ADDRESS_WIDTH-RubyConfig::memorySizeBits()));  // surpress wrap-around problem
-  return temp;
-}
-*/
-
 // Output operator declaration
 ostream& operator<<(ostream& out, const Address& obj);
 // comparison operator declaration
@@ -207,17 +197,6 @@ integer_t Address::memoryModuleIndex() const
 {
   integer_t index = bitSelect(RubySystem::getBlockSizeBits()+RubySystem::getMemorySizeBits(), ADDRESS_WIDTH);
   assert (index >= 0);
-  /*
-  if (index >= RubyConfig::memoryModuleBlocks()) {
-    cerr << " memoryBits: " << RubySystem::getMemorySizeBits() << " memorySizeBits: " << RubySystem::getMemorySizeBits()
-         << " Address: " << "[" << hex << "0x" << m_address << "," << " line 0x" << maskLowOrderBits(RubySystem::getBlockSizeBits()) << dec << "]" << flush
-         << "error: limit exceeded. " <<
-      " getDataBlockBits: " << RubySystem::getBlockSizeBits() <<
-      " memoryModuleBlocks: " << RubyConfig::memoryModuleBlocks() <<
-      " index: " << index << endl;
-  }
-  assert (index < RubyConfig::memoryModuleBlocks());
-  */
   return index;
 
   //  Index indexHighPortion = address.bitSelect(MEMORY_SIZE_BITS-1, PAGE_SIZE_BITS+NUMBER_OF_MEMORY_MODULE_BITS);
index 390d5ee8e76bd95275855a9c09843dbb39946839..32771235fff9cdd84bca2fd089f60794f30ec961 100644 (file)
@@ -37,7 +37,6 @@
  */
 
 #include "mem/ruby/common/NetDest.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/protocol/Protocol.hh"
 
 NetDest::NetDest()
index 20aac51086ad2ac0f2f8676cc46504f081b6e269..1dcee7b7ae4d36b77aecdef605db9c0e20c77f1a 100644 (file)
@@ -48,7 +48,6 @@
 #include "mem/gems_common/Vector.hh"
 #include "mem/ruby/system/NodeID.hh"
 #include "mem/ruby/system/MachineID.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Set.hh"
 #include "mem/protocol/MachineType.hh"
 
index 2c64ad3bcf696fa63aad9f7ad8ec6d604120da0d..f7dd243563e213992f4107e4a1f4e64e4b3369b4 100644 (file)
@@ -41,7 +41,6 @@
 
 #include "mem/ruby/common/Set.hh"
 #include "mem/ruby/system/System.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 
 #if __amd64__ || __LP64__
 #define __64BITS__
@@ -512,7 +511,7 @@ void Set::setSize(int size)
 #endif // __32BITS__
 
   // decide whether to use dynamic or static alloction
-  if(m_nArrayLen<=NUMBER_WORDS_PER_SET) { // constant defined in RubyConfig.hh
+  if(m_nArrayLen<=NUMBER_WORDS_PER_SET) { // constant defined in RubySystem.hh
     // its OK to use the static allocation, and it will
     // probably be faster (as m_nArrayLen is already in the
     // cache and they will probably share the same cache line)
index 43fa5b45ef57ae7985dd30eb87091e3151792e06..a22da914c0b9569ee6e939e983c96b8ec09af145 100644 (file)
 #ifndef SET_H
 #define SET_H
 
+#include "mem/ruby/system/System.hh"
 #include "mem/ruby/common/Global.hh"
 #include "mem/gems_common/Vector.hh"
 #include "mem/ruby/system/NodeID.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 
 // gibson 05/20/05
 // enum PresenceBit {NotPresent, Present};
index 3bc09e1d0955496c5edff750cc4febca59804967..753666a170219cb25188256ff650137c2e40308f 100644 (file)
@@ -37,7 +37,6 @@
 
 #include "mem/ruby/common/Global.hh"
 #include "mem/ruby/common/Address.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/DataBlock.hh"
 #include "mem/gems_common/Vector.hh"
 
diff --git a/src/mem/ruby/config/RubyConfig.cc b/src/mem/ruby/config/RubyConfig.cc
deleted file mode 100644 (file)
index 4ecec4d..0000000
+++ /dev/null
@@ -1,250 +0,0 @@
-
-/*
- * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/*
- * RubyConfig.cc
- *
- * Description: See RubyConfig.hh
- *
- * $Id$
- *
- */
-
-#include "mem/ruby/config/RubyConfig.hh"
-//#include "mem/protocol/protocol_name.hh"
-#include "mem/gems_common/util.hh"
-
-#define CONFIG_DEF_FILE "mem/ruby/config/config.hh"
-
-#define ERROR_MSG(MESSAGE)\
-{\
-    cerr << "Fatal Error: in fn "\
-         << __PRETTY_FUNCTION__ << " in "\
-         << __FILE__ << ":"\
-         << __LINE__ << ": "\
-         << (MESSAGE) << endl << flush;\
-    abort();\
-}
-
-// declare all configuration variables
-#define PARAM_BOOL( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  bool RubyConfig::m_##NAME = DEFAULT_VALUE;
-#define PARAM_STRING( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  const char* RubyConfig::m_##NAME = DEFAULT_VALUE;
-#define PARAM_ULONG( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  uint64 RubyConfig::m_##NAME = DEFAULT_VALUE;
-#define PARAM( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  int RubyConfig::m_##NAME = DEFAULT_VALUE;
-#define PARAM_ARRAY( NAME, TYPE, DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  TYPE* RubyConfig::m_##NAME = NULL;
-#define PARAM_ARRAY2D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  TYPE** RubyConfig::m_##NAME = NULL;
-#define PARAM_ARRAY3D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, D3_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  TYPE*** RubyConfig::m_##NAME = NULL;
-#include CONFIG_DEF_FILE
-#undef PARAM_BOOL
-#undef PARAM_STRING
-#undef PARAM_ULONG
-#undef PARAM
-#undef PARAM_ARRAY
-#undef PARAM_ARRAY2D
-#undef PARAM_ARRAY3D
-
-#define CHECK_POWER_OF_2(N) { if (!is_power_of_2(N)) { ERROR_MSG(#N " must be a power of 2."); }}
-#define CHECK_ZERO(N) { if (N != 0) { ERROR_MSG(#N " must be zero at initialization."); }}
-#define CHECK_NON_ZERO(N) { if (N == 0) { ERROR_MSG(#N " must be non-zero."); }}
-
-uint32 RubyConfig::m_data_block_mask;
-
-void RubyConfig::reset()
-{
- #define PARAM_BOOL( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = DEFAULT_VALUE;
-#define PARAM_STRING( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = DEFAULT_VALUE;
-#define PARAM_ULONG( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = DEFAULT_VALUE;
-#define PARAM( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = DEFAULT_VALUE;
-#define PARAM_ARRAY( NAME, TYPE, DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = new TYPE[DEFAULT_ARRAY_SIZE]; \
-  for (int i=0; i<DEFAULT_ARRAY_SIZE; i++) \
-    m_##NAME[i] = DEFAULT_VALUE;
-#define PARAM_ARRAY2D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = new TYPE*[D1_DEFAULT_ARRAY_SIZE]; \
-  for (int i=0; i<D1_DEFAULT_ARRAY_SIZE; i++) {       \
-    m_##NAME[i] = new TYPE[D2_DEFAULT_ARRAY_SIZE]; \
-    for (int j=0; j<D2_DEFAULT_ARRAY_SIZE; j++) \
-      m_##NAME[i][j] = DEFAULT_VALUE; \
-  }
-#define PARAM_ARRAY3D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, D3_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  m_##NAME = new TYPE**[D1_DEFAULT_ARRAY_SIZE];                         \
-  for (int i=0; i<D1_DEFAULT_ARRAY_SIZE; i++) {                         \
-    m_##NAME[i] = new TYPE*[D2_DEFAULT_ARRAY_SIZE];                     \
-    for (int j=0; j<D2_DEFAULT_ARRAY_SIZE; j++) {                       \
-      m_##NAME[i][j] = new TYPE[D3_DEFAULT_ARRAY_SIZE];                 \
-      for (int k=0; k<D3_DEFAULT_ARRAY_SIZE; k++)                       \
-        m_##NAME[i][j][k] = DEFUALT_VALUE;                              \
-    }                                                                   \
-  }
-#include CONFIG_DEF_FILE
-#undef PARAM_BOOL
-#undef PARAM_STRING
-#undef PARAM_ULONG
-#undef PARAM
-#undef PARAM_ARRAY
-#undef PARAM_ARRAY2D
-#undef PARAM_ARRAY3D
-}
-
-void RubyConfig::init()
-{
-  /*
-  // MemoryControl:
-  CHECK_NON_ZERO(m_MEM_BUS_CYCLE_MULTIPLIER);
-  CHECK_NON_ZERO(m_BANKS_PER_RANK);
-  CHECK_NON_ZERO(m_RANKS_PER_DIMM);
-  CHECK_NON_ZERO(m_DIMMS_PER_CHANNEL);
-  CHECK_NON_ZERO(m_BANK_QUEUE_SIZE);
-  CHECK_NON_ZERO(m_BankBusyTime);
-  CHECK_NON_ZERO(m_MEM_CTL_LATENCY);
-  CHECK_NON_ZERO(m_REFRESH_PERIOD);
-  CHECK_NON_ZERO(m_BASIC_BUS_BUSY_TIME);
-
-  CHECK_POWER_OF_2(m_BANKS_PER_RANK);
-  CHECK_POWER_OF_2(m_RANKS_PER_DIMM);
-  CHECK_POWER_OF_2(m_DIMMS_PER_CHANNEL);
-
-  CHECK_NON_ZERO(m_MemorySizeBytes);
-  //  CHECK_NON_ZERO(m_DATA_BLOCK_BYTES);
-  CHECK_NON_ZERO(m_NUM_PROCESSORS);
-  CHECK_NON_ZERO(m_ProcsPerChip);
-
-  if (m_NUM_L2_BANKS == 0) {  // defaults to number of ruby nodes
-    m_NUM_L2_BANKS = m_NUM_PROCESSORS;
-  }
-  if (m_NUM_MEMORIES == 0) {  // defaults to number of ruby nodes
-    m_NUM_MEMORIES = m_NUM_PROCESSORS;
-  }
-
-  CHECK_ZERO(m_MEMORY_SIZE_BITS);
-  CHECK_ZERO(m_NUM_PROCESSORS_BITS);
-  CHECK_ZERO(m_NUM_CHIP_BITS);
-  CHECK_ZERO(m_NUM_L2_BANKS_BITS);
-  CHECK_ZERO(m_NUM_MEMORIES_BITS);
-  CHECK_ZERO(m_PROCS_PER_CHIP_BITS);
-  CHECK_ZERO(m_NUM_L2_BANKS_PER_CHIP);
-  CHECK_ZERO(m_NUM_L2_BANKS_PER_CHIP_BITS);
-  CHECK_ZERO(m_NUM_MEMORIES_BITS);
-  CHECK_ZERO(m_MEMORY_MODULE_BLOCKS);
-  CHECK_ZERO(m_MEMORY_MODULE_BITS);
-  CHECK_ZERO(m_NUM_MEMORIES_PER_CHIP);
-
-  CHECK_POWER_OF_2(m_MemorySizeBytes);
-  CHECK_POWER_OF_2(m_NUM_PROCESSORS);
-  CHECK_POWER_OF_2(m_NUM_L2_BANKS);
-  CHECK_POWER_OF_2(m_NUM_MEMORIES);
-  CHECK_POWER_OF_2(m_ProcsPerChip);
-
-  assert(m_NUM_PROCESSORS >= m_ProcsPerChip);  // obviously can't have less processors than procs/chip
-  m_NUM_CHIPS = m_NUM_PROCESSORS/m_ProcsPerChip;
-  assert(m_NUM_L2_BANKS >= m_NUM_CHIPS);  // cannot have a single L2cache across multiple chips
-
-  m_NUM_L2_BANKS_PER_CHIP = m_NUM_L2_BANKS/m_NUM_CHIPS;
-
-  if (m_NUM_CHIPS > m_NUM_MEMORIES) {
-    m_NUM_MEMORIES_PER_CHIP = 1;  // some chips have a memory, others don't
-  } else {
-    m_NUM_MEMORIES_PER_CHIP = m_NUM_MEMORIES/m_NUM_CHIPS;
-  }
-
-  m_NUM_CHIP_BITS = log_int(m_NUM_CHIPS);
-  m_MEMORY_SIZE_BITS = log_int(m_MemorySizeBytes);
-
-  m_data_block_mask = ~ (~0 << m_DATA_BLOCK_BITS);
-
-  m_NUM_PROCESSORS_BITS = log_int(m_NUM_PROCESSORS);
-  m_NUM_L2_BANKS_BITS = log_int(m_NUM_L2_BANKS);
-  m_NUM_L2_BANKS_PER_CHIP_BITS = log_int(m_NUM_L2_BANKS_PER_CHIP);
-  m_NUM_MEMORIES_BITS = log_int(m_NUM_MEMORIES);
-  m_PROCS_PER_CHIP_BITS = log_int(m_ProcsPerChip);
-
-  m_MEMORY_MODULE_BITS = m_MEMORY_SIZE_BITS - m_DATA_BLOCK_BITS - m_NUM_MEMORIES_BITS;
-  m_MEMORY_MODULE_BLOCKS = (int64(1) << m_MEMORY_MODULE_BITS);
-
-  */
-
-  // Randomize the execution
-  //  srandom(m_RandomSeed);
-}
-
-static void print_parameters(ostream& out)
-{
-
-#define print_true(NAME)
-#define print_false(NAME)                                         \
-  out << #NAME << ": " << RubyConfig::get##NAME () << endl
-
-#define PARAM(NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR) { print_##CUSTOM_ACCESSOR(NAME); }
-#define PARAM_UINT(NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR) { print_##CUSTOM_ACCESSOR(NAME); }
-#define PARAM_ULONG(NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR) { print_##CUSTOM_ACCESSOR(NAME); }
-#define PARAM_BOOL(NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR) { print_##CUSTOM_ACCESSOR(NAME); }
-#define PARAM_DOUBLE(NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR) { print_##CUSTOM_ACCESSOR(NAME); }
-#define PARAM_STRING(NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR) { print_##CUSTOM_ACCESSOR(NAME); }
-#define PARAM_ARRAY( NAME, TYPE, DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) { out << #NAME << ": ARRAY" << endl; }
-#define PARAM_ARRAY2D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) { out << #NAME << ": ARRAY2D" << endl; }
-#define PARAM_ARRAY3D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, D3_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) { out << #NAME << ": ARRAY3D" << endl; }
-#include "mem/ruby/config/config.hh"
-#undef PARAM
-#undef PARAM_UINT
-#undef PARAM_ULONG
-#undef PARAM_BOOL
-#undef PARAM_DOUBLE
-#undef PARAM_STRING
-#undef PARAM_ARRAY
-#undef PARAM_ARRAY2D
-#undef PARAM_ARRAY3D
-}
-
-void RubyConfig::printConfiguration(ostream& out) {
-  out << "Ruby Configuration" << endl;
-  out << "------------------" << endl;
-
-  //out << "protocol: " << CURRENT_PROTOCOL << endl;
-  out << "compiled_at: " << __TIME__ << ", " << __DATE__ << endl;
-  //  out << "RUBY_DEBUG: " << bool_to_string(RUBY_DEBUG) << endl;
-
-  char buffer[100];
-  gethostname(buffer, 50);
-  out << "hostname: " << buffer << endl;
-
-  print_parameters(out);
-}
-
-
diff --git a/src/mem/ruby/config/RubyConfig.hh b/src/mem/ruby/config/RubyConfig.hh
deleted file mode 100644 (file)
index 8ad7333..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-
-/*
- * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/*
- * RubyConfig.hh
- *
- * Description: This class has only static members and class methods,
- * and thus should never need to be instantiated.
- *
- * $Id$
- *
- */
-
-#ifndef RUBYCONFIG_H
-#define RUBYCONFIG_H
-
-#include <cstdlib>
-#include <string>
-#include <ostream>
-#include <assert.h>
-
-#include "mem/ruby/common/TypeDefines.hh"
-
-// Set paramterization
-/*
- * This defines the number of longs (32-bits on 32 bit machines,
- * 64-bit on 64-bit AMD machines) to use to hold the set...
- * the default is 4, allowing 128 or 256 different members
- * of the set.
- *
- * This should never need to be changed for correctness reasons,
- * though increasing it will increase performance for larger
- * set sizes at the cost of a (much) larger memory footprint
- *
- */
-const int NUMBER_WORDS_PER_SET = 4;
-
-using namespace std;
-
-class RubyConfig {
-public:
-
-  // CACHE BLOCK CONFIG VARIBLES
-  static uint32 dataBlockMask() { return m_data_block_mask; }
-
-  static int numberOfDMA() { return 1; }
-  static int numberOfDMAPerChip() { return 1; }
-  static int DMATransitionsPerCycle() { return 1; }
-
-  // SUPPORTED PHYSICAL MEMORY CONFIG VARIABLES
-  //  static int memoryModuleBits() { return m_MEMORY_MODULE_BITS; }
-  //  static int64 memoryModuleBlocks() { return m_MEMORY_MODULE_BLOCKS; }
-
-  // defines the number of simics processors (power of 2)
-  //  static int numberOfProcessors() { return m_NUM_PROCESSORS; }
-  //  static int procsPerChipBits() { return m_PROCS_PER_CHIP_BITS; }
-  //  static int numberOfProcsPerChip() { return m_ProcsPerChip; }
-  //  static int numberOfChips() { return m_NUM_CHIPS; }
-
-  // MACHINE INSTANIATION CONFIG VARIABLES
-  // -------------------------------------
-  // L1 CACHE MACHINES
-  // defines the number of L1banks - idependent of ruby chips (power of 2)
-  // NOTE - no protocols currently supports L1s != processors, just a placeholder
-
-  // DIRECTORY/MEMORY MACHINES
-  // defines the number of ruby memories - idependent of ruby chips (power of 2)
-  //  static int memoryBits() { return m_NUM_MEMORIES_BITS; }
-  //  static int numberOfDirectory() { return numberOfMemories(); }
-  //  static int numberOfMemories() { return m_NUM_MEMORIES; }
-  //  static int numberOfDirectoryPerChip() { return m_NUM_MEMORIES_PER_CHIP; }
-  //  static int DirectoryTransitionsPerCycle() { return m_DIRECTORY_TRANSITIONS_PER_RUBY_CYCLE; }
-
-  // ---- END MACHINE SPECIFIC VARIABLES ----
-
-  // VARIABLE MEMORY RESPONSE LATENCY
-  // *** NOTE *** This is where variation is added to the simulation
-  // see Alameldeen et al. HPCA 2003 for further details
-//  static int getMemoryLatency() { return m_MEMORY_RESPONSE_LATENCY_MINUS_2+(random() % 5); }
-
-  static void reset();
-  static void init();
-  static void printConfiguration(std::ostream& out);
-
-  // Memory Controller
-
-//  static int memBusCycleMultiplier () { return m_MEM_BUS_CYCLE_MULTIPLIER; }
-/*  static int banksPerRank () { return m_BANKS_PER_RANK; }
-  static int ranksPerDimm () { return m_RANKS_PER_DIMM; }
-  static int dimmsPerChannel () { return m_DIMMS_PER_CHANNEL; }
-  static int bankBit0 () { return m_BANK_BIT_0; }
-  static int rankBit0 () { return m_RANK_BIT_0; }
-  static int dimmBit0 () { return m_DIMM_BIT_0; }
-  static int bankQueueSize () { return m_BANK_QUEUE_SIZE; }
-  static int bankBusyTime () { return m_BankBusyTime; }
-  static int rankRankDelay () { return m_RANK_RANK_DELAY; }
-  static int readWriteDelay () { return m_READ_WRITE_DELAY; }
-  static int basicBusBusyTime () { return m_BASIC_BUS_BUSY_TIME; }
-  static int memCtlLatency () { return m_MEM_CTL_LATENCY; }
-  static int refreshPeriod () { return m_REFRESH_PERIOD; }
-  static int tFaw () { return m_TFAW; }
-  static int memRandomArbitrate () { return m_MEM_RANDOM_ARBITRATE; }
-  static int memFixedDelay () { return m_MEM_FIXED_DELAY; }
-*/
-  /* cache accessors */
-  static int getCacheIDFromParams(int level, int num, string split_type) {
-    // TODO:  this function
-    return 0;
-  }
-
-#define accessor_true( TYPE, NAME )
-#define accessor_false( TYPE, NAME )                    \
-  static TYPE get##NAME() { return m_##NAME; }          \
-  static void set##NAME(TYPE val) { m_##NAME = val; }
-
-#define array_accessor_true( TYPE, NAME, DEFAULT_ARRAY_SIZE )
-#define array_accessor_false( TYPE, NAME, DEFAULT_ARRAY_SIZE )          \
-  static TYPE get##NAME(int idx) {                                      \
-    assert(m_##NAME != NULL);                                           \
-    return m_##NAME[idx];                                               \
-  }                                                                     \
-  static void set##NAME(int idx, TYPE val) {                            \
-    if(m_##NAME == NULL) {                                              \
-      assert(DEFAULT_ARRAY_SIZE > 0);                                   \
-      m_##NAME = new TYPE[DEFAULT_ARRAY_SIZE];                          \
-    }                                                                   \
-    m_##NAME[idx] = val;                                                \
-  }
-
-#define array2d_accessor_true( TYPE, NAME )
-#define array2d_accessor_false( TYPE, NAME )                            \
-  static TYPE get##NAME(int idx1, int idx2) { return m_##NAME[idx1][idx2]; } \
-  static void set##NAME(int idx1, int idx2, TYPE val) { m_##NAME[idx1][idx2] = val; }
-
-#define array3d_accessor_true( TYPE, NAME )
-#define array3d_accessor_false( TYPE, NAME )                            \
-  static TYPE get##NAME(int idx1, int idx2, int idx3) { return m_##NAME[idx1][idx2][idx3]; } \
-  static void set##NAME(int idx1, int idx2, int idx3, TYPE val) { m_##NAME[idx1][idx2][idx3] = val; }
-
-#define PARAM( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )   \
-  accessor_##CUSTOM_ACCESSOR(int32,NAME)
-#define PARAM_UINT( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )      \
-  accessor_##CUSTOM_ACCESSOR(uint32,NAME)
-#define PARAM_ULONG( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )     \
-  accessor_##CUSTOM_ACCESSOR(uint64,NAME)
-#define PARAM_BOOL( NAME, DEFAULT_VALUE,CUSTOM_ACCESSOR )       \
-  accessor_##CUSTOM_ACCESSOR(bool,NAME)
-#define PARAM_DOUBLE( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )    \
-  accessor_##CUSTOM_ACCESSOR(double,NAME)
-#define PARAM_STRING( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )    \
-  accessor_##CUSTOM_ACCESSOR(const char*,NAME)
-#define PARAM_ARRAY( NAME, TYPE, DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  array_accessor_##CUSTOM_ACCESSOR(TYPE, NAME, DEFAULT_ARRAY_SIZE)
-#define PARAM_ARRAY2D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  array2d_accessor_##CUSTOM_ACCESSOR(TYPE, NAME)
-#define PARAM_ARRAY3D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, D3_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  array3d_accessor_##CUSTOM_ACCESSOR(TYPE, NAME)
-#include "mem/ruby/config/config.hh"
-#undef PARAM
-#undef PARAM_UINT
-#undef PARAM_ULONG
-#undef PARAM_BOOL
-#undef PARAM_DOUBLE
-#undef PARAM_STRING
-#undef PARAM_ARRAY
-#undef PARAM_ARRAY2D
-#undef PARAM_ARRAY3D
-
-private:
-  static uint32 m_data_block_mask;
-
-#define PARAM( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )   \
-  static int32  m_##NAME;
-#define PARAM_UINT( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )      \
-  static uint32 m_##NAME;
-#define PARAM_ULONG( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )     \
-  static uint64 m_##NAME;
-#define PARAM_BOOL( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )      \
-  static bool   m_##NAME;
-#define PARAM_DOUBLE( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )    \
-  static double m_##NAME;
-#define PARAM_STRING( NAME, DEFAULT_VALUE, CUSTOM_ACCESSOR )    \
-  static const char  *m_##NAME;
-#define PARAM_ARRAY( NAME, TYPE, DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  static TYPE* m_##NAME;
-#define PARAM_ARRAY2D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  static TYPE** m_##NAME;
-#define PARAM_ARRAY3D( NAME, TYPE, D1_DEFAULT_ARRAY_SIZE, D2_DEFAULT_ARRAY_SIZE, D3_DEFAULT_ARRAY_SIZE, DEFAULT_VALUE, CUSTOM_ACCESSOR ) \
-  static TYPE*** m_##NAME;
-#include "mem/ruby/config/config.hh"
-#undef PARAM
-#undef PARAM_UINT
-#undef PARAM_ULONG
-#undef PARAM_BOOL
-#undef PARAM_DOUBLE
-#undef PARAM_STRING
-#undef PARAM_ARRAY
-#undef PARAM_ARRAY2D
-#undef PARAM_ARRAY3D
-
-};
-
-#endif //RUBYCONFIG_H
index 1a4159f1da5386b097e668e6b50710fadb4807c2..3adc0d22ea92c70188bc6e14c579b2fc0ebe4122 100644 (file)
@@ -32,7 +32,6 @@
  */
 
 #include "mem/ruby/eventqueue/RubyEventQueue.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Consumer.hh"
 #include "mem/ruby/profiler/Profiler.hh"
 #include "mem/ruby/system/System.hh"
index 7e37a6e0687a1dce083718c1899f601a5c9b5609..89aeb25a60cf4435484fdf59f504ab6a8c3a67cb 100644 (file)
@@ -39,7 +39,6 @@
 #define ABSTRACT_BLOOM_FILTER_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 
 class AbstractBloomFilter {
index 205b4172d4f39dcddc5237c8f1ffb2bfc56e7d73..be9faa44368762b649d48ffef0c569b2f77b6833 100644 (file)
@@ -40,7 +40,6 @@
 
 #include "mem/gems_common/Map.hh"
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index 2dbdb661238041754c002ede740e0345069d6600..08953179140e6da21c5d3df7fbda7a2e45384900 100644 (file)
@@ -40,7 +40,6 @@
 
 #include "mem/gems_common/Map.hh"
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index f4198ef406175cbd4f257f6d585b0aa41f23803f..22c75d64caf2bca753f7843fff912970d6b56016 100644 (file)
@@ -36,7 +36,6 @@
  */
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 
 #include "mem/ruby/filters/GenericBloomFilter.hh"
index 4ff65f40494487abdcb83cb4cdf47fdd69b0d6f3..edee22f84766bc0040cb401d4db4c3ec6edd6293 100644 (file)
@@ -39,7 +39,6 @@
 #define GENERIC_BLOOM_FILTER_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index cde923b0b4802f1449ce4620e7f661bd76b18ebf..360000540760a377344e02014f9dc1301a3d7a18 100644 (file)
@@ -42,7 +42,6 @@
 #include "mem/ruby/common/Global.hh"
 #include "mem/ruby/system/System.hh"
 #include "mem/ruby/profiler/Profiler.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index 7a0f71fad1e8f03198de94103a850d1fc1d014ba..bfa2673fec119027ee5b8629ed64731f778369f7 100644 (file)
@@ -40,7 +40,6 @@
 
 #include "mem/gems_common/Map.hh"
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index 390b7c37c90527d508c5df9bc6f88a64a6249e76..360cbfdff298d55d318e0de665e6f7d06279697f 100644 (file)
@@ -42,7 +42,6 @@
 #include "mem/ruby/common/Global.hh"
 #include "mem/ruby/system/System.hh"
 #include "mem/ruby/profiler/Profiler.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index 66a32ecd467032bc0c22d5ab19410c5db477ccfb..4e9bc70a2e297b9573c613cf71ab7ad928ae7d6d 100644 (file)
@@ -40,7 +40,6 @@
 
 #include "mem/gems_common/Map.hh"
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index 27045ebc92e3df1ca8087ff4cad3c9b9c3522264..fd23fbdf7db93cc479cc3094e4b894c4bf9b6290 100644 (file)
@@ -40,7 +40,6 @@
 
 #include "mem/gems_common/Map.hh"
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/filters/AbstractBloomFilter.hh"
 
index 5730d659157b4f142f3a21e31c0dd2c4224e0d60..17fbaab225887aade9c838920e6341eef2846c53 100644 (file)
@@ -50,7 +50,6 @@
 #include "mem/ruby/system/NodeID.hh"
 #include "mem/protocol/MessageSizeType.hh"
 #include "mem/ruby/system/System.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 
 class NetDest;
 class MessageBuffer;
index 33af28a7ed5a13095b5ef99bd70284e539fcc0a4..0a450c0023d91eb46d92ea7b01b220d8967b9333 100644 (file)
@@ -40,7 +40,6 @@
 
 #include "mem/ruby/network/garnet-fixed-pipeline/NetworkHeader.hh"
 #include "mem/gems_common/util.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 
 class NetworkConfig {
         private:
@@ -65,80 +64,11 @@ class NetworkConfig {
                      m_using_network_testing = atoi(argv[i+1].c_str());
                   }
                 }
-//              static bool isGarnetNetwork() {return RubyConfig::getUsingGarnetNetwork(); }
-//              static bool isDetailNetwork() {return RubyConfig::getUsingDetailNetwork(); }
                 bool isNetworkTesting() {return m_using_network_testing; }
                 int getFlitSize() {return m_flit_size; }
                 int getNumPipeStages() {return m_number_of_pipe_stages; }
                 int getVCsPerClass() {return m_vcs_per_class; }
                 int getBufferSize() {return m_buffer_size; }
-  // This is no longer used. See config/rubyconfig.defaults to set Garnet parameters.
-                static void readNetConfig()
-                {
-      /*
-                        string filename = "network/garnet-flexible-pipeline/";
-                        filename += NETCONFIG_DEFAULTS;
-
-                if (g_SIMICS) {
-                        filename = "../../../ruby/"+filename;
-                }
-                        ifstream NetconfigFile( filename.c_str(), ios::in);
-                        if(!NetconfigFile.is_open())
-                        {
-                                cout << filename << endl;
-                                cerr << "Network Configuration file cannot be opened\n";
-                                exit(1);
-                        }
-
-                        string line = "";
-
-                        while(!NetconfigFile.eof())
-                        {
-                                getline(NetconfigFile, line, '\n');
-                                string var = string_split(line, ':');
-
-                                if(!var.compare("RubyConfig::getUsingGarnetNetwork()"))
-                                {
-                                        if(!line.compare("true"))
-                                                RubyConfig::getUsingGarnetNetwork() = true;
-                                        else
-                                                RubyConfig::getUsingGarnetNetwork() = false;
-                                }
-                                if(!var.compare("RubyConfig::getUsingDetailNetwork()"))
-                                {
-                                        if(!line.compare("true"))
-                                                RubyConfig::getUsingDetailNetwork() = true;
-                                        else
-                                                RubyConfig::getUsingDetailNetwork() = false;
-                                }
-                                if(!var.compare("g_NETWORK_TESTING"))
-                                {
-                                        if(!line.compare("true"))
-                                                g_NETWORK_TESTING = true;
-                                        else
-                                                g_NETWORK_TESTING = false;
-                                }
-                                if(!var.compare("RubyConfig::getFlitSize()"))
-                                        RubyConfig::getFlitSize() = atoi(line.c_str());
-                                if(!var.compare("RubyConfig::getNumberOfPipeStages()"))
-                                        RubyConfig::getNumberOfPipeStages() = atoi(line.c_str());
-                                if(!var.compare("RubyConfig::getVCSPerClass()"))
-                                        RubyConfig::getVCSPerClass() = atoi(line.c_str());
-                                if(!var.compare("RubyConfig::getBufferSize()"))
-                                        RubyConfig::getBufferSize() = atoi(line.c_str());
-                        }
-                        NetconfigFile.close();
-      */
-      /*
-      cout << "RubyConfig::getUsingGarnetNetwork() = " << RubyConfig::getUsingGarnetNetwork() << endl;
-      cout << "RubyConfig::getUsingDetailNetwork() = " << RubyConfig::getUsingDetailNetwork() << endl;
-      cout << "g_NETWORK_TESTING = " << g_NETWORK_TESTING << endl;
-      cout << "RubyConfig::getFlitSize() = " << RubyConfig::getFlitSize() << endl;
-      cout << "RubyConfig::getNumberOfPipeStages() = " << RubyConfig::getNumberOfPipeStages() << endl;
-      cout << "RubyConfig::getVCSPerClass()= " << RubyConfig::getVCSPerClass() << endl;
-      cout << "RubyConfig::getBufferSize() = " << RubyConfig::getBufferSize() << endl;
-      */
-                }
 };
 
 
index b617ae939936e0f81711b02a4ae7f841cd336d2b..02fc8db2a4c0f88791ceb9c47e93005a6df23f3e 100644 (file)
@@ -88,9 +88,7 @@ void PerfectSwitch::addOutPort(const Vector<MessageBuffer*>& out, const NetDest&
   m_out.insertAtBottom(out);
   m_routing_table.insertAtBottom(routing_table_entry);
 
-  //  if (RubyConfig::getPrintTopology()) {
-    m_out_link_vec.insertAtBottom(out);
-    //  }
+  m_out_link_vec.insertAtBottom(out);
 }
 
 void PerfectSwitch::clearRoutingTables()
@@ -187,7 +185,6 @@ void PerfectSwitch::wakeup()
         assert(m_link_order.size() == m_routing_table.size());
         assert(m_link_order.size() == m_out.size());
 //changed by SS
-//        if (RubyConfig::getAdaptiveRouting()) {
         if (m_network_ptr->getAdaptiveRouting()) {
           if (m_network_ptr->isVNetOrdered(vnet)) {
             // Don't adaptively route
index e5cbfefd82919a77900ce624d644bec929cbb0f3..497c602d130f898eb81315f8bd5f94240533b53c 100644 (file)
@@ -101,42 +101,7 @@ void SimpleNetwork::init(const vector<string> & argv)
   }
   m_topology_ptr->createLinks(false);  // false because this isn't a reconfiguration
 }
-/*
-SimpleNetwork::SimpleNetwork(int nodes)
-{
-  m_nodes = MachineType_base_number(MachineType_NUM);
-
-  m_virtual_networks = RubyConfig::getNumberOfVirtualNetworks();
-  m_endpoint_switches.setSize(m_nodes);
-
-  m_in_use.setSize(m_virtual_networks);
-  m_ordered.setSize(m_virtual_networks);
-  for (int i = 0; i < m_virtual_networks; i++) {
-    m_in_use[i] = false;
-    m_ordered[i] = false;
-  }
 
-  // Allocate to and from queues
-  m_toNetQueues.setSize(m_nodes);
-  m_fromNetQueues.setSize(m_nodes);
-  for (int node = 0; node < m_nodes; node++) {
-    m_toNetQueues[node].setSize(m_virtual_networks);
-    m_fromNetQueues[node].setSize(m_virtual_networks);
-    for (int j = 0; j < m_virtual_networks; j++) {
-      m_toNetQueues[node][j] = new MessageBuffer;
-      m_fromNetQueues[node][j] = new MessageBuffer;
-    }
-  }
-
-  // Setup the network switches
-  m_topology_ptr = new Topology(this, m_nodes);
-  int number_of_switches = m_topology_ptr->numSwitches();
-  for (int i=0; i<number_of_switches; i++) {
-    m_switch_ptr_vector.insertAtBottom(new Switch(i, this));
-  }
-  m_topology_ptr->createLinks(false);  // false because this isn't a reconfiguration
-}
-*/
 void SimpleNetwork::reset()
 {
   for (int node = 0; node < m_nodes; node++) {
index ce69c47bee52a450af7e752c166016b066ebbe6c..64cb2a33a85b52ed8ceaa8db6c52b686ebd05a6d 100644 (file)
@@ -103,9 +103,7 @@ void Throttle::addLinks(const Vector<MessageBuffer*>& in_vec, const Vector<Messa
     }
   }
 
-  //  if (RubyConfig::getPrintTopology()) {
-    m_out_link_vec.insertAtBottom(out_vec);
-    //  }
+  m_out_link_vec.insertAtBottom(out_vec);
 }
 
 void Throttle::addVirtualNetwork(MessageBuffer* in_ptr, MessageBuffer* out_ptr)
index 3535f790b60eed28cff8ccfb9ff9f0a7e3cddef8..dedf79d5870f6fe072dd20511ef196c5934cc83f 100644 (file)
@@ -40,7 +40,6 @@
 #include "mem/ruby/common/NetDest.hh"
 #include "mem/ruby/network/Network.hh"
 #include "mem/protocol/TopologyType.hh"
-//#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/gems_common/util.hh"
 #include "mem/protocol/MachineType.hh"
 #include "mem/protocol/Protocol.hh"
@@ -294,82 +293,6 @@ void Topology::createLinks(bool isReconfiguration)
     }
   }
 }
-/*
-void Topology::makeSwitchesPerChip(Vector< Vector < SwitchID > > &nodePairs, Vector<int> &latencies, Vector<int> &bw_multis, int numberOfChipSwitches)
-{
-
-  Vector < SwitchID > nodes;  // temporary buffer
-  nodes.setSize(2);
-
-  Vector<bool> endpointConnectionExist;  // used to ensure all endpoints are connected to the network
-  endpointConnectionExist.setSize(m_nodes);
-  // initialize endpoint check vector
-  for (int k = 0; k < endpointConnectionExist.size(); k++) {
-    endpointConnectionExist[k] = false;
-  }
-
-  Vector<int> componentCount;
-  componentCount.setSize(MachineType_NUM);
-  for (MachineType mType = MachineType_FIRST; mType < MachineType_NUM; ++mType) {
-    componentCount[mType] = 0;
-  }
-
-  // components to/from network links
-  // TODO: drh5: bring back chips!!!
-  for (int chip = 0; chip < RubyConfig::getNumberOfChips(); chip++) {
-    for (MachineType mType = MachineType_FIRST; mType < MachineType_NUM; ++mType) {
-      for (int component = 0; component < MachineType_base_count(mType); component++) {
-
-        int latency = -1;
-        int bw_multiplier = -1;  // internal link bw multiplier of the global bandwidth
-        if (mType != MachineType_Directory) {
-          latency = RubyConfig::getOnChipLinkLatency();  // internal link latency
-          bw_multiplier = 10;  // internal link bw multiplier of the global bandwidth
-        } else {
-          latency = RubyConfig::getNetworkLinkLatency();  // local memory latency
-          bw_multiplier = 1;  // local memory link bw multiplier of the global bandwidth
-        }
-        nodes[0] = MachineType_base_number(mType)+componentCount[mType];
-        nodes[1] = chip+m_nodes*2; // this is the chip's internal switch id #
-
-        // insert link
-        nodePairs.insertAtBottom(nodes);
-        latencies.insertAtBottom(latency);
-        bw_multis.insertAtBottom(bw_multiplier);
-        //bw_multis.insertAtBottom(componentCount[mType]+MachineType_base_number((MachineType)mType));
-
-        // opposite direction link
-        Vector < SwitchID > otherDirectionNodes;
-        otherDirectionNodes.setSize(2);
-        otherDirectionNodes[0] = nodes[1];
-        otherDirectionNodes[1] = nodes[0]+m_nodes;
-        nodePairs.insertAtBottom(otherDirectionNodes);
-        latencies.insertAtBottom(latency);
-        bw_multis.insertAtBottom(bw_multiplier);
-
-        assert(!endpointConnectionExist[nodes[0]]);
-        endpointConnectionExist[nodes[0]] = true;
-        componentCount[mType]++;
-      }
-    }
-  }
-
-  // make sure all enpoints are connected in the soon to be created network
-  for (int k = 0; k < endpointConnectionExist.size(); k++) {
-    if (endpointConnectionExist[k] == false) {
-      cerr << "Error: Unconnected Endpoint: " << k << endl;
-      exit(1);
-    }
-  }
-
-  // secondary check to ensure we saw the correct machine counts
-  for (MachineType mType = MachineType_FIRST; mType < MachineType_NUM; ++mType) {
-    assert(componentCount[mType] == MachineType_base_count((MachineType)mType));
-  }
-
-}
-*/
-
 
 SwitchID Topology::newSwitchID()
 {
index 5bb0cc5455e6ebcbb2e5389d71a85a311436e208..2761d6de87be795779576574971f0bdcf59be2b6 100644 (file)
@@ -38,7 +38,6 @@
 #define ACCESSTRACEFORADDRESS_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/protocol/CacheRequestType.hh"
 #include "mem/protocol/AccessModeType.hh"
index e067d3a0f3f0b0ad55f5572bbc5ae2b438500f3a..51e3e839881f1b11b9d24eb2d65de3a5dd3d90eb 100644 (file)
@@ -98,31 +98,6 @@ Profiler::Profiler(const string & name)
   m_stats_period = 1000000; // Default
   m_periodic_output_file_ptr = &cerr;
 
-//changed by SS
-/*
-  // for MemoryControl:
-  m_memReq = 0;
-  m_memBankBusy = 0;
-  m_memBusBusy = 0;
-  m_memReadWriteBusy = 0;
-  m_memDataBusBusy = 0;
-  m_memTfawBusy = 0;
-  m_memRefresh = 0;
-  m_memRead = 0;
-  m_memWrite = 0;
-  m_memWaitCycles = 0;
-  m_memInputQ = 0;
-  m_memBankQ = 0;
-  m_memArbWait = 0;
-  m_memRandBusy = 0;
-  m_memNotOld = 0;
-
-
-  int totalBanks = RubyConfig::banksPerRank()
-                 * RubyConfig::ranksPerDimm()
-                 * RubyConfig::dimmsPerChannel();
-  m_memBankCount.setSize(totalBanks);
-*/
 }
 
 Profiler::~Profiler()
@@ -870,7 +845,7 @@ void Profiler::addAddressTraceSample(const CacheMsg& msg, NodeID id)
     // Note: The following line should be commented out if you want to
     // use the special profiling that is part of the GS320 protocol
 
-    // NOTE: Unless PROFILE_HOT_LINES or RubyConfig::getProfileAllInstructions() are enabled, nothing will be profiled by the AddressProfiler
+    // NOTE: Unless PROFILE_HOT_LINES is enabled, nothing will be profiled by the AddressProfiler
     m_address_profiler_ptr->addTraceSample(msg.getLineAddress(), msg.getProgramCounter(), msg.getType(), msg.getAccessMode(), id, false);
   }
 }
index 4731c71389340b06bccab674d65a191ea7778d72..e04994fcbb706c6725d9b682a2a2cce0a0f06fb7 100644 (file)
@@ -58,7 +58,6 @@
 
 #include "mem/ruby/common/Global.hh"
 #include "mem/protocol/GenericMachineType.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Histogram.hh"
 #include "mem/ruby/common/Consumer.hh"
 #include "mem/protocol/AccessModeType.hh"
index a716363640117cbcc3cba23a6f75c69e0003898b..5cdf7ce41ca0c1e4faf03d918972e58d233ab083 100644 (file)
@@ -38,7 +38,6 @@
 #define StoreTrace_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/common/Histogram.hh"
 
index 5b1e4274be28e9e4236d5f5995e311744514b184..a0a3b22b7fea901a07b78d0c28b33f158273a443 100644 (file)
@@ -37,7 +37,6 @@
 #include "mem/ruby/eventqueue/RubyEventQueue.hh"
 #include "mem/gems_common/PrioHeap.hh"
 #include "mem/ruby/system/System.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 
 //added by SS
 Tracer::Tracer(const string & name)
@@ -130,8 +129,8 @@ int Tracer::playbackTrace(string filename)
     ok = record.input(in);
 
     // Clear the statistics after warmup
-/*    if (counter == RubyConfig::getTraceWarmupLength()) {
-      cout << "Clearing stats after warmup of length " << RubyConfig::getTraceWarmupLength() << endl;
+/*    if (counter == m_warmup_length) {
+      cout << "Clearing stats after warmup of length " << m_warmup_length << endl;
       g_system_ptr->clearStats();
     }
 */
index 9ece7ae65b402042fb5d5665c9bcb9f48be71c53..cd3cdbe489f9327772f35753d85e37dfda4748b8 100644 (file)
@@ -35,7 +35,6 @@
 #define COMPONENTMAPPINGFNS_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/system/NodeID.hh"
 #include "mem/ruby/system/MachineID.hh"
 #include "mem/ruby/common/Address.hh"
 #define MACHINETYPE_L3CACHE_ENUM MachineType_NUM
 #endif
 
-/*
-#ifdef MACHINETYPE_PersistentArbiter
-#define MACHINETYPE_PERSISTENTARBITER_ENUM MachineType_PersistentArbiter
-#else
-#define MACHINETYPE_PERSISTENTARBITER_ENUM MachineType_NUM
-#endif
-*/
-/*
-inline MachineID map_Address_to_L2Cache(const Address & addr)
-{
-  int L2bank = 0;
-  MachineID mach = {MACHINETYPE_L2CACHE_ENUM, 0};
-  L2bank = addr.bitSelect(RubySystem::getBlockSizeBits(),
-                          RubySystem::getBlockSizeBits() + RubyConfig::getNumberOfCachesPerLevel(2)-1);
-  mach.num = L2bank;
-  return mach;
-}
-
-// input parameter is the base ruby node of the L1 cache
-// returns a value between 0 and total_L2_Caches_within_the_system
-inline
-MachineID map_L1CacheMachId_to_L2Cache(const Address& addr, MachineID L1CacheMachId)
-{
-  return map_Address_to_L2Cache(addr);
-
-  int L2bank = 0;
-  MachineID mach = {MACHINETYPE_L2CACHE_ENUM, 0};
-
-  if (RubyConfig::L2CachePerChipBits() > 0) {
-    if (RubyConfig::getMAP_L2BANKS_TO_LOWEST_BITS()) {
-      L2bank = addr.bitSelect(RubySystem::getBlockSizeBits(),
-                         RubySystem::getBlockSizeBits()+RubyConfig::L2CachePerChipBits()-1);
-    } else {
-      L2bank = addr.bitSelect(RubySystem::getBlockSizeBits()+RubyConfig::getL2_CACHE_NUM_SETS_BITS(),
-                         RubySystem::getBlockSizeBits()+RubyConfig::getL2_CACHE_NUM_SETS_BITS()+RubyConfig::L2CachePerChipBits()-1);
-    }
-  }
-
-  assert(L2bank < RubyConfig::numberOfL2CachePerChip());
-  assert(L2bank >= 0);
-
-  mach.num = RubyConfig::L1CacheNumToL2Base(L1CacheMachId.num)*RubyConfig::numberOfL2CachePerChip() // base #
-    + L2bank;  // bank #
-  assert(mach.num < RubyConfig::numberOfL2Cache());
-  return mach;
-
-}
-
-
-// used to determine the correct L2 bank
-// input parameter is the base ruby node of the L2 cache
-// returns a value between 0 and total_L2_Caches_within_the_system
-
-inline
-MachineID map_L2ChipId_to_L2Cache(const Address& addr, NodeID L2ChipId)
-{
-  return map_Address_to_L2Cache(addr);
-
-  assert(L2ChipId < RubyConfig::numberOfChips());
-
-  int L2bank = 0;
-  MachineID mach = {MACHINETYPE_L2CACHE_ENUM, 0};
-  L2bank = addr.bitSelect(RubySystem::getBlockSizeBits(),
-                          RubySystem::getBlockSizeBits() + RubyConfig::numberOfCachesPerLevel(2)-1);
-  mach.num = L2bank;
-  return mach
-
-}
-  */
-
-
 // used to determine the home directory
 // returns a value between 0 and total_directories_within_the_system
 inline
@@ -157,29 +85,8 @@ MachineID map_Address_to_DMA(const Address & addr)
   return dma;
 }
 
-/*
-inline
-NetDest getOtherLocalL1IDs(MachineID L1)
-{
-  int start = (L1.num / RubyConfig::numberOfProcsPerChip()) * RubyConfig::numberOfProcsPerChip();
-  NetDest ret;
-
-  assert(MACHINETYPE_L1CACHE_ENUM != MachineType_NUM);
-
-  for (int i = start; i < (start + RubyConfig::numberOfProcsPerChip()); i++) {
-    if (i != L1.num) {
-      MachineID mach = { MACHINETYPE_L1CACHE_ENUM, i };
-      ret.add( mach );
-    }
-  }
-
-  return ret;
-}
-*/
-
 extern inline NodeID machineIDToNodeID(MachineID machID)
 {
-  // return machID.num%RubyConfig::numberOfChips();
   return machID.num;
 }
 
@@ -193,22 +100,7 @@ extern inline NodeID L1CacheMachIDToProcessorNum(MachineID machID)
   assert(machID.type == MachineType_L1Cache);
   return machID.num;
 }
-/*
-extern inline NodeID L2CacheMachIDToChipID(MachineID machID)
-{
-  assert(machID.type == MACHINETYPE_L2CACHE_ENUM);
-  int L2bank = machID.num;
-  int banks_seen = 0;
-  for (int i=0;i<RubyConfig::getNumberOfChips();i++) {
-    for (int j=0;j<RubyConfig::getNumberOfCachesPerLevelPerChip(2,i);j++) {
-      if (banks_seen == L2bank)
-        return i;
-      banks_seen++;
-    }
-  }
-  assert(0);
-}
-*/
+
 extern inline MachineID getL1MachineID(NodeID L1RubyNode)
 {
   MachineID mach = {MACHINETYPE_L1CACHE_ENUM, L1RubyNode};
index d8692951e70d7f6e1264678bfb4edf1c987100ed..e4e20c99aeb4f919380b7ec37c3ad2b1152b26b8 100644 (file)
@@ -43,7 +43,6 @@
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/system/NodeID.hh"
 #include "mem/ruby/system/MachineID.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/protocol/CacheMsg.hh"
 #include "mem/protocol/GenericRequestType.hh"
 #include "mem/protocol/CacheRequestType.hh"
@@ -112,19 +111,6 @@ extern inline int MessageSizeTypeToInt(MessageSizeType size_type)
   return MessageSizeType_to_int(size_type);
 }
 
-/*
-extern inline int numberOfNodes()
-{
-  return RubyConfig::numberOfChips();
-}
-*/
-/*
-extern inline int numberOfL1CachePerChip()
-{
-  return RubyConfig::getNumberOfCachesPerLevelPerChip(1,0);
-}
-*/
-
 extern inline bool long_enough_ago(Time event)
 {
   return ((get_time() - event) > 200);
@@ -171,40 +157,6 @@ extern inline Time time_to_int(Time time)
   return time;
 }
 
-/*
-extern inline bool getFilteringEnabled()
-{
-  return RubyConfig::getFilteringEnabled();
-}
-
-
-extern inline int getRetryThreshold()
-{
-  return RubyConfig::getRetryThreshold();
-}
-
-extern inline int getFixedTimeoutLatency()
-{
-  return RubyConfig::getFixedTimeoutLatency();
-}
-
-extern inline int N_tokens()
-{
-  // return N+1 to handle clean writeback
-  return RubyConfig::getProcsPerChip() + 1;
-  // return 1;
-}
-
-extern inline bool distributedPersistentEnabled()
-{
-  return RubyConfig::getDistributedPersistentEnabled();
-}
-
-extern inline bool getDynamicTimeoutEnabled()
-{
-  return RubyConfig::getDynamicTimeoutEnabled();
-}
-*/
 // Appends an offset to an address
 extern inline Address setOffset(Address addr, int offset)
 {
index 641c117de8e8726c78c955a915626e3fb3819265..845ce66ea9f93c8d70d794f7253a886842ef7434 100644 (file)
@@ -11,7 +11,6 @@
 #define ABSTRACT_MEM_OR_CACHE_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 
 class AbstractMemOrCache {
index 625d5ce59eed45f293fbd43c00eaf4c851d46491..c3b7da6ead503819cb0d5ffd861a5ca77e768751 100644 (file)
@@ -160,45 +160,7 @@ private:
 
   static Vector< CacheMemory* > m_all_caches;
 };
-/*
-inline
-CacheMemory* CacheMemory::getCache(int cache_id)
-{
-  assert(cache_id < RubyConfig::getNumberOfCaches());
-  if (m_all_caches[cache_id] == NULL) {
-    cerr << "ERROR: Tried to obtain CacheMemory that hasn't been created yet." << endl;
-    assert(0);
-  }
-  return m_all_caches[cache_id];
-}
-
-inline
-CacheMemory* CacheMemory::createCache(int level, int num, char split_type_c, AbstractCacheEntry* (*entry_factory)())
-{
-  string split_type;
-  switch(split_type_c) {
-  case 'i':
-    split_type = "instruction"; break;
-  case 'd':
-    split_type = "data"; break;
-  default:
-    split_type = "unified"; break;
-  }
-  int cache_id = RubyConfig::getCacheIDFromParams(level, num, split_type);
-  assert(cache_id < RubyConfig::getNumberOfCaches());
-  if (m_all_caches.size() == 0) {
-    m_all_caches.setSize(RubyConfig::getNumberOfCaches());
-    for (int i=0; i<m_all_caches.size(); i++)
-      m_all_caches[i] = NULL;
-  }
 
-  string type = RubyConfig::getCacheType(cache_id);
-  if ( type == "SetAssociativeCache" ) {
-    m_all_caches[cache_id] = new CacheMemory(cache_id, entry_factory);
-  }
-  return m_all_caches[cache_id];
-}
-*/
 // Output operator declaration
 //ostream& operator<<(ostream& out, const CacheMemory<ENTRY>& obj);
 
@@ -266,43 +228,7 @@ void CacheMemory::init(const vector<string> & argv)
     }
   }
 }
-/*
-inline
-CacheMemory::CacheMemory(int cache_id, AbstractCacheEntry* (*entry_factory)())
-{
-  string split_type;
-
-  m_cache_id = cache_id;
-  m_entry_factory = entry_factory;
-
-  m_cache_num_set_bits = RubyConfig::getNumberOfCacheSetBits(cache_id);
-  m_cache_num_sets = RubyConfig::getNumberOfCacheSets(cache_id);
-  m_cache_assoc = RubyConfig::getCacheAssoc(cache_id);
-  split_type = RubyConfig::getCacheSplitType(cache_id);
-  m_is_instruction_only_cache = m_is_data_only_cache = false;
-  if (split_type == "instruction")
-    m_is_instruction_only_cache = true;
-  else if (split_type == "data")
-    m_is_data_only_cache = true;
-  else
-    assert(split_type == "unified");
-
-  if(RubyConfig::getCacheReplacementPolicy(cache_id) == "PSEUDO_LRU")
-    m_replacementPolicy_ptr = new PseudoLRUPolicy(m_cache_num_sets, m_cache_assoc);
-  else if(RubyConfig::getCacheReplacementPolicy(cache_id) == "LRU")
-    m_replacementPolicy_ptr = new LRUPolicy(m_cache_num_sets, m_cache_assoc);
-  else
-    assert(false);
 
-  m_cache.setSize(m_cache_num_sets);
-  for (int i = 0; i < m_cache_num_sets; i++) {
-    m_cache[i].setSize(m_cache_assoc);
-    for (int j = 0; j < m_cache_assoc; j++) {
-      m_cache[i][j] = m_entry_factory();
-    }
-  }
-}
-*/
 inline
 CacheMemory::~CacheMemory()
 {
index 294d57de2319415206f410531e51dc02d0a7ca56..b279d21af9cbb60e56fb9b82793285c0e3be6471 100644 (file)
@@ -39,7 +39,6 @@
 #include "mem/ruby/system/System.hh"
 #include "mem/ruby/system/DirectoryMemory.hh"
 #include "mem/ruby/slicc_interface/RubySlicc_Util.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/slicc_interface/AbstractController.hh"
 #include "mem/gems_common/util.hh"
 
index 9d647822c2f8f199f7eb985494e99ed9f90e8977..90c9273e517a66742c123a609e9be3d091eaf284 100644 (file)
@@ -42,7 +42,6 @@
 #include "mem/ruby/common/Global.hh"
 #include "mem/gems_common/Map.hh"
 #include "mem/protocol/AccessPermission.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/slicc_interface/AbstractChip.hh"
 
index 1587aa5fa64b0a8dc2716134842d8c0e54a799f9..693e931aa74970320d34dcd05878c878dd3ae237 100644 (file)
@@ -490,183 +490,3 @@ void Sequencer::checkCoherence(const Address& addr) {
 #endif
 }
 
-/*
-bool Sequencer::getRubyMemoryValue(const Address& addr, char* value,
-                                   unsigned int size_in_bytes )
-{
-    bool found = false;
-    const Address lineAddr = line_address(addr);
-    DataBlock data;
-    PhysAddress paddr(addr);
-    DataBlock* dataPtr = &data;
-
-    MachineID l2_mach = map_L2ChipId_to_L2Cache(addr, m_chip_ptr->getID() );
-    int l2_ver = l2_mach.num%RubyConfig::numberOfL2CachePerChip();
-
-    if (Protocol::m_TwoLevelCache) {
-      if(Protocol::m_CMP){
-        assert(n->m_L2Cache_L2cacheMemory_vec[l2_ver] != NULL);
-      }
-      else{
-        assert(n->m_L1Cache_cacheMemory_vec[m_version] != NULL);
-      }
-    }
-
-    if (n->m_L1Cache_L1IcacheMemory_vec[m_version]->tryCacheAccess(lineAddr, CacheRequestType_IFETCH, dataPtr)){
-      n->m_L1Cache_L1IcacheMemory_vec[m_version]->getMemoryValue(addr, value, size_in_bytes);
-      found = true;
-    } else if (n->m_L1Cache_L1DcacheMemory_vec[m_version]->tryCacheAccess(lineAddr, CacheRequestType_LD, dataPtr)){
-      n->m_L1Cache_L1DcacheMemory_vec[m_version]->getMemoryValue(addr, value, size_in_bytes);
-      found = true;
-    } else if (Protocol::m_CMP && n->m_L2Cache_L2cacheMemory_vec[l2_ver]->tryCacheAccess(lineAddr, CacheRequestType_LD, dataPtr)){
-      n->m_L2Cache_L2cacheMemory_vec[l2_ver]->getMemoryValue(addr, value, size_in_bytes);
-      found = true;
-    // } else if (n->TBE_TABLE_MEMBER_VARIABLE->isPresent(lineAddr)){
-//       ASSERT(n->TBE_TABLE_MEMBER_VARIABLE->isPresent(lineAddr));
-//       L1Cache_TBE tbeEntry = n->TBE_TABLE_MEMBER_VARIABLE->lookup(lineAddr);
-
-//       int offset = addr.getOffset();
-//       for(int i=0; i<size_in_bytes; ++i){
-//         value[i] = tbeEntry.getDataBlk().getByte(offset + i);
-//       }
-
-//       found = true;
-    } else {
-      // Address not found
-      //cout << "  " << m_chip_ptr->getID() << " NOT IN CACHE, Value at Directory is: " << (int) value[0] << endl;
-      n = dynamic_cast<Chip*>(g_system_ptr->getChip(map_Address_to_DirectoryNode(addr)/RubyConfig::numberOfDirectoryPerChip()));
-      int dir_version = map_Address_to_DirectoryNode(addr)%RubyConfig::numberOfDirectoryPerChip();
-      for(unsigned int i=0; i<size_in_bytes; ++i){
-        int offset = addr.getOffset();
-        value[i] = n->m_Directory_directory_vec[dir_version]->lookup(lineAddr).m_DataBlk.getByte(offset + i);
-      }
-      // Address not found
-      //WARN_MSG("Couldn't find address");
-      //WARN_EXPR(addr);
-      found = false;
-    }
-    return true;
-}
-
-bool Sequencer::setRubyMemoryValue(const Address& addr, char *value,
-                                   unsigned int size_in_bytes) {
-  char test_buffer[64];
-
-  // idea here is that coherent cache should find the
-  // latest data, the update it
-  bool found = false;
-  const Address lineAddr = line_address(addr);
-  PhysAddress paddr(addr);
-  DataBlock data;
-  DataBlock* dataPtr = &data;
-  Chip* n = dynamic_cast<Chip*>(m_chip_ptr);
-
-  MachineID l2_mach = map_L2ChipId_to_L2Cache(addr, m_chip_ptr->getID() );
-  int l2_ver = l2_mach.num%RubyConfig::numberOfL2CachePerChip();
-
-  assert(n->m_L1Cache_L1IcacheMemory_vec[m_version] != NULL);
-  assert(n->m_L1Cache_L1DcacheMemory_vec[m_version] != NULL);
-  if (Protocol::m_TwoLevelCache) {
-    if(Protocol::m_CMP){
-      assert(n->m_L2Cache_L2cacheMemory_vec[l2_ver] != NULL);
-    }
-    else{
-      assert(n->m_L1Cache_cacheMemory_vec[m_version] != NULL);
-    }
-  }
-
-  if (n->m_L1Cache_L1IcacheMemory_vec[m_version]->tryCacheAccess(lineAddr, CacheRequestType_IFETCH, dataPtr)){
-    n->m_L1Cache_L1IcacheMemory_vec[m_version]->setMemoryValue(addr, value, size_in_bytes);
-    found = true;
-  } else if (n->m_L1Cache_L1DcacheMemory_vec[m_version]->tryCacheAccess(lineAddr, CacheRequestType_LD, dataPtr)){
-    n->m_L1Cache_L1DcacheMemory_vec[m_version]->setMemoryValue(addr, value, size_in_bytes);
-    found = true;
-  } else if (Protocol::m_CMP && n->m_L2Cache_L2cacheMemory_vec[l2_ver]->tryCacheAccess(lineAddr, CacheRequestType_LD, dataPtr)){
-    n->m_L2Cache_L2cacheMemory_vec[l2_ver]->setMemoryValue(addr, value, size_in_bytes);
-    found = true;
-  } else {
-    // Address not found
-    n = dynamic_cast<Chip*>(g_system_ptr->getChip(map_Address_to_DirectoryNode(addr)/RubyConfig::numberOfDirectoryPerChip()));
-    int dir_version = map_Address_to_DirectoryNode(addr)%RubyConfig::numberOfDirectoryPerChip();
-    for(unsigned int i=0; i<size_in_bytes; ++i){
-      int offset = addr.getOffset();
-      n->m_Directory_directory_vec[dir_version]->lookup(lineAddr).m_DataBlk.setByte(offset + i, value[i]);
-    }
-    found = false;
-  }
-
-  if (found){
-    found = getRubyMemoryValue(addr, test_buffer, size_in_bytes);
-    assert(found);
-    if(value[0] != test_buffer[0]){
-      WARN_EXPR((int) value[0]);
-      WARN_EXPR((int) test_buffer[0]);
-      ERROR_MSG("setRubyMemoryValue failed to set value.");
-    }
-  }
-
-  return true;
-}
-*/
-/*
-
-void
-Sequencer::rubyMemAccess(const uint64 paddr, char* data, const int len, const AccessType type)
-{
-  if ( type == AccessType_Read || type == AccessType_Write ) {
-    // need to break up the packet data
-    uint64 guest_ptr = paddr;
-    Vector<DataBlock*> datablocks;
-    while (paddr + len != guest_ptr) {
-      Address addr(guest_ptr);
-      Address line_addr = line_address(addr);
-
-      int bytes_copied;
-      if (addr.getOffset() == 0) {
-        bytes_copied = (guest_ptr + RubyConfig::dataBlockBytes() > paddr + len)?
-          (paddr + len - guest_ptr):
-          RubyConfig::dataBlockBytes();
-      } else {
-        bytes_copied = RubyConfig::dataBlockBytes() - addr.getOffset();
-        if (guest_ptr + bytes_copied > paddr + len)
-          bytes_copied = paddr + len - guest_ptr;
-      }
-
-      // first we need to find all data blocks that have to be updated for a write
-      // and the highest block for a read
-     for(int i=0;i<RubyConfig::numberOfProcessors();i++) {
-        if (Protocol::m_TwoLevelCache){
-          if(m_chip_ptr->m_L1Cache_L1IcacheMemory_vec[i]->isTagPresent(line_address(addr)))
-            datablocks.insertAtBottom(&m_chip_ptr->m_L1Cache_L1IcacheMemory_vec[i]->lookup(line_addr).getDataBlk());
-          if(m_chip_ptr->m_L1Cache_L1DcacheMemory_vec[i]->isTagPresent(line_address(addr)))
-            datablocks.insertAtBottom(&m_chip_ptr->m_L1Cache_L1DcacheMemory_vec[i]->lookup(line_addr).getDataBlk());
-        } else {
-          if(m_chip_ptr->m_L1Cache_cacheMemory_vec[i]->isTagPresent(line_address(addr)))
-            datablocks.insertAtBottom(&m_chip_ptr->m_L1Cache_cacheMemory_vec[i]->lookup(line_addr).getDataBlk());
-        }
-      }
-      if (Protocol::m_TwoLevelCache){
-        int l2_bank = map_L2ChipId_to_L2Cache(addr, 0).num; // TODO: ONLY WORKS WITH CMP!!!
-        if (m_chip_ptr->m_L2Cache_L2cacheMemory_vec[l2_bank]->isTagPresent(line_address(Address(paddr)))) {
-          datablocks.insertAtBottom(&m_chip_ptr->m_L2Cache_L2cacheMemory_vec[l2_bank]->lookup(addr).getDataBlk());
-        }
-      }
-      assert(dynamic_cast<Chip*>(m_chip_ptr)->m_Directory_directory_vec.size() > map_Address_to_DirectoryNode(addr));
-      DirectoryMemory* dir = dynamic_cast<Chip*>(m_chip_ptr)->m_Directory_directory_vec[map_Address_to_DirectoryNode(addr)];
-      Directory_Entry& entry = dir->lookup(line_addr);
-      datablocks.insertAtBottom(&entry.getDataBlk());
-
-      if (pkt->isRead()){
-        datablocks[0]->copyData(pkt_data, addr.getOffset(), bytes_copied);
-      } else {// pkt->isWrite() {
-        for (int i=0;i<datablocks.size();i++)
-          datablocks[i]->setData(pkt_data, addr.getOffset(), bytes_copied);
-      }
-
-      guest_ptr += bytes_copied;
-      pkt_data += bytes_copied;
-      datablocks.clear();
-    }
-}
-
-*/
index 254f5a09235a4188f757467a724cbcf73a8295f5..9b55e9781e1658cea62a7aad3c15decec58ded82 100644 (file)
@@ -38,7 +38,6 @@
 #define SEQUENCER_H
 
 #include "mem/ruby/common/Global.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/common/Consumer.hh"
 #include "mem/protocol/CacheRequestType.hh"
 #include "mem/protocol/AccessModeType.hh"
index e922d0bbfd70ec8712ef30e2dedbecc84b87215d..fce456607c314ddb530933bc8fda6a489d5f0bba 100644 (file)
@@ -278,16 +278,7 @@ RubySystem::RubySystem(const vector <RubyObjConf> & sys_conf)
 
 RubySystem::~RubySystem()
 {
-  /*
-  for (int i=0; i < MachineType_base_level(MachineType_NUM); i++) {
-    for (int j=0; j < RubyConfig::getNumberOfControllersPerType(i); j++ ) {
-      delete m_controllers[i][j];
-    }
-  }
-  delete m_network_ptr;
-  delete m_profiler_ptr;
-  delete m_tracer_ptr;
-  */
+
 }
 
 void RubySystem::printSystemConfig(ostream & out)
@@ -307,8 +298,6 @@ void RubySystem::printSystemConfig(ostream & out)
 void RubySystem::printConfig(ostream& out)
 {
   out << "\n================ Begin RubySystem Configuration Print ================\n\n";
-  //  RubyConfig::printConfiguration(out);
-  //  out << endl;
   printSystemConfig(out);
   for (map<string, AbstractController*>::const_iterator it = m_controllers.begin();
        it != m_controllers.end(); it++) {
@@ -367,19 +356,7 @@ void RubySystem::clearStats() const
 
 void RubySystem::recordCacheContents(CacheRecorder& tr) const
 {
-  /*
-    for (int i = 0; i < m_chip_vector.size(); i++) {
-    for (int m_version = 0; m_version < RubyConfig::numberOfProcsPerChip(); m_version++) {
-      if (Protocol::m_TwoLevelCache) {
-        m_chip_vector[i]->m_L1Cache_L1IcacheMemory_vec[m_version]->setAsInstructionCache(true);
-        m_chip_vector[i]->m_L1Cache_L1DcacheMemory_vec[m_version]->setAsInstructionCache(false);
-      } else {
-        m_chip_vector[i]->m_L1Cache_cacheMemory_vec[m_version]->setAsInstructionCache(false);
-      }
-    }
-    m_chip_vector[i]->recordCacheContents(tr);
-  }
-  */
+
 }
 
 #ifdef CHECK_COHERENCE
index 8cbeb2b0e390572c9965d0c8bc2f84f957bc06a3..dbf4dbc78608351099f6dbd6e3333d91aa4ab6db 100644 (file)
@@ -61,6 +61,20 @@ class DirectoryMemory;
 class Topology;
 class MemoryControl;
 
+/*
+ * This defines the number of longs (32-bits on 32 bit machines,
+ * 64-bit on 64-bit AMD machines) to use to hold the set...
+ * the default is 4, allowing 128 or 256 different members
+ * of the set.
+ *
+ * This should never need to be changed for correctness reasons,
+ * though increasing it will increase performance for larger
+ * set sizes at the cost of a (much) larger memory footprint
+ *
+ */
+const int NUMBER_WORDS_PER_SET = 4;
+
+
 struct RubyObjConf {
   string type;
   string name;
index c681c0a7ec29ab2c470aee7f4b5339beed44af71..7d23b7286735bcceed189205ebe7047449140489 100644 (file)
@@ -21,7 +21,6 @@
  */
 
 #include "mem/ruby/tester/RaceyPseudoThread.hh"
-#include "mem/ruby/config/RubyConfig.hh"
 #include "mem/ruby/tester/RaceyDriver.hh"
 #include "gzstream.hh"
 
index 744dfe1ebb1dd47a654700918f0bfd6af4647d66..8be0378c9cd5891c6ff1c6239cfa0d90dddeb3cb 100644 (file)
@@ -77,7 +77,7 @@ void EnqueueStatementAST::generate(string& code, Type* return_type_ptr) const
   code += ".enqueue(out_msg";
 
   if (getPairs().exist("latency")) {
-    code += ", RubyConfig::get" + getPairs().lookup("latency") + "()";
+    code += ", m_LATENCY_" + getPairs().lookup("latency");
   }
 
   code += ");\n";
index b2ec4d676d9b4e347d0a77e67f9cb86a7e36f4ae..e042f9aa0de201a0ebae5cd494c36b2e5985be99 100644 (file)
@@ -719,11 +719,12 @@ void StateMachine::printControllerC(ostream& out, string component)
       out << "{" << endl;
       out << "  DEBUG_MSG(GENERATED_COMP, HighPrio,\"executing\");" << endl;
 //added by SS
-//instead of rubyconfig:: --> it should point to m_latency...
+//it should point to m_latency...
 //so I should change the string output of this lookup
 
-      string c_code_string = action.lookupPair("c_code");
 
+      string c_code_string = action.lookupPair("c_code");
+/*
       size_t found = c_code_string.find("RubyConfig::get");
 
       if (found!=string::npos){ //found --> replace it with local access
@@ -741,7 +742,7 @@ void StateMachine::printControllerC(ostream& out, string component)
           }
         }
       }
-
+*/
       // add here:
       if (strncmp(component.c_str(), "L1Cache", 7) == 0) {
         if (c_code_string.find("writeCallback") != string::npos) {
index 75f72af02fd3664ad756a0c1043e8924a781604e..eb53cc7b9ed4311028888fdb437e85d85c7ca37c 100644 (file)
@@ -583,7 +583,6 @@ void Type::printEnumC(string path) const
   out << endl;
   out << "#include \"mem/protocol/" << type_name << ".hh\"" << endl;
   if (m_isMachineType) {
-    out << "#include \"mem/ruby/config/RubyConfig.hh\"" << endl;
     out << "#include \"mem/protocol/ControllerFactory.hh\"" << endl;
     for( int i = 0; i<size; i++ ) {
       out << "#include \"mem/protocol/" << m_enum_vec[i] << "_Controller.hh\"" << endl;
@@ -675,7 +674,7 @@ void Type::printEnumC(string path) const
     out << "  }" << endl;
     out << "}" << endl;
 
-    out << "/** \\brief returns the machine type for each base vector index used by NetDest and RubyConfig" << endl;
+    out << "/** \\brief returns the machine type for each base vector index used by NetDest" << endl;
     out << "  * " << endl;
     out << "  * \\return the MachineTYpe" << endl;
     out << "  */" << endl;
@@ -762,29 +761,6 @@ void Type::printEnumC(string path) const
 
     out << endl;
 
-//     out << "/** \\brief returns the total number of components for each machine" << endl;
-//     out << "  * \\return the total number of components for each machine" << endl;
-//     out << "  */" << endl;
-//     out << "int " << type_name << "_chip_count(const " << type_name << "& obj, int chip_id)" << endl;
-//     out << "{" << endl;
-//     out << "  switch(obj) {" << endl;
-
-//     // For each field
-//     for( int i = 0; i<size; i++ ) {
-//       out << "  case " << type_name << "_" << m_enum_vec[i] << ":" << endl;
-//       out << "    return RubyConfig::getNumberOfControllersPerTypePerChip(MachineType_base_level(MachineType_" << m_enum_vec[i] << "), chip_id);" << endl;
-//     }
-
-//     // total num
-//     out << "  case " << type_name << "_NUM:" << endl;
-//     // Trailer
-//     out << "  default:" << endl;
-//     out << "    ERROR_MSG(\"Invalid range for type " << type_name << "\");" << endl;
-//     out << "    return -1;" << endl;
-//     out << "  }" << endl;
-//     out << "}" << endl;
-
-
   }
 
   // Write the file