Scheduling task dependence graphs with variable task execution times onto heterogeneous multiprocessors

  • Authors:
  • Nadathur R. Satish;Kaushik Ravindran;Kurt Keutzer

  • Affiliations:
  • University of California at Berkeley, Berkeley, CA, USA;University of California at Berkeley, Berkeley, CA, USA;University of California at Berkeley, Berkeley, CA, USA

  • Venue:
  • EMSOFT '08 Proceedings of the 8th ACM international conference on Embedded software
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a statistical optimization approach for scheduling a task dependence graph with variable task execution times onto a heterogeneous multiprocessor system. Scheduling methods in the presence of variations typically rely on worst-case timing estimates for hard real-time applications, or average-case analysis for other applications. However, a large class of soft real-time applications require only statistical guarantees on latency and throughput. We present a general statistical model that captures the probability distributions of task execution times as well as the correlations of execution times of different tasks. We use a Monte Carlo based technique to perform makespan analysis of different schedules based on this model. This approach can be used to analyze the variability present in a variety of soft real-time applications, including a H.264 video processing application. We present two scheduling algorithms based on statistical makespan analysis. The first is a heuristic based on a critical path analysis of the task dependence graph. The other is a simulated annealing algorithm using incremental timing analysis. Both algorithms take as input the required statistical guarantee, and can thus be easily re-used for different required guarantees. We show that optimization methods based on statistical analysis show a 25-30% improvement in makespan over methods based on static worst-case analysis.