summaryrefslogtreecommitdiff
path: root/opendc-compute/opendc-compute-simulator/src/main/kotlin
diff options
context:
space:
mode:
authorDante Niewenhuis <d.niewenhuis@hotmail.com>2025-07-22 15:47:44 +0200
committerGitHub <noreply@github.com>2025-07-22 15:47:44 +0200
commite22c97dcca7478d6941b78bdf7cd873bc0d23cdc (patch)
treef1859c16f4c7973d8b16ed693caad4c749d42331 /opendc-compute/opendc-compute-simulator/src/main/kotlin
parent0c0cf25616771cd40a9e401edcba4a5e5016f76e (diff)
Updated workload schema (#360)
Diffstat (limited to 'opendc-compute/opendc-compute-simulator/src/main/kotlin')
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/internal/Guest.kt2
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/provisioner/HostsProvisioningStep.kt5
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/DifferentHostFilter.kt5
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/SameHostFilter.kt5
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltTaskExportColumns.kt5
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskInfo.kt2
-rw-r--r--opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskTableReaderImpl.kt2
7 files changed, 12 insertions, 14 deletions
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/internal/Guest.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/internal/Guest.kt
index 40de94bb..ed0c5226 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/internal/Guest.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/internal/Guest.kt
@@ -73,7 +73,7 @@ public class Guest(
public fun start() {
when (state) {
TaskState.CREATED, TaskState.FAILED, TaskState.PAUSED -> {
- LOGGER.info { "User requested to start task ${task.uid}" }
+ LOGGER.info { "User requested to start task ${task.id}" }
doStart()
}
TaskState.RUNNING -> return
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/provisioner/HostsProvisioningStep.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/provisioner/HostsProvisioningStep.kt
index ced38480..7a0d5d65 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/provisioner/HostsProvisioningStep.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/provisioner/HostsProvisioningStep.kt
@@ -22,6 +22,7 @@
package org.opendc.compute.simulator.provisioner
+import org.opendc.common.ResourceType
import org.opendc.compute.carbon.getCarbonFragments
import org.opendc.compute.simulator.host.SimHost
import org.opendc.compute.simulator.service.ComputeService
@@ -119,11 +120,11 @@ public class HostsProvisioningStep internal constructor(
carbonModel?.addReceiver(batteryPolicy)
- FlowEdge(hostDistributor, batteryAggregator)
+ FlowEdge(hostDistributor, batteryAggregator, ResourceType.POWER)
service.addBattery(battery)
} else {
- FlowEdge(hostDistributor, simPowerSource)
+ FlowEdge(hostDistributor, simPowerSource, ResourceType.POWER)
}
// Create hosts, they are connected to the powerMux when SimMachine is created
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/DifferentHostFilter.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/DifferentHostFilter.kt
index 279a2717..bc98a575 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/DifferentHostFilter.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/DifferentHostFilter.kt
@@ -24,7 +24,6 @@ package org.opendc.compute.simulator.scheduler.filters
import org.opendc.compute.simulator.service.HostView
import org.opendc.compute.simulator.service.ServiceTask
-import java.util.UUID
/**
* A [HostFilter] that ensures an instance is scheduled on a different host from a set of instances.
@@ -35,7 +34,7 @@ public class DifferentHostFilter : HostFilter {
task: ServiceTask,
): Boolean {
@Suppress("UNCHECKED_CAST")
- val affinityUUIDs = task.meta["scheduler_hint:different_host"] as? Set<UUID> ?: return true
- return host.host.getInstances().none { it.uid in affinityUUIDs }
+ val affinityIDs = task.meta["scheduler_hint:different_host"] as? Set<Int> ?: return true
+ return host.host.getInstances().none { it.id in affinityIDs }
}
}
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/SameHostFilter.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/SameHostFilter.kt
index 761b125d..73fd0d3c 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/SameHostFilter.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/scheduler/filters/SameHostFilter.kt
@@ -24,7 +24,6 @@ package org.opendc.compute.simulator.scheduler.filters
import org.opendc.compute.simulator.service.HostView
import org.opendc.compute.simulator.service.ServiceTask
-import java.util.UUID
/**
* A [HostFilter] that ensures an instance is scheduled on the same host as all other instances in a set of instances.
@@ -35,7 +34,7 @@ public class SameHostFilter : HostFilter {
task: ServiceTask,
): Boolean {
@Suppress("UNCHECKED_CAST")
- val affinityUUIDs = task.meta["scheduler_hint:same_host"] as? Set<UUID> ?: return true
- return host.host.getInstances().any { it.uid in affinityUUIDs }
+ val affinityIDs = task.meta["scheduler_hint:same_host"] as? Set<Int> ?: return true
+ return host.host.getInstances().any { it.id in affinityIDs }
}
}
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltTaskExportColumns.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltTaskExportColumns.kt
index 07750114..0397b9a1 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltTaskExportColumns.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/parquet/DfltTaskExportColumns.kt
@@ -61,10 +61,9 @@ public object DfltTaskExportColumns {
public val TASK_ID: ExportColumn<TaskTableReader> =
ExportColumn(
field =
- Types.required(BINARY)
- .`as`(LogicalTypeAnnotation.stringType())
+ Types.required(INT32)
.named("task_id"),
- ) { Binary.fromString(it.taskInfo.id) }
+ ) { it.taskInfo.id }
public val TASK_NAME: ExportColumn<TaskTableReader> =
ExportColumn(
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskInfo.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskInfo.kt
index c1a14613..2727847f 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskInfo.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskInfo.kt
@@ -26,7 +26,7 @@ package org.opendc.compute.simulator.telemetry.table.task
* Static information about a task exposed to the telemetry service.
*/
public data class TaskInfo(
- val id: String,
+ val id: Int,
val name: String,
val type: String,
val arch: String,
diff --git a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskTableReaderImpl.kt b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskTableReaderImpl.kt
index ce62fdb0..3183cf11 100644
--- a/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskTableReaderImpl.kt
+++ b/opendc-compute/opendc-compute-simulator/src/main/kotlin/org/opendc/compute/simulator/telemetry/table/task/TaskTableReaderImpl.kt
@@ -89,7 +89,7 @@ public class TaskTableReaderImpl(
*/
override val taskInfo: TaskInfo =
TaskInfo(
- task.uid.toString(),
+ task.id,
task.name,
"vm",
"x86",