diff options
| author | Dante Niewenhuis <d.niewenhuis@hotmail.com> | 2024-03-05 16:50:35 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-05 16:50:35 +0100 |
| commit | 960b3d8a13c67ac4b7f479d5764b0b618fc9ea09 (patch) | |
| tree | 4f103bcf6635341827d9cfa10c10cfde9543f04f /opendc-experiments/opendc-experiments-capelin/src/test | |
| parent | 5864cbcbfe2eb8c36ca05c3a39c7e5916aeecaec (diff) | |
Cpu fix (#208)
* Updated the topology format to JSON. Updated TopologyReader.kt to handle JSON filed. Added documentation for the new format.
* applied spotless kotlin
* small update
* Updated for spotless apply
* Updated for spotless apply
Diffstat (limited to 'opendc-experiments/opendc-experiments-capelin/src/test')
6 files changed, 104 insertions, 18 deletions
diff --git a/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinIntegrationTest.kt b/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinIntegrationTest.kt index 6b538240..9a00c80e 100644 --- a/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinIntegrationTest.kt +++ b/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinIntegrationTest.kt @@ -40,8 +40,8 @@ import org.opendc.compute.simulator.provisioner.setupHosts import org.opendc.compute.telemetry.ComputeMonitor import org.opendc.compute.telemetry.table.HostTableReader import org.opendc.compute.telemetry.table.ServiceTableReader -import org.opendc.compute.topology.HostSpec import org.opendc.compute.topology.clusterTopology +import org.opendc.compute.topology.specs.HostSpec import org.opendc.compute.workload.ComputeWorkloadLoader import org.opendc.compute.workload.VirtualMachine import org.opendc.compute.workload.sampleByLoad @@ -126,7 +126,7 @@ class CapelinIntegrationTest { { assertEquals(66977091124, monitor.activeTime) { "Incorrect active time" } }, { assertEquals(3160267873, monitor.stealTime) { "Incorrect steal time" } }, { assertEquals(0, monitor.lostTime) { "Incorrect lost time" } }, - { assertEquals(5.8407E9, monitor.energyUsage, 1E4) { "Incorrect power draw" } }, + { assertEquals(7.767237E9, monitor.energyUsage, 1E4) { "Incorrect power draw" } }, ) } @@ -138,7 +138,7 @@ class CapelinIntegrationTest { runSimulation { val seed = 1L val workload = createTestWorkload(0.25, seed) - val topology = createTopology("single") + val topology = createTopology("single.json") val monitor = monitor Provisioner(dispatcher, seed).use { provisioner -> @@ -167,7 +167,7 @@ class CapelinIntegrationTest { { assertEquals(9741285381, monitor.activeTime) { "Active time incorrect" } }, { assertEquals(152, monitor.stealTime) { "Steal time incorrect" } }, { assertEquals(0, monitor.lostTime) { "Lost time incorrect" } }, - { assertEquals(7.0109E8, monitor.energyUsage, 1E4) { "Incorrect power draw" } }, + { assertEquals(7.933686E8, monitor.energyUsage, 1E4) { "Incorrect power draw" } }, ) } @@ -179,7 +179,7 @@ class CapelinIntegrationTest { runSimulation { val seed = 0L val workload = createTestWorkload(1.0, seed) - val topology = createTopology("single") + val topology = createTopology("single.json") Provisioner(dispatcher, seed).use { provisioner -> provisioner.runSteps( @@ -217,7 +217,7 @@ class CapelinIntegrationTest { fun testFailures() = runSimulation { val seed = 0L - val topology = createTopology("single") + val topology = createTopology("single.json") val workload = createTestWorkload(0.25, seed) val monitor = monitor @@ -256,8 +256,8 @@ class CapelinIntegrationTest { /** * Obtain the topology factory for the test. */ - private fun createTopology(name: String = "topology"): List<HostSpec> { - val stream = checkNotNull(object {}.javaClass.getResourceAsStream("/env/$name.txt")) + private fun createTopology(name: String = "topology.json"): List<HostSpec> { + val stream = checkNotNull(object {}.javaClass.getResourceAsStream("/env/$name")) return stream.use { clusterTopology(stream) } } diff --git a/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinRunnerTest.kt b/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinRunnerTest.kt index 32d53aee..4587f6dc 100644 --- a/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinRunnerTest.kt +++ b/opendc-experiments/opendc-experiments-capelin/src/test/kotlin/org/opendc/experiments/capelin/CapelinRunnerTest.kt @@ -46,7 +46,8 @@ class CapelinRunnerTest { private val tracePath = File("src/test/resources/trace") /** - * Smoke test with output. fixme: Fix failures and enable Test + * Smoke test with output. + * fixme: Fix failures and enable */ fun testSmoke() { val outputPath = Files.createTempDirectory("output").toFile() @@ -68,7 +69,8 @@ class CapelinRunnerTest { } /** - * Smoke test without output. fixme: Fix failures and enable Test + * Smoke test without output. + * fixme: Fix failures and enable */ fun testSmokeNoOutput() { val runner = CapelinRunner(envPath, tracePath, null) diff --git a/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/single.json b/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/single.json new file mode 100644 index 00000000..a1c8d95a --- /dev/null +++ b/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/single.json @@ -0,0 +1,26 @@ +{ + "clusters": + [ + { + "name": "C01", + "hosts" : + [ + { + "name": "H01", + "cpus": + [ + { + "coreCount": 8, + "coreSpeed": 3200 + } + ], + "memory": { + "memorySize": 128000 + } + } + ] + } + ] +} + + diff --git a/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/single.txt b/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/single.txt deleted file mode 100644 index 5642003d..00000000 --- a/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/single.txt +++ /dev/null @@ -1,3 +0,0 @@ -ClusterID;ClusterName;Cores;Speed;Memory;numberOfHosts;memoryCapacityPerHost;coreCountPerHost -A01;A01;8;3.2;128;1;128;8 - diff --git a/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/topology.json b/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/topology.json new file mode 100644 index 00000000..721005b0 --- /dev/null +++ b/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/topology.json @@ -0,0 +1,66 @@ +{ + "clusters": + [ + { + "name": "C01", + "hosts" : + [ + { + "name": "H01", + "cpus": + [ + { + "coreCount": 32, + "coreSpeed": 3200 + } + ], + "memory": { + "memorySize": 256000 + } + } + ] + }, + { + "name": "C02", + "hosts" : + [ + { + "name": "H02", + "count": 6, + "cpus": + [ + { + "coreCount": 8, + "coreSpeed": 2930 + } + ], + "memory": { + "memorySize": 64000 + } + } + ] + }, + { + "name": "C03", + "hosts" : + [ + { + "name": "H03", + "count": 2, + "cpus": + [ + { + "coreCount": 16, + "coreSpeed": 3200 + } + ], + "memory": { + "memorySize": 128000 + } + } + ] + } + ] +} + + diff --git a/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/topology.txt b/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/topology.txt deleted file mode 100644 index 6b347bff..00000000 --- a/opendc-experiments/opendc-experiments-capelin/src/test/resources/env/topology.txt +++ /dev/null @@ -1,5 +0,0 @@ -ClusterID;ClusterName;Cores;Speed;Memory;numberOfHosts;memoryCapacityPerHost;coreCountPerHost -A01;A01;32;3.2;2048;1;256;32 -B01;B01;48;2.93;1256;6;64;8 -C01;C01;32;3.2;2048;2;128;16 - |
