From 3a4363d0bba006c6a278c12a3264b8976b8d4485 Mon Sep 17 00:00:00 2001 From: mjkwiatkowski Date: Tue, 16 Jun 2026 12:21:53 +0200 Subject: fix: fixing bugs that arise from different compute monitors --- opendc-common/build.gradle.kts | 2 +- .../experiments/base/runner/ScenarioRunner.kt | 22 ++++++++-------------- shell_scripts/systemd/redis.sh | 4 ++++ 3 files changed, 13 insertions(+), 15 deletions(-) create mode 100755 shell_scripts/systemd/redis.sh diff --git a/opendc-common/build.gradle.kts b/opendc-common/build.gradle.kts index 0fd56bb5..9bd209d4 100644 --- a/opendc-common/build.gradle.kts +++ b/opendc-common/build.gradle.kts @@ -57,7 +57,7 @@ dependencies { // Source: https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java // @Mateusz crucial this is an _api_ and not _implementation_ - api("com.google.protobuf:protobuf-java:4.33.5") + api("com.google.protobuf:protobuf-java:4.35.0") // Source: https://mvnrepository.com/artifact/io.confluent/kafka-protobuf-serializer implementation("io.confluent:kafka-protobuf-serializer:8.1.1") diff --git a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ScenarioRunner.kt b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ScenarioRunner.kt index b07a50ae..846bde5a 100644 --- a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ScenarioRunner.kt +++ b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ScenarioRunner.kt @@ -30,6 +30,7 @@ import org.opendc.compute.simulator.provisioner.setupComputeService import org.opendc.compute.simulator.provisioner.setupHosts import org.opendc.compute.simulator.scheduler.ComputeScheduler import org.opendc.compute.simulator.service.ComputeService +import org.opendc.compute.simulator.telemetry.KafkaComputeMonitor import org.opendc.compute.simulator.telemetry.parquet.ComputeExportConfig import org.opendc.compute.simulator.telemetry.parquet.ParquetComputeMonitor import org.opendc.compute.simulator.telemetry.parquet.withGpuColumns @@ -135,11 +136,7 @@ public fun runScenario( provisioner, serviceDomain, scenario, - seed, startTime, - scenario.id, - computeExportConfig = - scenario.exportModelSpec.computeExportConfig.withGpuColumns(gpuCount), ) val service = provisioner.registry.resolve(serviceDomain, ComputeService::class.java)!! @@ -192,21 +189,18 @@ public fun addExportModel( provisioner: Provisioner, serviceDomain: String, scenario: Scenario, - seed: Long, startTime: Duration, - index: Int, - computeExportConfig: ComputeExportConfig = scenario.exportModelSpec.computeExportConfig, ) { + + /* + * Here is the entry point to KafkaComputeMonitor(). + * With this setting, the simulator no longer writes to parquet files. + * To get back the original code, refer to https://github.com/atlarge-research/opendc + * */ provisioner.runStep( registerComputeMonitor( serviceDomain, - ParquetComputeMonitor( - File("${scenario.outputFolder}/raw-output/$index"), - "seed=$seed", - bufferSize = 4096, - scenario.exportModelSpec.filesToExportDict, - computeExportConfig = computeExportConfig, - ), + KafkaComputeMonitor(), Duration.ofSeconds(scenario.exportModelSpec.exportInterval), startTime, scenario.exportModelSpec.filesToExportDict, diff --git a/shell_scripts/systemd/redis.sh b/shell_scripts/systemd/redis.sh new file mode 100755 index 00000000..dbebb41d --- /dev/null +++ b/shell_scripts/systemd/redis.sh @@ -0,0 +1,4 @@ +#!/bin/bash +doas systemctl enable redis.service +doas systemctl start redis.service +doas systemctl status redis.service -- cgit v1.2.3