diff options
| author | Matthijs Bijman <matthijs@bijman.org> | 2017-02-27 13:55:50 +0100 |
|---|---|---|
| committer | Matthijs Bijman <matthijs@bijman.org> | 2017-02-27 13:55:50 +0100 |
| commit | cc5c5a7eac0ebcf97c283e1e0dd1674c855a261a (patch) | |
| tree | 841f95e14a00cb6d23d4e357c9e0cfcbdc3c9a2a /Simulator/src | |
| parent | 0709a81231b695caecb2269fe23d8dadeb764892 (diff) | |
Implement logging of cores_used in task_states
Diffstat (limited to 'Simulator/src')
| -rw-r--r-- | Simulator/src/database/Database.cpp | 3 | ||||
| -rw-r--r-- | Simulator/src/modeling/machine/CPU.cpp | 8 | ||||
| -rw-r--r-- | Simulator/src/modeling/machine/Machine.cpp | 9 | ||||
| -rw-r--r-- | Simulator/src/simulation/workloads/Workload.cpp | 12 | ||||
| -rw-r--r-- | Simulator/src/simulation/workloads/WorkloadPool.cpp | 1 |
5 files changed, 26 insertions, 7 deletions
diff --git a/Simulator/src/database/Database.cpp b/Simulator/src/database/Database.cpp index b953bc73..5abee41e 100644 --- a/Simulator/src/database/Database.cpp +++ b/Simulator/src/database/Database.cpp @@ -50,8 +50,9 @@ namespace Database uint32_t id = snapshot.id; uint32_t flopsDone = snapshot.flopsDone; + uint32_t coresUsed = snapshot.coresUsed; writeWorkloadStateQuery.reset() - .bindParams<int, int, int, int>(id, experiment.getId(), tick, flopsDone) + .bindParams<int, int, int, int, int>(id, experiment.getId(), tick, flopsDone, coresUsed) .executeOnce(); }); diff --git a/Simulator/src/modeling/machine/CPU.cpp b/Simulator/src/modeling/machine/CPU.cpp index 6167b133..0caa34ec 100644 --- a/Simulator/src/modeling/machine/CPU.cpp +++ b/Simulator/src/modeling/machine/CPU.cpp @@ -4,22 +4,22 @@ namespace Modeling { CPU::CPU(int speed, int cores, int energyConsumption, int failureModelId) : speed(speed), cores(cores), energyConsumption(energyConsumption), failureModelId(failureModelId) {} - int CPU::getCores() + int CPU::getCores() const { return this->cores; } - int CPU::getEnergyConsumption() + int CPU::getEnergyConsumption() const { return this->energyConsumption; } - int CPU::getFailureModelId() + int CPU::getFailureModelId() const { return this->failureModelId; } - int CPU::getSpeed() + int CPU::getSpeed() const { return this->speed; } diff --git a/Simulator/src/modeling/machine/Machine.cpp b/Simulator/src/modeling/machine/Machine.cpp index d7d4fac7..db336dd8 100644 --- a/Simulator/src/modeling/machine/Machine.cpp +++ b/Simulator/src/modeling/machine/Machine.cpp @@ -77,4 +77,13 @@ namespace Modeling { return this->load; } + + uint32_t Machine::getNumberOfCores() const + { + uint32_t cores = 0; + for (auto& processor : cpus) { + cores += processor.getCores(); + } + return cores; + } } diff --git a/Simulator/src/simulation/workloads/Workload.cpp b/Simulator/src/simulation/workloads/Workload.cpp index b6a3b2d0..ba8ca950 100644 --- a/Simulator/src/simulation/workloads/Workload.cpp +++ b/Simulator/src/simulation/workloads/Workload.cpp @@ -1,7 +1,5 @@ #include "simulation/workloads/Workload.h" -#include <iostream> - namespace Simulation { Workload::Workload(int size, int startTick, int dbId, int traceId, int dependency) : dependencyId(dependency), remainingFlops(size), TOTAL_FLOPS(size), START_TICK(startTick), ID(dbId), TRACE_ID(traceId) {} @@ -44,4 +42,14 @@ namespace Simulation { return this->dependencyId; } + + void Workload::setCoresUsed(uint32_t cores) + { + this->coresUsed = cores; + } + + uint32_t Workload::getCoresUsed() + { + return coresUsed; + } } diff --git a/Simulator/src/simulation/workloads/WorkloadPool.cpp b/Simulator/src/simulation/workloads/WorkloadPool.cpp index c4910c7f..251dcb9a 100644 --- a/Simulator/src/simulation/workloads/WorkloadPool.cpp +++ b/Simulator/src/simulation/workloads/WorkloadPool.cpp @@ -1,4 +1,5 @@ #include "simulation/workloads/WorkloadPool.h" +#include "simulation/workloads/Workload.h" #include <iostream> #include <algorithm> |
