summaryrefslogtreecommitdiff
path: root/opendc-compute/opendc-compute-workload
diff options
context:
space:
mode:
Diffstat (limited to 'opendc-compute/opendc-compute-workload')
-rw-r--r--opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/ComputeWorkloadLoader.kt2
-rw-r--r--opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/Task.kt5
-rw-r--r--opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/WorkloadLoader.kt22
3 files changed, 5 insertions, 24 deletions
diff --git a/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/ComputeWorkloadLoader.kt b/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/ComputeWorkloadLoader.kt
index 2b8b589f..cbff5fb9 100644
--- a/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/ComputeWorkloadLoader.kt
+++ b/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/ComputeWorkloadLoader.kt
@@ -126,7 +126,7 @@ public class ComputeWorkloadLoader(
continue
}
- val submissionTime = reader.getInstant(submissionTimeCol)!!
+ val submissionTime = reader.getInstant(submissionTimeCol)!!.toEpochMilli()
val duration = reader.getLong(durationCol)
val cpuCount = reader.getInt(cpuCountCol)
val cpuCapacity = reader.getDouble(cpuCapacityCol)
diff --git a/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/Task.kt b/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/Task.kt
index 7a5089b9..d32c84f6 100644
--- a/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/Task.kt
+++ b/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/Task.kt
@@ -23,7 +23,6 @@
package org.opendc.compute.workload
import org.opendc.simulator.compute.workload.trace.TraceWorkload
-import java.time.Instant
import java.util.UUID
/**
@@ -45,7 +44,7 @@ public data class Task(
val cpuCapacity: Double,
val memCapacity: Long,
val totalLoad: Double,
- var submissionTime: Instant,
+ var submissionTime: Long,
val duration: Long,
- val trace: TraceWorkload,
+ var trace: TraceWorkload,
)
diff --git a/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/WorkloadLoader.kt b/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/WorkloadLoader.kt
index ecb98ba2..6b9c3753 100644
--- a/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/WorkloadLoader.kt
+++ b/opendc-compute/opendc-compute-workload/src/main/kotlin/org/opendc/compute/workload/WorkloadLoader.kt
@@ -22,7 +22,6 @@
package org.opendc.compute.workload
import mu.KotlinLogging
-import java.time.Instant
import java.time.LocalDateTime
import java.time.ZoneOffset
@@ -34,13 +33,13 @@ public abstract class WorkloadLoader(private val submissionTime: String? = null)
return
}
- val workloadSubmissionTime = workload.minOf({ it.submissionTime }).toEpochMilli()
+ val workloadSubmissionTime = workload.minOf({ it.submissionTime })
val submissionTimeLong = LocalDateTime.parse(submissionTime).toInstant(ZoneOffset.UTC).toEpochMilli()
val timeShift = submissionTimeLong - workloadSubmissionTime
for (task in workload) {
- task.submissionTime = Instant.ofEpochMilli(task.submissionTime.toEpochMilli() + timeShift)
+ task.submissionTime += timeShift
}
}
@@ -54,10 +53,6 @@ public abstract class WorkloadLoader(private val submissionTime: String? = null)
reScheduleTasks(workload)
-// if (fraction >= 1.0) {
-// return workload
-// }
-
if (fraction <= 0.0) {
throw Error("The fraction of tasks to load cannot be 0.0 or lower")
}
@@ -75,19 +70,6 @@ public abstract class WorkloadLoader(private val submissionTime: String? = null)
currentLoad += entry.totalLoad
}
-// val shuffledWorkload = workload.shuffled()
-// for (entry in shuffledWorkload) {
-// val entryLoad = entry.totalLoad
-//
-// // TODO: ask Sacheen
-// if ((currentLoad + entryLoad) / totalLoad > fraction) {
-// break
-// }
-//
-// currentLoad += entryLoad
-// res += entry
-// }
-
logger.info { "Sampled ${workload.size} VMs (fraction $fraction) into subset of ${res.size} VMs" }
return res