summaryrefslogtreecommitdiff
path: root/opendc-experiments/opendc-experiments-tf20/src/main
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2022-05-06 10:22:35 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2022-05-06 18:37:36 +0200
commit0e8ad565a78dd194e687003e5ccc8ccf9b28667f (patch)
treedd99fa1d47a3fead307f1916b3d0219c59f80f99 /opendc-experiments/opendc-experiments-tf20/src/main
parent0b584e261fdf34d662129b1b47f00711c0ce0779 (diff)
refactor(exp/tf20): Remove OpenTelemetry from TF20 experiment
This change removes the OpenTelemetry integration from the OpenDC Tensorflow 2020 experiments. Previously, we chose to integrate OpenTelemetry to provide a unified way to report metrics to the users. See the previous commit removing it from the "Compute" modules for the reasoning behind this change.
Diffstat (limited to 'opendc-experiments/opendc-experiments-tf20/src/main')
-rw-r--r--opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/TensorFlowExperiment.kt13
-rw-r--r--opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/core/SimTFDevice.kt18
2 files changed, 3 insertions, 28 deletions
diff --git a/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/TensorFlowExperiment.kt b/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/TensorFlowExperiment.kt
index 2153a862..19236029 100644
--- a/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/TensorFlowExperiment.kt
+++ b/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/TensorFlowExperiment.kt
@@ -22,8 +22,6 @@
package org.opendc.experiments.tf20
-import io.opentelemetry.api.metrics.MeterProvider
-import io.opentelemetry.sdk.metrics.SdkMeterProvider
import org.opendc.experiments.tf20.core.SimTFDevice
import org.opendc.experiments.tf20.distribute.*
import org.opendc.experiments.tf20.keras.AlexNet
@@ -32,7 +30,6 @@ import org.opendc.harness.dsl.Experiment
import org.opendc.harness.dsl.anyOf
import org.opendc.simulator.compute.power.LinearPowerModel
import org.opendc.simulator.core.runBlockingSimulation
-import org.opendc.telemetry.sdk.toOtelClock
/**
* Experiments with the TensorFlow simulation model.
@@ -49,17 +46,11 @@ public class TensorFlowExperiment : Experiment(name = "tf20") {
private val batchSize by anyOf(16, 32, 64, 128)
override fun doRun(repeat: Int): Unit = runBlockingSimulation {
- val meterProvider: MeterProvider = SdkMeterProvider
- .builder()
- .setClock(clock.toOtelClock())
- .build()
- val meter = meterProvider.get("opendc-tf20")
-
val envInput = checkNotNull(TensorFlowExperiment::class.java.getResourceAsStream(environmentFile))
val def = MLEnvironmentReader().readEnvironment(envInput).first()
val device = SimTFDevice(
- def.uid, def.meta["gpu"] as Boolean, coroutineContext, clock, meter, def.model.cpus[0],
- def.model.memory[0], LinearPowerModel(250.0, 60.0)
+ def.uid, def.meta["gpu"] as Boolean, coroutineContext, clock, def.model.cpus[0], def.model.memory[0],
+ LinearPowerModel(250.0, 60.0)
)
val strategy = OneDeviceStrategy(device)
diff --git a/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/core/SimTFDevice.kt b/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/core/SimTFDevice.kt
index 99948c8e..d2105196 100644
--- a/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/core/SimTFDevice.kt
+++ b/opendc-experiments/opendc-experiments-tf20/src/main/kotlin/org/opendc/experiments/tf20/core/SimTFDevice.kt
@@ -22,7 +22,6 @@
package org.opendc.experiments.tf20.core
-import io.opentelemetry.api.metrics.Meter
import kotlinx.coroutines.*
import org.opendc.simulator.compute.SimBareMetalMachine
import org.opendc.simulator.compute.SimMachine
@@ -50,7 +49,6 @@ public class SimTFDevice(
override val isGpu: Boolean,
context: CoroutineContext,
clock: Clock,
- meter: Meter,
pu: ProcessingUnit,
private val memory: MemoryUnit,
powerModel: PowerModel
@@ -69,21 +67,9 @@ public class SimTFDevice(
)
/**
- * The usage of the device.
+ * Metrics collected by the device.
*/
- private val _usage = meter.histogramBuilder("device.usage")
- .setDescription("The amount of device resources used")
- .setUnit("MHz")
- .build()
private var _resourceUsage = 0.0
-
- /**
- * The power draw of the device.
- */
- private val _power = meter.histogramBuilder("device.power")
- .setDescription("The power draw of the device")
- .setUnit("W")
- .build()
private var _powerUsage = 0.0
private var _energyUsage = 0.0
@@ -171,9 +157,7 @@ public class SimTFDevice(
}
override fun onConverge(conn: FlowConnection, now: Long) {
- _usage.record(conn.rate)
_resourceUsage = conn.rate
- _power.record(machine.psu.powerDraw)
_powerUsage = machine.powerUsage
_energyUsage = machine.energyUsage
}