Stability and Performance of List Scheduling With ExternalProcess Delays

  • Authors:
  • J. S. Deogun;R. M. Kieckhafer;A. W. Krings

  • Affiliations:
  • Department of Computer Science and Engineering, 115 Furguson Hall, University of Nebraska-Lincoln, Lincoln, NE 68588-0115;Department of Computer Science and Engineering, 115 Furguson Hall, University of Nebraska-Lincoln, Lincoln, NE 68588-0115;Department of Computer Science, University of Idaho, Moscow, ID 83844-1010

  • Venue:
  • Real-Time Systems
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

Non-preemptive static priority list scheduling is asimple, low-overhead approach to scheduling precedence-constrainedtasks in real-time multiprocessor systems. However, it is vulnerableto anomalous timing behavior caused by variations in task durations.Specifically, reducing the duration of one task can delay the starting timeof another task. This phenomenon, called Scheduling Instability,can make it difficult or impossible to guarantee real-time deadlines.Several heuristic solutions to handle scheduling instabilityhave been reported. This paper addresses three main limitationsin the state of the art in schedule stabilization. First, eachstabilization technique only applies to a narrowly defined classof systems. To alleviate this constraint, we present an ExtendedScheduling Model encompassing a wide range of assumptions aboutthe scheduling environment, and address the stability problemunder this model. Second, existing stabilization methods areheuristics based on a partial understanding of the causes ofinstability. We therefore derive a set of General InstabilityConditions which are both necessary and sufficient for instabilityto occur. Third, solutions to scheduling instability range fromtrivial constraints on the run-time dispatcher through complextransformations of the precedence graph. We present schedulingsimulation results comparing the average performance of severalinherently stable run-time dispatchers of widely varying levelsof complexity. Results show that for representative real-timeworkloads, simple low-overhead dispatchers perform nearly aswell as a complex ’’minimally stabilized‘‘ dispatcher. Thus,complex schedule stabilization methods may be unnecessary, oreven detrimental, due to their high computational overhead.