summaryrefslogtreecommitdiff
path: root/opendc-experiments
diff options
context:
space:
mode:
Diffstat (limited to 'opendc-experiments')
-rw-r--r--opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt36
-rw-r--r--opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt10
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/analysis.txt0
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/battery.parquetbin0 -> 364 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/host.parquetbin0 -> 91246 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/powerSource.parquetbin0 -> 2184 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/service.parquetbin0 -> 2158 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/task.parquetbin0 -> 132638 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/battery.parquetbin0 -> 364 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/host.parquetbin0 -> 91278 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/powerSource.parquetbin0 -> 2184 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/service.parquetbin0 -> 2158 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/task.parquetbin0 -> 132638 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/battery.parquetbin0 -> 364 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/host.parquetbin0 -> 91261 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/powerSource.parquetbin0 -> 2184 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/service.parquetbin0 -> 2158 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/task.parquetbin0 -> 132638 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/battery.parquetbin0 -> 364 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/host.parquetbin0 -> 95669 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/powerSource.parquetbin0 -> 2184 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/service.parquetbin0 -> 2158 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/task.parquetbin0 -> 132638 bytes
-rw-r--r--opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/trackr.json84
24 files changed, 129 insertions, 1 deletions
diff --git a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt
index d231b93b..27348ece 100644
--- a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt
+++ b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt
@@ -25,20 +25,32 @@
package org.opendc.experiments.base.runner
import com.github.ajalt.clikt.core.CliktCommand
+import com.github.ajalt.clikt.parameters.options.default
import com.github.ajalt.clikt.parameters.options.defaultLazy
+import com.github.ajalt.clikt.parameters.options.help
import com.github.ajalt.clikt.parameters.options.option
import com.github.ajalt.clikt.parameters.types.file
+import com.github.ajalt.clikt.parameters.types.int
import org.opendc.experiments.base.experiment.getExperiment
import java.io.File
+import java.net.InetAddress
+import java.net.ServerSocket
/**
* Main entrypoint of the application.
*/
-public fun main(args: Array<String>): Unit = ExperimentCommand().main(args)
+public fun main(args: Array<String>) {
+ if(args.size == 2){
+ ExperimentCommand().main(args)
+ return
+ }
+ ExperimentListener().main(args)
+}
/**
* Represents the command for the Scenario experiments.
*/
+
internal class ExperimentCommand : CliktCommand(name = "experiment") {
/**
* The path to the environment directory.
@@ -52,3 +64,25 @@ internal class ExperimentCommand : CliktCommand(name = "experiment") {
runExperiment(experiment)
}
}
+
+/**
+ * This class parses the CLI arguments and creates a socket for the listener.
+ * Parameters below are the expected CLI arguments in respective order.
+ * @param port The port to listen to.
+ * @param backlog The number of available connections.
+ * @param address The address to bind to.
+ */
+internal class ExperimentListener: CliktCommand(name = "listener") {
+ private val port : Int by option("--port").int().default(8080).help("port to listen to")
+ private val backlog : Int by option("--backlog").int().default(8080).help("number of connections")
+ private val address : String by option("--address").default("127.0.0.1").help("address to bind to")
+
+ override fun run() {
+ val inetAddress = InetAddress.getByName(address)
+ require(port in 1..<65536) { "Port must be between 0 and 65536" }
+ require(backlog in 1..<50) { "Backlog must be between 1 and 50" }
+
+ val serverSocket = ServerSocket(port, backlog, inetAddress)
+ runListener(serverSocket)
+ }
+}
diff --git a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt
index 079db6fc..83dbe6ac 100644
--- a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt
+++ b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt
@@ -25,6 +25,8 @@ package org.opendc.experiments.base.runner
import me.tongfei.progressbar.ProgressBarBuilder
import me.tongfei.progressbar.ProgressBarStyle
import org.opendc.experiments.base.experiment.Scenario
+import java.net.ServerSocket
+
/**
* Run scenario when no pool is available for parallel execution
@@ -58,3 +60,11 @@ public fun runExperiment(experiment: List<Scenario>) {
}
pb.close()
}
+
+/**
+ * Accepts and processes incoming requests.
+ * @param socket The socket to listen to.
+ */
+public fun runListener(socket: ServerSocket) {
+ println("Hello!")
+} \ No newline at end of file
diff --git a/opendc-experiments/opendc-experiments-m3sa/analysis.txt b/opendc-experiments/opendc-experiments-m3sa/analysis.txt
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/analysis.txt
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/battery.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/battery.parquet
new file mode 100644
index 00000000..93b3f21c
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/battery.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/host.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/host.parquet
new file mode 100644
index 00000000..607119d3
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/host.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/powerSource.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/powerSource.parquet
new file mode 100644
index 00000000..9d21c34f
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/powerSource.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/service.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/service.parquet
new file mode 100644
index 00000000..37ce413d
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/service.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/task.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/task.parquet
new file mode 100644
index 00000000..4d3e1eaa
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/0/seed=0/task.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/battery.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/battery.parquet
new file mode 100644
index 00000000..93b3f21c
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/battery.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/host.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/host.parquet
new file mode 100644
index 00000000..bf6c2c56
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/host.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/powerSource.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/powerSource.parquet
new file mode 100644
index 00000000..fc75914e
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/powerSource.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/service.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/service.parquet
new file mode 100644
index 00000000..37ce413d
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/service.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/task.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/task.parquet
new file mode 100644
index 00000000..4d3e1eaa
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/1/seed=0/task.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/battery.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/battery.parquet
new file mode 100644
index 00000000..93b3f21c
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/battery.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/host.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/host.parquet
new file mode 100644
index 00000000..b51352ad
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/host.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/powerSource.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/powerSource.parquet
new file mode 100644
index 00000000..a159cc31
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/powerSource.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/service.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/service.parquet
new file mode 100644
index 00000000..37ce413d
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/service.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/task.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/task.parquet
new file mode 100644
index 00000000..4d3e1eaa
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/2/seed=0/task.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/battery.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/battery.parquet
new file mode 100644
index 00000000..93b3f21c
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/battery.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/host.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/host.parquet
new file mode 100644
index 00000000..420e8521
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/host.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/powerSource.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/powerSource.parquet
new file mode 100644
index 00000000..2ed6cdb3
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/powerSource.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/service.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/service.parquet
new file mode 100644
index 00000000..37ce413d
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/service.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/task.parquet b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/task.parquet
new file mode 100644
index 00000000..4d3e1eaa
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/raw-output/3/seed=0/task.parquet
Binary files differ
diff --git a/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/trackr.json b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/trackr.json
new file mode 100644
index 00000000..dcee7315
--- /dev/null
+++ b/opendc-experiments/opendc-experiments-m3sa/src/test/resources/outputs/trackr.json
@@ -0,0 +1,84 @@
+[{
+ "name": "outputs/",
+ "outputFolder": "src/test/resources/",
+ "topology": {
+ "pathToFile": "src/test/resources/topologies/experiment1/topology_mse.json"
+ },
+ "workload": {
+ "pathToFile": "src/test/resources/workloadTraces/experiment1",
+ "type": "ComputeWorkload"
+ },
+ "exportModel": {
+ "exportInterval": 30000,
+ "filesToExportDict": {
+ "host": true,
+ "task": true,
+ "powerSource": true,
+ "battery": true,
+ "service": true
+ }
+ }
+},
+{
+ "name": "outputs/",
+ "outputFolder": "src/test/resources/",
+ "topology": {
+ "pathToFile": "src/test/resources/topologies/experiment1/topology_sqrt.json"
+ },
+ "workload": {
+ "pathToFile": "src/test/resources/workloadTraces/experiment1",
+ "type": "ComputeWorkload"
+ },
+ "exportModel": {
+ "exportInterval": 30000,
+ "filesToExportDict": {
+ "host": true,
+ "task": true,
+ "powerSource": true,
+ "battery": true,
+ "service": true
+ }
+ }
+},
+{
+ "name": "outputs/",
+ "outputFolder": "src/test/resources/",
+ "topology": {
+ "pathToFile": "src/test/resources/topologies/experiment1/topology_asymptotic1.json"
+ },
+ "workload": {
+ "pathToFile": "src/test/resources/workloadTraces/experiment1",
+ "type": "ComputeWorkload"
+ },
+ "exportModel": {
+ "exportInterval": 30000,
+ "filesToExportDict": {
+ "host": true,
+ "task": true,
+ "powerSource": true,
+ "battery": true,
+ "service": true
+ }
+ }
+},
+{
+ "name": "outputs/",
+ "outputFolder": "src/test/resources/",
+ "topology": {
+ "pathToFile": "src/test/resources/topologies/experiment1/topology_asymptotic2.json"
+ },
+ "workload": {
+ "pathToFile": "src/test/resources/workloadTraces/experiment1",
+ "type": "ComputeWorkload"
+ },
+ "exportModel": {
+ "exportInterval": 30000,
+ "filesToExportDict": {
+ "host": true,
+ "task": true,
+ "powerSource": true,
+ "battery": true,
+ "service": true
+ }
+ }
+}] \ No newline at end of file