Orchestrating Bag-of-Tasks Applications with Dynamically Spawned Tasks in a Distributed Environment
Georgios L. Stavrinides, Helen D. Karatza · 2021
As the distributed computing paradigm continues to evolve due to advances such as cloud and fog computing, the need for effective workload allocation on distributed resources has become more imperative than ever. However, workload orchestration in distributed environments poses many challenges, especially in the case where the workload comprises jobs consisting of parallel component tasks. A particularly challenging scenario in the context of such bag-of-tasks applications, is the case where a component task produces an output that does not meet a predefined Quality of Service (QoS) threshold. In such a case, a new task is dynamically spawned at runtime, in order to carry out the additional computational work required for producing an acceptable result. In order to leverage data locality, the dynamically spawned task must be assigned to the same resource as the previous task that failed to meet the QoS requirements. Consequently, it is important to examine how a such dynamically changing workload affects the performance and load balancing of the distributed resources. To this end, in this paper we investigate the orchestration of bag-of-tasks applications with dynamically spawned tasks in a distributed environment. Three task routing techniques are studied and compared using simulation, under various load cases.