Table of Contents
Fetching ...

INSPIRIT: Optimizing Heterogeneous Task Scheduling through Adaptive Priority in Task-based Runtime Systems

Yiqing Wang, Xiaoyan Liu, Hailong Yang, Xinyu Yang, Pengbo Wang, Yi Liu, Zhongzhi Luan, Depei Qian

TL;DR

INSPIRIT addresses the challenge of efficiently scheduling tasks on heterogeneous HPC platforms by introducing adaptive priority driven by two task attributes, inspiring ability and inspiring efficiency. It actively regulates the number of ready tasks ($N_{ready}$) across worker queues to maintain high hardware utilization without requiring domain-specific tuning. The framework is implemented as a plugin for StarPU and integrated with an extended Taskbench, and it demonstrates up to $3.22\times$ speedups on real-world DAGs (e.g., Cholesky) and robust improvements across LU and Heat on diverse hardware. This work offers a practical, low-overhead approach to harness heterogeneity, with broad applicability to task-based runtimes and DAG-driven workloads.

Abstract

As modern HPC computing platforms become increasingly heterogeneous, it is challenging for programmers to fully leverage the computation power of massive parallelism offered by such heterogeneity. Consequently, task-based runtime systems have been proposed as an intermediate layer to hide the complex heterogeneity from the application programmers. The core functionality of these systems is to realize efficient task-to-resource mapping in the form of Directed Acyclic Graph (DAG) scheduling. However, existing scheduling schemes face several drawbacks to determine task priorities due to the heavy reliance on domain knowledge or failure to efficiently exploit the interaction of application and hardware characteristics. In this paper, we propose INSPIRIT, an efficient and lightweight scheduling framework with adaptive priority designed for task-based runtime systems. INSPIRIT introduces two novel task attributes \textit{inspiring ability} and \textit{inspiring efficiency} for dictating scheduling, eliminating the need for application domain knowledge. In addition, INSPIRIT jointly considers runtime information such as ready tasks in worker queues to guide task scheduling. This approach exposes more performance opportunities in heterogeneous hardware at runtime while effectively reducing the overhead for adjusting task priorities. Our evaluation results demonstrate that INSPIRIT achieves superior performance compared to cutting edge scheduling schemes on both synthesized and real-world task DAGs.

INSPIRIT: Optimizing Heterogeneous Task Scheduling through Adaptive Priority in Task-based Runtime Systems

TL;DR

INSPIRIT addresses the challenge of efficiently scheduling tasks on heterogeneous HPC platforms by introducing adaptive priority driven by two task attributes, inspiring ability and inspiring efficiency. It actively regulates the number of ready tasks () across worker queues to maintain high hardware utilization without requiring domain-specific tuning. The framework is implemented as a plugin for StarPU and integrated with an extended Taskbench, and it demonstrates up to speedups on real-world DAGs (e.g., Cholesky) and robust improvements across LU and Heat on diverse hardware. This work offers a practical, low-overhead approach to harness heterogeneity, with broad applicability to task-based runtimes and DAG-driven workloads.

Abstract

As modern HPC computing platforms become increasingly heterogeneous, it is challenging for programmers to fully leverage the computation power of massive parallelism offered by such heterogeneity. Consequently, task-based runtime systems have been proposed as an intermediate layer to hide the complex heterogeneity from the application programmers. The core functionality of these systems is to realize efficient task-to-resource mapping in the form of Directed Acyclic Graph (DAG) scheduling. However, existing scheduling schemes face several drawbacks to determine task priorities due to the heavy reliance on domain knowledge or failure to efficiently exploit the interaction of application and hardware characteristics. In this paper, we propose INSPIRIT, an efficient and lightweight scheduling framework with adaptive priority designed for task-based runtime systems. INSPIRIT introduces two novel task attributes \textit{inspiring ability} and \textit{inspiring efficiency} for dictating scheduling, eliminating the need for application domain knowledge. In addition, INSPIRIT jointly considers runtime information such as ready tasks in worker queues to guide task scheduling. This approach exposes more performance opportunities in heterogeneous hardware at runtime while effectively reducing the overhead for adjusting task priorities. Our evaluation results demonstrate that INSPIRIT achieves superior performance compared to cutting edge scheduling schemes on both synthesized and real-world task DAGs.
Paper Structure (25 sections, 13 figures, 1 table)

This paper contains 25 sections, 13 figures, 1 table.

Figures (13)

  • Figure 1: Demonstrating the Effectiveness of Priority in Scheduling.
  • Figure 2: Observations on Tiled Cholesky Factorization.
  • Figure 3: Tile Cholesky factorization DAG ($4 \times 4 \times 960 \times 960$).
  • Figure 4: The design overview of INSPIRIT.
  • Figure 5: A description of inspiring ability.
  • ...and 8 more figures