diff options
| author | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2020-11-11 00:12:17 +0100 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2020-11-11 00:40:00 +0100 |
| commit | e6c36a309c7372bb0de3ae4a3277e91c1ee4913b (patch) | |
| tree | 399969e871ef89f427707c927ff5e65d4c14eba8 /simulator/opendc-runner-web | |
| parent | efd57bc38aafdbaebe7978fcb3428fa8b0eabd0c (diff) | |
Take into account energy consumption of CPUs in topology
Diffstat (limited to 'simulator/opendc-runner-web')
| -rw-r--r-- | simulator/opendc-runner-web/src/main/kotlin/org/opendc/runner/web/TopologyParser.kt | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/simulator/opendc-runner-web/src/main/kotlin/org/opendc/runner/web/TopologyParser.kt b/simulator/opendc-runner-web/src/main/kotlin/org/opendc/runner/web/TopologyParser.kt index 80bd20f7..8bd1eefb 100644 --- a/simulator/opendc-runner-web/src/main/kotlin/org/opendc/runner/web/TopologyParser.kt +++ b/simulator/opendc-runner-web/src/main/kotlin/org/opendc/runner/web/TopologyParser.kt @@ -81,6 +81,9 @@ public class TopologyParser(private val collection: MongoCollection<Document>, p memory.get("sizeMb", Number::class.java).toLong() ) } + + val energyConsumptionW = machine.getList("cpus", Document::class.java).sumBy { it.getInteger("energyConsumptionW") }.toDouble() + nodes.add( SimBareMetalDriver( coroutineScope, @@ -89,10 +92,7 @@ public class TopologyParser(private val collection: MongoCollection<Document>, p "node-$clusterId-$position", mapOf(NODE_CLUSTER to clusterId), SimMachineModel(processors, memoryUnits), - // For now we assume a simple linear load model with an idle draw of ~200W and a maximum - // power draw of 350W. - // Source: https://stackoverflow.com/questions/6128960 - LinearLoadPowerModel(200.0, 350.0) + LinearLoadPowerModel(energyConsumptionW, 2 * energyConsumptionW) ) ) } |
