diff --git a/DRAMSys/simulator/resources/configs/temperature_sim/core.flp b/DRAMSys/simulator/resources/configs/thermalsim/core.flp similarity index 93% rename from DRAMSys/simulator/resources/configs/temperature_sim/core.flp rename to DRAMSys/simulator/resources/configs/thermalsim/core.flp index b58566f6..e85e6801 100755 --- a/DRAMSys/simulator/resources/configs/temperature_sim/core.flp +++ b/DRAMSys/simulator/resources/configs/thermalsim/core.flp @@ -1,45 +1,45 @@ -CPUs : - - position 0, 0 ; - dimension 2750, 4300 ; - -GPU : - - position 3350, 0 ; - dimension 2750, 4000 ; - -BASEBAND1 : - - position 4250, 4000 ; - dimension 1850, 3300 ; - -BASEBAND2 : - - position 3350, 7300 ; - dimension 2750, 3300 ; - -LLCACHE : - - position 0, 4300 ; - dimension 1900, 3000 ; - -DRAMCTRL1 : - - position 1900, 4300 ; - dimension 850, 3000 ; - -DRAMCTRL2 : - - position 3350, 4000 ; - dimension 900, 3300 ; - -TSVS : - - position 2750, 2300 ; - dimension 600, 6000 ; - -ACELLERATORS : - - position 0, 7300 ; - dimension 2750, 3300 ; - +CPUs : + + position 0, 0 ; + dimension 2750, 4300 ; + +GPU : + + position 3350, 0 ; + dimension 2750, 4000 ; + +BASEBAND1 : + + position 4250, 4000 ; + dimension 1850, 3300 ; + +BASEBAND2 : + + position 3350, 7300 ; + dimension 2750, 3300 ; + +LLCACHE : + + position 0, 4300 ; + dimension 1900, 3000 ; + +DRAMCTRL1 : + + position 1900, 4300 ; + dimension 850, 3000 ; + +DRAMCTRL2 : + + position 3350, 4000 ; + dimension 900, 3300 ; + +TSVS : + + position 2750, 2300 ; + dimension 600, 6000 ; + +ACELLERATORS : + + position 0, 7300 ; + dimension 2750, 3300 ; + diff --git a/DRAMSys/simulator/resources/configs/temperature_sim/mem.flp b/DRAMSys/simulator/resources/configs/thermalsim/mem.flp similarity index 94% rename from DRAMSys/simulator/resources/configs/temperature_sim/mem.flp rename to DRAMSys/simulator/resources/configs/thermalsim/mem.flp index cbed4844..29d02254 100755 --- a/DRAMSys/simulator/resources/configs/temperature_sim/mem.flp +++ b/DRAMSys/simulator/resources/configs/thermalsim/mem.flp @@ -1,16 +1,16 @@ -channel0 : - position 150, 100 ; - dimension 2600, 5200 ; - -channel1 : - position 3350, 100 ; - dimension 2600, 5200 ; - -channel2 : - position 150, 5300 ; - dimension 2600, 5200 ; - -channel3 : - position 3350, 5300 ; - dimension 2600, 5200 ; - +channel0 : + position 150, 100 ; + dimension 2600, 5200 ; + +channel1 : + position 3350, 100 ; + dimension 2600, 5200 ; + +channel2 : + position 150, 5300 ; + dimension 2600, 5200 ; + +channel3 : + position 3350, 5300 ; + dimension 2600, 5200 ; + diff --git a/DRAMSys/simulator/resources/configs/temperature_sim/powerInfo.xml b/DRAMSys/simulator/resources/configs/thermalsim/powerInfo.xml similarity index 100% rename from DRAMSys/simulator/resources/configs/temperature_sim/powerInfo.xml rename to DRAMSys/simulator/resources/configs/thermalsim/powerInfo.xml diff --git a/DRAMSys/simulator/resources/configs/temperature_sim/stack.stk b/DRAMSys/simulator/resources/configs/thermalsim/stack.stk similarity index 97% rename from DRAMSys/simulator/resources/configs/temperature_sim/stack.stk rename to DRAMSys/simulator/resources/configs/thermalsim/stack.stk index df1f506d..41593b1d 100755 --- a/DRAMSys/simulator/resources/configs/temperature_sim/stack.stk +++ b/DRAMSys/simulator/resources/configs/thermalsim/stack.stk @@ -28,7 +28,7 @@ die DRAM : dimensions : chip length 6100, width 10600 ; - cell length 1000, width 1000 ; + cell length 100, width 100 ; stack: die DRAM_DIE DRAM floorplan "./mem.flp" ; diff --git a/DRAMSys/simulator/resources/simulations/ddr3-example.xml b/DRAMSys/simulator/resources/simulations/ddr3-example.xml index 8cf88b42..fb6b1c84 100644 --- a/DRAMSys/simulator/resources/simulations/ddr3-example.xml +++ b/DRAMSys/simulator/resources/simulations/ddr3-example.xml @@ -7,23 +7,23 @@ - + - + - - - + + + - + diff --git a/DRAMSys/simulator/resources/simulations/sim-batch.xml b/DRAMSys/simulator/resources/simulations/sim-batch.xml index fbd50bf4..85e6dfce 100644 --- a/DRAMSys/simulator/resources/simulations/sim-batch.xml +++ b/DRAMSys/simulator/resources/simulations/sim-batch.xml @@ -7,23 +7,23 @@ - + - + - - - + + + - + diff --git a/DRAMSys/simulator/simulator.pro b/DRAMSys/simulator/simulator.pro index 042f602e..d4a355c9 100644 --- a/DRAMSys/simulator/simulator.pro +++ b/DRAMSys/simulator/simulator.pro @@ -157,7 +157,7 @@ HEADERS += \ src/controller/scheduler/readwritegrouper.h \ src/simulation/ReorderBuffer.h \ src/controller/core/configuration/MemSpec.h \ - src/controller/core/configuration/temperatureSimConfig.h \ + src/controller/core/configuration/thermalSimConfig.h \ src/simulation/StlPlayer.h \ src/simulation/StlDataPlayer.h \ src/simulation/TracePlayerListener.h \ diff --git a/DRAMSys/simulator/src/controller/core/configuration/Configuration.cpp b/DRAMSys/simulator/src/controller/core/configuration/Configuration.cpp index 49a69468..3359dd6a 100644 --- a/DRAMSys/simulator/src/controller/core/configuration/Configuration.cpp +++ b/DRAMSys/simulator/src/controller/core/configuration/Configuration.cpp @@ -154,8 +154,8 @@ void Configuration::setParameter(std::string name, std::string value) } else if (name == "ControllerCoreDisableRefresh") ControllerCoreDisableRefresh = string2bool(value); - else if (name == "DynamicTemperatureSimulation") - DynamicTemperatureSimulation = string2bool(value); + else if (name == "ThermalSimulation") + ThermalSimulation = string2bool(value); // Specification for ErrorChipSeed, ErrorCSVFile path and ErrorStoreMode else if(name == "ErrorChipSeed") ErrorChipSeed = string2int(value); @@ -173,10 +173,10 @@ void Configuration::setParameter(std::string name, std::string value) } else if (name == "StaticTemperatureDefaultValue") temperatureSim.StaticTemperatureDefaultValue = string2int(value); - else if (name == "DynTemperatureSimPeriod") - temperatureSim.DynTemperatureSimPeriod = std::stod(value.c_str()); - else if (name == "DynTemperatureSimUnit") - temperatureSim.DynTemperatureSimUnit = string2TimeUnit(value); + else if (name == "ThermalSimPeriod") + temperatureSim.ThermalSimPeriod = std::stod(value.c_str()); + else if (name == "ThermalSimUnit") + temperatureSim.ThermalSimUnit = string2TimeUnit(value); else if (name == "PowerInfoFile") { temperatureSim.powerInfoFile = value; temperatureSim.parsePowerInfoFile(); diff --git a/DRAMSys/simulator/src/controller/core/configuration/Configuration.h b/DRAMSys/simulator/src/controller/core/configuration/Configuration.h index 374edd69..bc867c6e 100644 --- a/DRAMSys/simulator/src/controller/core/configuration/Configuration.h +++ b/DRAMSys/simulator/src/controller/core/configuration/Configuration.h @@ -41,7 +41,7 @@ #include #include #include "MemSpec.h" -#include "temperatureSimConfig.h" +#include "thermalSimConfig.h" #include "../../../common/Utils.h" enum class ErrorStorageMode; @@ -79,7 +79,7 @@ struct Configuration unsigned int NumberOfTracePlayers = 1; unsigned int NumberOfMemChannels = 1; bool ControllerCoreDisableRefresh = false; - bool DynamicTemperatureSimulation = false; + bool ThermalSimulation = false; //MemSpec(from DRAM-Power XML) MemSpec memSpec; diff --git a/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp b/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp index b1a3a494..60bf4a55 100644 --- a/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp +++ b/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp @@ -62,19 +62,19 @@ void ConfigurationLoader::loadSimConfig(Configuration& config, XMLElement* simco loadConfig(config, simconfig); } -void ConfigurationLoader::loadTemperatureSimConfig(Configuration &config, std::string temperature_simconfigUri) +void ConfigurationLoader::loadTemperatureSimConfig(Configuration &config, std::string thermalsimconfigUri) { - loadConfigFromUri(config, temperature_simconfigUri, "temperature_simconfig"); + loadConfigFromUri(config, thermalsimconfigUri, "thermalsimconfig"); } -void ConfigurationLoader::loadTemperatureSimConfig(Configuration &config, XMLElement *temperature_simconfig) +void ConfigurationLoader::loadTemperatureSimConfig(Configuration &config, XMLElement *thermalsimconfig) { - if (temperature_simconfig->Attribute("src")) { + if (thermalsimconfig->Attribute("src")) { // Configuration is inside another a file - std::string uri(temperature_simconfig->Attribute("src")); - loadConfigFromUri(config, uri, "temperature_simconfig"); + std::string uri(thermalsimconfig->Attribute("src")); + loadConfigFromUri(config, uri, "thermalsimconfig"); } else { - loadConfig(config, temperature_simconfig); + loadConfig(config, thermalsimconfig); } } diff --git a/DRAMSys/simulator/src/controller/core/configuration/temperatureSimConfig.h b/DRAMSys/simulator/src/controller/core/configuration/thermalSimConfig.h similarity index 93% rename from DRAMSys/simulator/src/controller/core/configuration/temperatureSimConfig.h rename to DRAMSys/simulator/src/controller/core/configuration/thermalSimConfig.h index 63f39b5f..baa7a3fd 100644 --- a/DRAMSys/simulator/src/controller/core/configuration/temperatureSimConfig.h +++ b/DRAMSys/simulator/src/controller/core/configuration/thermalSimConfig.h @@ -34,8 +34,8 @@ * Matthias Jung */ -#ifndef TEMPERATURE_SIM_CONFIG_H_ -#define TEMPERATURE_SIM_CONFIG_H_ +#ifndef THERMALSIM_CONFIG_H +#define THERMALSIM_CONFIG_H #include #include @@ -53,9 +53,9 @@ struct TemperatureSimConfig { // Static Temperature Simulation parameters int StaticTemperatureDefaultValue; - // Dynamic Temeperature Simulation parameters - double DynTemperatureSimPeriod; - enum sc_time_unit DynTemperatureSimUnit; + // Thermal Simulation parameters + double ThermalSimPeriod; + enum sc_time_unit ThermalSimUnit; std::string IceServerIp; unsigned int IceServerPort; unsigned int SimPeriodAdjustFactor; @@ -78,7 +78,7 @@ struct TemperatureSimConfig { tinyxml2::XMLElement *powInfoElem = xml.FirstChildElement("powerInfo"); if (powInfoElem == NULL) { - // Invalid file + // Invalid file std::string errormsg = "Invalid Power Info File " + powerInfoFile; printDebugMessage(errormsg); SC_REPORT_FATAL("Temperature Sim Config", errormsg.c_str()); @@ -119,5 +119,5 @@ struct TemperatureSimConfig { } }; -#endif /* TEMPERATURE_SIM_CONFIG_H_ */ +#endif /* THERMALSIM_CONFIG_H */ diff --git a/DRAMSys/simulator/src/error/errormodel.cpp b/DRAMSys/simulator/src/error/errormodel.cpp index d4508888..df16e86b 100644 --- a/DRAMSys/simulator/src/error/errormodel.cpp +++ b/DRAMSys/simulator/src/error/errormodel.cpp @@ -44,7 +44,7 @@ void errorModel::init() { powerAnalysis = Configuration::getInstance().PowerAnalysis; - dynTemperatureSim = Configuration::getInstance().DynamicTemperatureSimulation; + thermalSim = Configuration::getInstance().ThermalSimulation; // Get Configuration parameters: busWidth = Configuration::getInstance().Buswidth; burstLenght = Configuration::getInstance().memSpec.BurstLength; @@ -513,7 +513,7 @@ double errorModel::getTemperature() double temperature = 89; if (this->myChannel != -1) { - if (dynTemperatureSim == true && powerAnalysis == true) { + if (thermalSim == true && powerAnalysis == true) { // TODO // check if this is best way to request information to DRAMPower. DRAMPower->updateCounters(true); diff --git a/DRAMSys/simulator/src/error/errormodel.h b/DRAMSys/simulator/src/error/errormodel.h index 5beff44c..a047bee3 100644 --- a/DRAMSys/simulator/src/error/errormodel.h +++ b/DRAMSys/simulator/src/error/errormodel.h @@ -60,7 +60,7 @@ class errorModel void init(void); bool powerAnalysis; libDRAMPower *DRAMPower; - bool dynTemperatureSim; + bool thermalSim; // Configuration Parameters: unsigned int busWidth; unsigned int burstLenght; diff --git a/DRAMSys/simulator/src/simulation/Simulation.cpp b/DRAMSys/simulator/src/simulation/Simulation.cpp index 07832216..d889e233 100644 --- a/DRAMSys/simulator/src/simulation/Simulation.cpp +++ b/DRAMSys/simulator/src/simulation/Simulation.cpp @@ -66,7 +66,7 @@ Simulation::Simulation(sc_module_name __attribute__((unused)) name, string pathT ConfigurationLoader::loadMemConfig(Configuration::getInstance(), setup.memconfig); ConfigurationLoader::loadMemSpec(Configuration::getInstance(), setup.memspec); ConfigurationLoader::loadSimConfig(Configuration::getInstance(), setup.simconfig); - ConfigurationLoader::loadTemperatureSimConfig(Configuration::getInstance(), setup.temperature_simconfig); + ConfigurationLoader::loadTemperatureSimConfig(Configuration::getInstance(), setup.thermalsimconfig); instantiateModules(traceName, pathToResources, devices); bindSockets(); diff --git a/DRAMSys/simulator/src/simulation/Simulation.h b/DRAMSys/simulator/src/simulation/Simulation.h index c0bceb40..0721c763 100644 --- a/DRAMSys/simulator/src/simulation/Simulation.h +++ b/DRAMSys/simulator/src/simulation/Simulation.h @@ -53,14 +53,14 @@ struct DramSetup { - DramSetup():memspec(NULL),memconfig(NULL),simconfig(NULL),addressmapping(NULL), temperature_simconfig(NULL) {} + DramSetup():memspec(NULL),memconfig(NULL),simconfig(NULL),addressmapping(NULL), thermalsimconfig(NULL) {} DramSetup(tinyxml2::XMLElement* memspec, tinyxml2::XMLElement* memconfig, tinyxml2::XMLElement* simconfig, tinyxml2::XMLElement* addressmapping, tinyxml2::XMLElement *tsc) - : memspec(memspec), memconfig(memconfig), simconfig(simconfig), addressmapping(addressmapping), temperature_simconfig(tsc) {} + : memspec(memspec), memconfig(memconfig), simconfig(simconfig), addressmapping(addressmapping), thermalsimconfig(tsc) {} tinyxml2::XMLElement* memspec; tinyxml2::XMLElement* memconfig; tinyxml2::XMLElement* simconfig; tinyxml2::XMLElement* addressmapping; - tinyxml2::XMLElement* temperature_simconfig; + tinyxml2::XMLElement* thermalsimconfig; }; struct Device diff --git a/DRAMSys/simulator/src/simulation/SimulationManager.cpp b/DRAMSys/simulator/src/simulation/SimulationManager.cpp index b706743e..a03f87fa 100644 --- a/DRAMSys/simulator/src/simulation/SimulationManager.cpp +++ b/DRAMSys/simulator/src/simulation/SimulationManager.cpp @@ -100,7 +100,7 @@ void SimulationManager::parseSimulationBatch(XMLElement* simulation) XMLElement* simconfig = simulation->FirstChildElement("simconfig"); - XMLElement *temperature_simconfig = simulation->FirstChildElement("temperature_simconfig"); + XMLElement *thermalsimconfig = simulation->FirstChildElement("thermalsimconfig"); XMLElement* memspecs = simulation->FirstChildElement("memspecs"); if(memspecs == NULL) memspecs = simulation; @@ -122,7 +122,7 @@ void SimulationManager::parseSimulationBatch(XMLElement* simulation) for (XMLElement* memconfig = memconfigs->FirstChildElement("memconfig"); memconfig != NULL; memconfig = memconfig->NextSiblingElement("memconfig")) { - batch.dramSetups.push_back(DramSetup(memspec, memconfig, simconfig, addressmapping, temperature_simconfig)); + batch.dramSetups.push_back(DramSetup(memspec, memconfig, simconfig, addressmapping, thermalsimconfig)); } } } diff --git a/DRAMSys/simulator/src/simulation/TemperatureController.h b/DRAMSys/simulator/src/simulation/TemperatureController.h index 871032a0..c4d05f67 100644 --- a/DRAMSys/simulator/src/simulation/TemperatureController.h +++ b/DRAMSys/simulator/src/simulation/TemperatureController.h @@ -57,12 +57,12 @@ public: static TemperatureController temperaturectrl("TemperatureController"); return temperaturectrl; } - + SC_CTOR(TemperatureController) { temperatureScale = Configuration::getInstance().temperatureSim.TemperatureScale; - dynamicTempSimEnabled = Configuration::getInstance().DynamicTemperatureSimulation; + dynamicTempSimEnabled = Configuration::getInstance().ThermalSimulation; staticTemperature = Configuration::getInstance().temperatureSim.StaticTemperatureDefaultValue; @@ -88,9 +88,9 @@ public: cyclesSinceLastPeriodAdjust = 0; // Get the target period for the thermal simulation from config. - targetPeriod = Configuration::getInstance().temperatureSim.DynTemperatureSimPeriod; + targetPeriod = Configuration::getInstance().temperatureSim.ThermalSimPeriod; period = targetPeriod; - t_unit = Configuration::getInstance().temperatureSim.DynTemperatureSimUnit; + t_unit = Configuration::getInstance().temperatureSim.ThermalSimUnit; genTempMap = Configuration::getInstance().temperatureSim.GenerateTemperatureMap; temperatureMapFile = "temperature_map"; diff --git a/DRAMSys/tests/error/sim-batch.xml b/DRAMSys/tests/error/sim-batch.xml index 2d0940cb..8c947f72 100644 --- a/DRAMSys/tests/error/sim-batch.xml +++ b/DRAMSys/tests/error/sim-batch.xml @@ -7,15 +7,15 @@ - + - + - - - + + + diff --git a/README.md b/README.md index e91a6c5a..74f08b5f 100644 --- a/README.md +++ b/README.md @@ -311,23 +311,23 @@ The DRAMSys' main configuration file is presented below. - + - + - - - + + + - + @@ -378,7 +378,7 @@ $ ./generateErrorTest.pl > test_error.stl Start the 3D-ICE server providing the stack file and the port number. ``` bash -$ cd DRAMSys/simulator/resources/configs/temperature_sim +$ cd DRAMSys/simulator/resources/configs/thermalsim $ 3D-ICE-Server stack.stk 11880 ``` @@ -409,23 +409,23 @@ The XML code below shows a typic configuration: - + - + - - - + + + - + @@ -441,7 +441,7 @@ The XML code below shows a typic configuration: - + @@ -524,8 +524,8 @@ Below are listed the configuration sections and configuration fields. - *ControllerCoreDisableRefresh* (boolean) - "1": disables refreshes - "0": normal operation (refreshes enabled) - - *DynamicTemperatureSimulation* (boolean) - - "1": enables the dynamic temperature simulation feature + - *ThermalSimulation* (boolean) + - "1": enables thermal simulation - "0": static temperature during simulation - **Temperature Simulator Configuration** @@ -535,9 +535,9 @@ Below are listed the configuration sections and configuration fields. - "Kelvin" - *StaticTemperatureDefaultValue* (int) - Temperature value for simulations with static temperature - - *DynTemperatureSimPeriod* (double) - - Period of the dynamic temperature simulation - - *DynTemperatureSimUnit* (string) + - *ThermalSimPeriod* (double) + - Period of the thermal simulation + - *ThermalSimUnit* (string) - "s": seconds - "ms": millisecond - "us": microseconds @@ -555,11 +555,11 @@ Below are listed the configuration sections and configuration fields. - *NPowStableCyclesToIncreasePeriod* (unsigned int) - Wait this number of thermal simulation cycles with power stability (i.e., changes that do not exceed the thresholds) to start increasing the simulation period back to its configured value. - *GenerateTemperatureMap* (boolean) - - "1": generate temperature map files during dynamic temperature simulation - - "0": do not generate temperature map files during dynamic temperature simulation + - "1": generate temperature map files during thermal simulation + - "0": do not generate temperature map files during thermal simulation - *GeneratePowerMap* (boolean) - - "1": generate power map files during dynamic temperature simulation - - "0": do not generate power map files during dynamic temperature simulation + - "1": generate power map files during thermal simulation + - "0": do not generate power map files during thermal simulation - **Memory Specification**