From 26e1f6ac37b438cce2fdb025cdf12ac64cd43e76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89der=20F=2E=20Zulian?= Date: Fri, 28 Oct 2016 19:40:10 +0200 Subject: [PATCH] Fix for pull-request #131 --- DRAMSys/simulator/src/simulation/Simulation.cpp | 4 ---- DRAMSys/simulator/src/simulation/Simulation.h | 1 - .../simulator/src/simulation/SimulationManager.cpp | 14 +++----------- .../simulator/src/simulation/SimulationManager.h | 1 + 4 files changed, 4 insertions(+), 16 deletions(-) diff --git a/DRAMSys/simulator/src/simulation/Simulation.cpp b/DRAMSys/simulator/src/simulation/Simulation.cpp index 34259e92..eae30c9a 100644 --- a/DRAMSys/simulator/src/simulation/Simulation.cpp +++ b/DRAMSys/simulator/src/simulation/Simulation.cpp @@ -194,7 +194,6 @@ void Simulation::stop() wait(sc_time(200, SC_NS)); } while(pending_payloads != 0); - report("\nTerminating simulation"); for (auto controller : controllers) { controller->terminateSimulation(); } @@ -203,9 +202,6 @@ void Simulation::stop() rec->closeConnection(); } sc_stop(); - - double elapsed_secs = double(clock() - simulationStartTime) / CLOCKS_PER_SEC; - report("Simulation took " + to_string(elapsed_secs) + " seconds"); } diff --git a/DRAMSys/simulator/src/simulation/Simulation.h b/DRAMSys/simulator/src/simulation/Simulation.h index 6dc79f94..45890b47 100644 --- a/DRAMSys/simulator/src/simulation/Simulation.h +++ b/DRAMSys/simulator/src/simulation/Simulation.h @@ -107,7 +107,6 @@ private: // Transaction Recorders (one per channel). They generate the output databases. std::vector tlmRecorders; - clock_t simulationStartTime; void report(std::string message); void setupTlmRecorders(const string &traceName, const string &pathToResources, const std::vector &devices); void instantiateModules(const string &traceName, const string &pathToResources, const std::vector &devices); diff --git a/DRAMSys/simulator/src/simulation/SimulationManager.cpp b/DRAMSys/simulator/src/simulation/SimulationManager.cpp index d84099d5..4fc91538 100644 --- a/DRAMSys/simulator/src/simulation/SimulationManager.cpp +++ b/DRAMSys/simulator/src/simulation/SimulationManager.cpp @@ -225,17 +225,12 @@ void SimulationManager::bindSockets() void SimulationManager::runSimulation(string traceName) { -// int pid = fork(); -// int status = 0; -// if (pid == 0) -// { - report("\n\nStarting simulation:"); report(headline); report(" -> setup: \t\t" + getFileName(traceName)); report(" -> memspec: \t\t" + Configuration::getInstance().memSpec.MemoryId); cout << endl; - //simulationStartTime = clock(); + simStartTime = clock(); for (auto player : players) { player->nextPayload(); @@ -243,12 +238,9 @@ void SimulationManager::runSimulation(string traceName) sc_set_stop_mode(SC_STOP_FINISH_DELTA); sc_start(); - + double elapsed_secs = double(clock() - simStartTime) / CLOCKS_PER_SEC; + report("\nSimulation took " + to_string(elapsed_secs) + " seconds\n"); delete simulation; - // _Exit(0); - //} - - //waitpid(pid, &status, 0); } void SimulationManager::startTraceAnalyzer() diff --git a/DRAMSys/simulator/src/simulation/SimulationManager.h b/DRAMSys/simulator/src/simulation/SimulationManager.h index 3d1de351..54f564e6 100644 --- a/DRAMSys/simulator/src/simulation/SimulationManager.h +++ b/DRAMSys/simulator/src/simulation/SimulationManager.h @@ -85,6 +85,7 @@ private: // and initiate transactions targeting the memory) std::vector players; Simulation* simulation; + clock_t simStartTime; //TLM 2.0 Protocol Checkers std::vector*> playersTlmCheckers;