summaryrefslogtreecommitdiff
path: root/simulator/opendc-runner-web
diff options
context:
space:
mode:
Diffstat (limited to 'simulator/opendc-runner-web')
-rw-r--r--simulator/opendc-runner-web/build.gradle.kts1
-rw-r--r--simulator/opendc-runner-web/src/main/kotlin/org/opendc/runner/web/TopologyParser.kt16
2 files changed, 9 insertions, 8 deletions
diff --git a/simulator/opendc-runner-web/build.gradle.kts b/simulator/opendc-runner-web/build.gradle.kts
index 594e8197..9e2c5277 100644
--- a/simulator/opendc-runner-web/build.gradle.kts
+++ b/simulator/opendc-runner-web/build.gradle.kts
@@ -38,6 +38,7 @@ dependencies {
implementation(project(":opendc-format"))
implementation(project(":opendc-experiments:opendc-experiments-sc20"))
implementation(project(":opendc-simulator:opendc-simulator-core"))
+ implementation(project(":opendc-simulator:opendc-simulator-compute"))
implementation("com.github.ajalt:clikt:2.8.0")
implementation("io.github.microutils:kotlin-logging:1.7.10")
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 de9ece75..cdcf1b08 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
@@ -31,11 +31,8 @@ import com.mongodb.client.model.Projections
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch
import org.bson.Document
-import org.opendc.compute.core.MemoryUnit
-import org.opendc.compute.core.ProcessingNode
-import org.opendc.compute.core.ProcessingUnit
import org.opendc.compute.metal.NODE_CLUSTER
-import org.opendc.compute.metal.driver.SimpleBareMetalDriver
+import org.opendc.compute.metal.driver.SimBareMetalDriver
import org.opendc.compute.metal.power.LinearLoadPowerModel
import org.opendc.compute.metal.service.ProvisioningService
import org.opendc.compute.metal.service.SimpleProvisioningService
@@ -44,6 +41,10 @@ import org.opendc.core.Platform
import org.opendc.core.Zone
import org.opendc.core.services.ServiceRegistry
import org.opendc.format.environment.EnvironmentReader
+import org.opendc.simulator.compute.SimMachineModel
+import org.opendc.simulator.compute.model.MemoryUnit
+import org.opendc.simulator.compute.model.ProcessingNode
+import org.opendc.simulator.compute.model.ProcessingUnit
import java.time.Clock
import java.util.*
@@ -55,7 +56,7 @@ public class TopologyParser(private val collection: MongoCollection<Document>, p
* Parse the topology with the specified [id].
*/
override suspend fun construct(coroutineScope: CoroutineScope, clock: Clock): Environment {
- val nodes = mutableListOf<SimpleBareMetalDriver>()
+ val nodes = mutableListOf<SimBareMetalDriver>()
val random = Random(0)
for (machine in fetchMachines(id)) {
@@ -81,14 +82,13 @@ public class TopologyParser(private val collection: MongoCollection<Document>, p
)
}
nodes.add(
- SimpleBareMetalDriver(
+ SimBareMetalDriver(
coroutineScope,
clock,
UUID(random.nextLong(), random.nextLong()),
"node-$clusterId-$position",
mapOf(NODE_CLUSTER to clusterId),
- processors,
- memoryUnits,
+ 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