English

Parameterized Task Graph Scheduling Algorithm for Comparing Algorithmic Components

Distributed, Parallel, and Cluster Computing 2024-03-13 v1

Abstract

Scheduling distributed applications modeled as directed, acyclic task graphs to run on heterogeneous compute networks is a fundamental (NP-Hard) problem in distributed computing for which many heuristic algorithms have been proposed over the past decades. Many of these algorithms fall under the list-scheduling paradigm, whereby the algorithm first computes priorities for the tasks and then schedules them greedily to the compute node that minimizes some cost function. Thus, many algorithms differ from each other only in a few key components (e.g., the way they prioritize tasks, their cost functions, where the algorithms consider inserting tasks into a partially complete schedule, etc.). In this paper, we propose a generalized parametric list-scheduling algorithm that allows mixing and matching different algorithmic components to produce 72 unique algorithms. We benchmark these algorithms on four datasets to study the individual and combined effects of different algorithmic components on performance and runtime.

Keywords

Cite

@article{arxiv.2403.07112,
  title  = {Parameterized Task Graph Scheduling Algorithm for Comparing Algorithmic Components},
  author = {Jared Coleman and Ravi Vivek Agrawal and Ebrahim Hirani and Bhaskar Krishnamachari},
  journal= {arXiv preprint arXiv:2403.07112},
  year   = {2024}
}