summaryrefslogtreecommitdiff
path: root/opendc/opendc-experiments-sc20/src
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2020-05-17 14:25:58 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2020-05-17 14:25:58 +0200
commitbe6100ef52703e91a298857652f997fa0fde4be9 (patch)
tree164172f9e5abea52605cb37b8ee81c7588cf38dd /opendc/opendc-experiments-sc20/src
parent83fd4e7d784e9038306294e154e84b8aa5f0443f (diff)
feat: Add option for simple test run
Diffstat (limited to 'opendc/opendc-experiments-sc20/src')
-rw-r--r--opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/Main.kt4
-rw-r--r--opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/experiment/Portfolios.kt18
2 files changed, 21 insertions, 1 deletions
diff --git a/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/Main.kt b/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/Main.kt
index ca06bcbb..14de52b8 100644
--- a/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/Main.kt
+++ b/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/Main.kt
@@ -30,6 +30,7 @@ import com.atlarge.opendc.experiments.sc20.experiment.MoreHpcPortfolio
import com.atlarge.opendc.experiments.sc20.experiment.MoreVelocityPortfolio
import com.atlarge.opendc.experiments.sc20.experiment.OperationalPhenomenaPortfolio
import com.atlarge.opendc.experiments.sc20.experiment.Portfolio
+import com.atlarge.opendc.experiments.sc20.experiment.TestPortfolio
import com.atlarge.opendc.experiments.sc20.reporter.ConsoleExperimentReporter
import com.atlarge.opendc.experiments.sc20.runner.ExperimentDescriptor
import com.atlarge.opendc.experiments.sc20.runner.execution.ThreadPoolExperimentScheduler
@@ -96,9 +97,10 @@ class ExperimentCli : CliktCommand(name = "sc20-experiment") {
private val portfolios by option("--portfolio")
.choice(
"hor-ver" to { experiment: Experiment, i: Int -> HorVerPortfolio(experiment, i) } as (Experiment, Int) -> Portfolio,
- "more-velocity" to ({ experiment, i -> MoreVelocityPortfolio(experiment, i) }),
+ "more-velocity" to { experiment, i -> MoreVelocityPortfolio(experiment, i) },
"more-hpc" to { experiment, i -> MoreHpcPortfolio(experiment, i) },
"operational-phenomena" to { experiment, i -> OperationalPhenomenaPortfolio(experiment, i) },
+ "test" to { experiment, i -> TestPortfolio(experiment, i) },
ignoreCase = true
)
.multiple()
diff --git a/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/experiment/Portfolios.kt b/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/experiment/Portfolios.kt
index 1395dd06..362144ae 100644
--- a/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/experiment/Portfolios.kt
+++ b/opendc/opendc-experiments-sc20/src/main/kotlin/com/atlarge/opendc/experiments/sc20/experiment/Portfolios.kt
@@ -135,3 +135,21 @@ public class OperationalPhenomenaPortfolio(parent: Experiment, id: Int) : Portfo
"random"
)
}
+
+public class TestPortfolio(parent: Experiment, id: Int) : Portfolio(parent, id, "test") {
+ override val repetitions: Int = 1
+
+ override val topologies: List<Topology> = listOf(
+ Topology("base")
+ )
+
+ override val workloads: List<Workload> = listOf(
+ Workload("solvinity", 1.0)
+ )
+
+ override val operationalPhenomenas: List<OperationalPhenomena> = listOf(
+ OperationalPhenomena(failureFrequency = 24.0 * 7, hasInterference = true)
+ )
+
+ override val allocationPolicies: List<String> = listOf("active-servers")
+}