Robust Adaptive Metrics for Deadline Assignment in Distributed Hard Real-Time Systems
Journal article, 2002
In a distributed real-time system, an application usually consists of several component tasks and must be completed by its end-to-end (E-T-E) deadline. As long as the E-T-E deadline is met, the strategy used for dividing it up for component tasks does not affect the application itself. One would therefore like to ``slice'' each application E-T-E deadline and assign the slices to component tasks so as to maximize task schedulability. Existing methods for distribution of an E-T-E deadline over component tasks are all based on the assumption that complete task assignment to processors is made and known beforehand. This assumption is not realistic for large real-time systems. Furthermore, most task-assignment strategies require deadline information in order to make good assignments, thus forming a circular dependency between deadline distribution and task assignment. We propose a new deadline-distribution scheme which has two major improvements over the best scheme known to date. It can distribute task deadlines prior to task assignment and relies on new adaptive metrics that yield significantly better performance in the presence of high resource contention. The deadline-distribution problem is formulated for distributed hard real-time systems with relaxed locality constraints, where schedulability analysis must be performed at pre-run-time, and only a subset of the tasks are constrained by pre-assignment to specific processors. Using extensive simulations, we show that the proposed adaptive metrics deliver much better performance than their non-adaptive counterparts. In particular, the simulation results indicate that, for small systems, the adaptive metrics can improve performance by as much as an order of magnitude. Moreover, the new adaptive metrics are found to exhibit very robust performance over a large variety of application and architecture scenarios.
precedence-constrained task systems
relaxed locality constraints