summaryrefslogtreecommitdiff
path: root/opendc-experiments/opendc-experiments-energy21
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-06-24 14:29:29 +0200
committerGitHub <noreply@github.com>2021-06-24 14:29:29 +0200
commit36cb3c0cf642990a7b087a56d627a0de4fe2e71f (patch)
tree67c09fa437bc9b1f37f23b80b970b6aa686ad818 /opendc-experiments/opendc-experiments-energy21
parenta29a61334adb8432c69800b19508eca4eff4bfd1 (diff)
parente56967a29ac2b2d26cc085b1f3e27096dad6a170 (diff)
simulator: Support perf interference in uniform resource model
This pull request re-implements the performance interference model to integrate with the uniform resource model in OpenDC. This forms the basis for other forms of resource interference (e.g., network or disk). * Add interface for resource interference in uniform resource model (`opendc-simulator-resources`) * Remove dependency on performance interference model from trace readers * Re-implement the performance interference model on top of the interface in the uniform resource model. **Breaking API Changes** * The original performance interference model classes are removed * The SC20 trace and environment related readers have moved to the Capelin experiments module. * Changes to the interfaces in `opendc-format`. Implements #103
Diffstat (limited to 'opendc-experiments/opendc-experiments-energy21')
-rw-r--r--opendc-experiments/opendc-experiments-energy21/src/main/kotlin/org/opendc/experiments/energy21/EnergyExperiment.kt5
1 files changed, 2 insertions, 3 deletions
diff --git a/opendc-experiments/opendc-experiments-energy21/src/main/kotlin/org/opendc/experiments/energy21/EnergyExperiment.kt b/opendc-experiments/opendc-experiments-energy21/src/main/kotlin/org/opendc/experiments/energy21/EnergyExperiment.kt
index 28928dcb..8fc4f6b8 100644
--- a/opendc-experiments/opendc-experiments-energy21/src/main/kotlin/org/opendc/experiments/energy21/EnergyExperiment.kt
+++ b/opendc-experiments/opendc-experiments-energy21/src/main/kotlin/org/opendc/experiments/energy21/EnergyExperiment.kt
@@ -38,7 +38,7 @@ import org.opendc.compute.service.scheduler.weights.RandomWeigher
import org.opendc.compute.simulator.SimHost
import org.opendc.experiments.capelin.*
import org.opendc.experiments.capelin.monitor.ParquetExperimentMonitor
-import org.opendc.experiments.capelin.trace.Sc20StreamingParquetTraceReader
+import org.opendc.experiments.capelin.trace.StreamingParquetTraceReader
import org.opendc.harness.dsl.Experiment
import org.opendc.harness.dsl.anyOf
import org.opendc.simulator.compute.kernel.SimFairShareHypervisorProvider
@@ -53,7 +53,6 @@ import org.opendc.simulator.resources.SimResourceInterpreter
import java.io.File
import java.time.Clock
import java.util.*
-import kotlin.random.asKotlinRandom
/**
* Experiments for the OpenDC project on Energy modeling.
@@ -88,7 +87,7 @@ public class EnergyExperiment : Experiment("Energy Modeling 2021") {
val meterProvider: MeterProvider = createMeterProvider(clock)
val monitor = ParquetExperimentMonitor(File(config.getString("output-path")), "power_model=$powerModel/run_id=$repeat", 4096)
- val trace = Sc20StreamingParquetTraceReader(File(config.getString("trace-path"), trace), random = Random(1).asKotlinRandom())
+ val trace = StreamingParquetTraceReader(File(config.getString("trace-path"), trace))
withComputeService(clock, meterProvider, allocationPolicy) { scheduler ->
withMonitor(monitor, clock, meterProvider as MetricProducer, scheduler) {