From a71d4885efcf01850bc236d3e9f77ab3f44b48aa Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Fri, 8 Jan 2021 18:18:43 +0100 Subject: Convert to pull-based workload model This change converts the low-level workload model to be pull-based. This reduces the overhead that we experienced with our previous co-routine based approach. --- .../main/kotlin/org/opendc/workflows/service/StageWorkflowService.kt | 2 +- .../opendc/workflows/service/StageWorkflowSchedulerIntegrationTest.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'simulator/opendc-workflows') diff --git a/simulator/opendc-workflows/src/main/kotlin/org/opendc/workflows/service/StageWorkflowService.kt b/simulator/opendc-workflows/src/main/kotlin/org/opendc/workflows/service/StageWorkflowService.kt index 2c8d9a0b..e04c8a4c 100644 --- a/simulator/opendc-workflows/src/main/kotlin/org/opendc/workflows/service/StageWorkflowService.kt +++ b/simulator/opendc-workflows/src/main/kotlin/org/opendc/workflows/service/StageWorkflowService.kt @@ -340,7 +340,7 @@ public class StageWorkflowService( } } - private suspend fun finishJob(job: JobState) { + private fun finishJob(job: JobState) { activeJobs -= job tracer.commit(WorkflowEvent.JobFinished(this, job.job)) rootListener.jobFinished(job) diff --git a/simulator/opendc-workflows/src/test/kotlin/org/opendc/workflows/service/StageWorkflowSchedulerIntegrationTest.kt b/simulator/opendc-workflows/src/test/kotlin/org/opendc/workflows/service/StageWorkflowSchedulerIntegrationTest.kt index b97cb915..8727ea2e 100644 --- a/simulator/opendc-workflows/src/test/kotlin/org/opendc/workflows/service/StageWorkflowSchedulerIntegrationTest.kt +++ b/simulator/opendc-workflows/src/test/kotlin/org/opendc/workflows/service/StageWorkflowSchedulerIntegrationTest.kt @@ -59,7 +59,7 @@ internal class StageWorkflowSchedulerIntegrationTest { * A large integration test where we check whether all tasks in some trace are executed correctly. */ @Test - fun `should execute all tasks in trace`() { + fun testTrace() { var jobsSubmitted = 0L var jobsStarted = 0L var jobsFinished = 0L -- cgit v1.2.3