From e6c36a309c7372bb0de3ae4a3277e91c1ee4913b Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Wed, 11 Nov 2020 00:12:17 +0100 Subject: Take into account energy consumption of CPUs in topology --- .../src/main/kotlin/org/opendc/runner/web/TopologyParser.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'simulator/opendc-runner-web') 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, 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, 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) ) ) } -- cgit v1.2.3