A metric and mixed-integer-programming-based approach for resource allocation in dynamic real-time systems

Dynamic real-time systems such as embedded systems operate in environments in which several parameters vary at run time. These systems must satisfy several performance requirements. Resource allocation on these systems becomes challenging because variations of run-time parameters may cause violations of the performance requirements. Performance violations result in the need for dynamic re-allocation, which is a costly operation. A method for allocating resources such that the allocation can sustain the system in the light of a continuously changing environment is developed. We introduce a novel performance metric called MAIL (maximum allowable increase in load) to capture the effectiveness of a resource allocation. Given a resource allocation, MAIL quantifies the amount of additional load that can be sustained by the system without any performance violations. A mixed-integer-programming-based approach (MIP) is developed to determine a resource allocation that has the highest MAIL value. Using simulations, several sets of experiments are conducted to evaluate our heuristics in various scenarios of machine and task heterogeneities. The performance of MIP is compared with three other heuristics: integer-programming based, greedy, and classic min-min. Our results show that MIP performs significantly better when compared with the other heuristics.

[1]  Binoy Ravindran,et al.  Specification and modeling of dynamic, distributed real-time systems , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[2]  Alan Burns,et al.  Hard Real-Time Scheduling: The Deadline-Monotonic Approach , 1991 .

[3]  Lawrence W. Dowdy,et al.  Static Processor Allocation in a Soft Real-Time Multiprocessor Environment , 1994, IEEE Trans. Parallel Distributed Syst..

[4]  Sanjoy K. Baruah,et al.  Preemptively scheduling hard-real-time sporadic tasks on one processor , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[5]  Kang G. Shin,et al.  Allocation of periodic task modules with precedence and deadline constraints in distributed real-time systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[6]  Edward A. Lee,et al.  Dataflow process networks , 1995, Proc. IEEE.

[7]  Howard Jay Siegel,et al.  Representing Task and Machine Heterogeneities for Heterogeneous Computing Systems , 2000 .

[8]  Kang G. Shin,et al.  A parametrized branch-and-bound strategy for scheduling precedence-constrained tasks on a multiprocessor system , 1997, Proceedings of the 1997 International Conference on Parallel Processing (Cat. No.97TB100162).

[9]  Jia Xu,et al.  Multiprocessor Scheduling of Processes with Release Times, Deadlines, Precedence, and Exclusion Relations , 1993, IEEE Trans. Software Eng..

[10]  Krithi Ramamritham,et al.  Efficient Scheduling Algorithms for Real-Time Multiprocessor Systems , 1989, IEEE Trans. Parallel Distributed Syst..

[11]  Luciano Lavagno,et al.  A case study in embedded system design: an engine control unit , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[12]  Riccardo Bettati,et al.  End-to-end scheduling to meet deadlines in distributed systems , 1992, [1992] Proceedings of the 12th International Conference on Distributed Computing Systems.

[13]  Viktor K. Prasanna,et al.  An integer programming approach for static mapping of paths onto heterogeneous real-time systems , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[14]  Kang G. Shin,et al.  Assignment and Scheduling Communicating Periodic Tasks in Distributed Real-Time Systems , 1997, IEEE Trans. Software Eng..

[15]  E. L. Lawler,et al.  Recent Results in the Theory of Machine Scheduling , 1982, ISMP.

[16]  Kwei-Jay Lin,et al.  Scheduling Real-Time Systems with End-to-End Timing Constraints Using the Distributed Pinwheel Model , 2001, IEEE Trans. Computers.

[17]  Howard Jay Siegel,et al.  Task execution time modeling for heterogeneous computing systems , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

[18]  Anthony A. Maciejewski,et al.  Evaluation of a semi-static approach to mapping dynamic iterative tasks onto heterogeneous computing systems , 1999, Proceedings Fourth International Symposium on Parallel Architectures, Algorithms, and Networks (I-SPAN'99).

[19]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[20]  Ricardo Cayssials,et al.  A Heuristic Approach to the Multitask-Multiprocessor Assignment Problem using the Empty-Slots Method and Rate Monotonic Scheduling , 1997, Real-Time Systems.