Table of Contents
Fetching ...

Parameterized Task Graph Scheduling Algorithm for Comparing Algorithmic Components

Jared Coleman, Ravi Vivek Agrawal, Ebrahim Hirani, Bhaskar Krishnamachari

TL;DR

This paper proposes a generalized parametric list-scheduling algorithm that allows mixing and matching different algorithmic components to produce 72 unique algorithms and benchmark these algorithms on four datasets to study the individual and combined effects of different algorithmic components on performance and runtime.

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.

Parameterized Task Graph Scheduling Algorithm for Comparing Algorithmic Components

TL;DR

This paper proposes a generalized parametric list-scheduling algorithm that allows mixing and matching different algorithmic components to produce 72 unique algorithms and benchmark these algorithms on four datasets to study the individual and combined effects of different algorithmic components on performance and runtime.

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.
Paper Structure (8 sections, 3 equations, 10 figures, 1 table)

This paper contains 8 sections, 3 equations, 10 figures, 1 table.

Figures (10)

  • Figure 1: Example problem instance and schedule.
  • Figure 2: Example task graphs for each of the datasets evaluated.
  • Figure 3: Pareto-optimal scheduling algorithms for each dataset.
  • Figure 4: Effect of the initial priority function on the makespan and runtime ratios over all datasets. UR stands for UpwardRanking, AT for ArbitraryTopological, and CR for CPoPRanking.
  • Figure 5: Effect of the comparison function on the makespan and runtime ratios over all datasets.
  • ...and 5 more figures