Task Scheduling for Heterogeneous Multicore Systems
Zhuo Chen, Diana Marculescu

TL;DR
This paper formulates and solves the optimal task scheduling problem for heterogeneous multicore systems, introducing policies that significantly improve performance and energy efficiency over traditional methods.
Contribution
It presents a mathematical optimization framework for task scheduling in heterogeneous systems, with analytical solutions for two processor types and a heuristic for multiple types.
Findings
Optimal policies outperform classic load-balancing by up to 2.24x in performance.
Proposed policies achieve up to 2.26x better energy efficiency.
Experimental results show up to 9.07x performance improvement on real platforms.
Abstract
In recent years, as the demand for low energy and high performance computing has steadily increased, heterogeneous computing has emerged as an important and promising solution. Because most workloads can typically run most efficiently on certain types of cores, mapping tasks on the best available resources can not only save energy but also deliver high performance. However, optimal task scheduling for performance and/or energy is yet to be solved for heterogeneous platforms. The work presented herein mathematically formulates the optimal heterogeneous system task scheduling as an optimization problem using queueing theory. We analytically solve for the common case of two processor types, e.g., CPU+GPU, and give an optimal policy (CAB). We design the GrIn heuristic to efficiently solve for near-optimal policy for any number of processor types (within 1.6% of the optimal). Both policies…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Distributed and Parallel Computing Systems · Cloud Computing and Resource Management
