Adaptive Resource Management Algorithms for Periodic Tasks in Dynamic Real-Time Distributed Systems

We present adaptive resource management middleware techniques for periodic tasks in dynamic real-time distributed systems. The techniques continuously monitor the application at run-time for adherence to the desired real-time requirements, detect timing failures or trends for impending failures (due to workload fluctuations), and dynamically allocate resources by replicating subtasks of application tasks for load sharing. The objective of the techniques is to minimize (end-to-end) missed deadline ratios of the tasks. We present "predictive" resource allocation algorithms that determine the number of subtask replicas that are required for adapting the application to a given workload situation using statistical regression theory. The algorithms use regression equations that forecast subtask timeliness as a function of external load parameters such as number of sensor reports and internal resource load parameters such as CPU utilization. To evaluate the performance of the predictive algorithms, we consider algorithms that determine the number of subtask replicas using empirically determined heuristic functions. We implemented the resource management algorithms as part of a middleware infrastructure and measured the performance of the algorithms using a real-time benchmark. The experimental results indicate that the predictive algorithms outperform the heuristic strategies under the workload conditions that were studied.

[1]  Kang G. Shin,et al.  HARTS: a distributed real-time architecture , 1991, Computer.

[2]  Gary M. Koob,et al.  Foundations of Real-Time Computing: Scheduling and Resource Management , 1991 .

[3]  XuJia,et al.  Scheduling Processes with Release Times, Deadlines, Precedence and Exclusion Relations , 1990 .

[4]  John A. Stankovic,et al.  Real-time computing , 1992 .

[5]  Krithi Ramamritham,et al.  Dynamic Scheduling of Groups of Tasks with Precedence Constraints in Distributed Hard Real-Time Systems , 1986, IEEE Real-Time Systems Symposium.

[6]  Jpc Jack Verhoosel Pre-run-time scheduling of distributed real-time systems : models and algorithms , 1995 .

[7]  David L. Mills,et al.  Improved algorithms for synchronizing computer network clocks , 1995, TNET.

[8]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[9]  Lonnie R. Welch,et al.  A dynamic real-time benchmark for assessment of QoS and resource management technology , 1999, Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium.

[10]  Pradeep K. Khosla,et al.  Mechanisms for detecting and handling timing errors , 1997, Commun. ACM.

[11]  Binoy Ravindran,et al.  Resource Management Middleware for Dynamic, Dependable Real-Time Systems , 2004, Real-Time Systems.

[12]  Benjamin Chi-Ming Kao,et al.  Scheduling in distributed soft real-time systems with autonomous components , 1996 .

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

[14]  Krithi Ramamritham,et al.  Tutorial on hard real-time systems , 1989 .

[15]  E. Douglas Jensen Asynchronous Decentralized Real-Time Computer Systems , 2000 .

[16]  Krithi Ramamritham,et al.  Evaluation of a flexible task scheduling algorithm for distributed hard real-time systems , 1985, IEEE Transactions on Computers.

[17]  David Lorge Parnas,et al.  Scheduling Processes with Release Times, Deadlines, Precedence, and Exclusion Relations , 1990, IEEE Trans. Software Eng..

[18]  Krithi Ramamritham,et al.  Advances in Real-Time Systems , 1993 .

[19]  Krithi Ramamritham,et al.  The Spring kernel: a new paradigm for real-time systems , 1991, IEEE Software.

[20]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[21]  Krithi Ramamritham,et al.  Hard Real-Time Systems , 1988 .

[22]  Krithi Ramamritham,et al.  Distributed Scheduling of Tasks with Deadlines and Resource Requirements , 1989, IEEE Trans. Computers.

[23]  Hermann Kopetz,et al.  Real-time systems , 2018, CSC '73.