summaryrefslogtreecommitdiff
path: root/opendc/opendc-experiments-sc20
diff options
context:
space:
mode:
authorGeorgios Andreadis <info@gandreadis.com>2020-03-10 14:50:53 +0100
committerGeorgios Andreadis <info@gandreadis.com>2020-03-11 12:47:56 +0100
commitb67045d699d0d6d33df9a7ee4ee99148528a936a (patch)
tree4ef62992ac839781e265ced67fd6b42f448f5e38 /opendc/opendc-experiments-sc20
parent1ccfcb28bb91c9dc456a1f324a0be6300086eb28 (diff)
Write parsers for internal (proprietary) traces and environment files
Diffstat (limited to 'opendc/opendc-experiments-sc20')
-rw-r--r--opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/TestExperiment.kt14
1 files changed, 7 insertions, 7 deletions
diff --git a/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/TestExperiment.kt b/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/TestExperiment.kt
index 76f7b600..b48abf2e 100644
--- a/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/TestExperiment.kt
+++ b/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/TestExperiment.kt
@@ -33,9 +33,9 @@ import com.atlarge.opendc.compute.core.monitor.ServerMonitor
import com.atlarge.opendc.compute.metal.service.ProvisioningService
import com.atlarge.opendc.compute.virt.service.SimpleVirtProvisioningService
import com.atlarge.opendc.compute.virt.service.allocation.AvailableMemoryAllocationPolicy
-import com.atlarge.opendc.format.environment.sc20.Sc20EnvironmentReader
+import com.atlarge.opendc.format.environment.sc20.Sc20ClusterEnvironmentReader
import com.atlarge.opendc.format.trace.sc20.Sc20PerformanceInterferenceReader
-import com.atlarge.opendc.format.trace.vm.VmTraceReader
+import com.atlarge.opendc.format.trace.sc20.Sc20TraceReader
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
@@ -47,8 +47,8 @@ import kotlin.math.max
* Main entry point of the experiment.
*/
fun main(args: Array<String>) {
- if (args.isEmpty()) {
- println("error: Please provide path to directory containing VM trace files")
+ if (args.size < 2) {
+ println("error: Please provide path to directory containing VM trace files and the path to the environment file")
return
}
@@ -64,7 +64,7 @@ fun main(args: Array<String>) {
val root = system.newDomain("root")
root.launch {
- val environment = Sc20EnvironmentReader(object {}.javaClass.getResourceAsStream("/env/setup-small.json"))
+ val environment = Sc20ClusterEnvironmentReader(File(args[1]))
.use { it.construct(root) }
val performanceInterferenceModel = Sc20PerformanceInterferenceReader(
@@ -80,8 +80,8 @@ fun main(args: Array<String>) {
hypervisorMonitor
)
- val reader = VmTraceReader(File(args[0]), performanceInterferenceModel)
- delay(1376314846 * 1000L)
+ val reader = Sc20TraceReader(File(args[0]), performanceInterferenceModel)
+// delay(1376314846 * 1000L)
while (reader.hasNext()) {
val (time, workload) = reader.next()
delay(max(0, time * 1000 - simulationContext.clock.millis()))