On adaptive resource allocation for complex real-time applications

Resource allocation for high-performance real-time applications is challenging due to the applications' data-dependent nature, dynamic changes in their external environment, and limited resource availability in their target embedded system platforms. These challenges may be met by use of adaptive resource allocation (ARA) mechanisms that can promptly adjust resource allocation to changes in an application's resource needs, whenever there is a risk of failing to satisfy its timing constraints. By taking advantage of an application's adaptation capabilities, ARA eliminates the need for 'over-sizing' real-time systems to meet worst-case application needs. This paper proposes a model for describing an application's adaptation capabilities and the runtime variation of its resource needs. The paper also proposes a satisfiability-driven set of performance metrics for capturing the impact of ARA mechanisms on the performance of adaptable real-time applications. The relevance of the proposed set of metrics is demonstrated experimentally, using a synthetic application designed to represent time-critical applications in C31 systems.

[1]  John F. Canny,et al.  A Computational Approach to Edge Detection , 1986, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[2]  John Zahorjan,et al.  Zahorjan processor allocation policies for message-passing parallel computers , 1994, SIGMETRICS 1994.

[3]  Karsten Schwan,et al.  A comparison of four adaptation algorithms for increasing the reliability of real-time software , 1988, Proceedings. Real-Time Systems Symposium.

[4]  Michael B. Jones,et al.  Modular real-time resource management in the Rialto operating system , 1995, Proceedings 5th Workshop on Hot Topics in Operating Systems (HotOS-V).

[5]  Richard A. Volz,et al.  Using Ada as a programming language for robot-based manufacturing cells , 1984, IEEE Transactions on Systems, Man, and Cybernetics.

[6]  Kenneth C. Sevcik,et al.  Benefits of Speedup Knowledge in Memory-Constrained Multiprocessor Scheduling , 1996, Perform. Evaluation.

[7]  Rodney A. Brooks,et al.  A Robust Layered Control Syste For A Mobile Robot , 2022 .

[8]  Keith Marzullo,et al.  Making real-time reactive systems reliable , 1991, OPSR.

[9]  Karsten Schwan,et al.  Dynamic adaptation of real-time software , 1991, TOCS.

[10]  Peng-Jun Wan,et al.  On supporting mission-critical multimedia applications , 1996, Proceedings of the Third IEEE International Conference on Multimedia Computing and Systems.

[11]  Edward D. Lazowska,et al.  Speedup Versus Efficiency in Parallel Systems , 1989, IEEE Trans. Computers.

[12]  Azer Bestavros,et al.  Load Profiling in Distributed Real-Time Systems , 1997, Information Sciences.

[13]  Krithi Ramamritham,et al.  Dynamic Task Scheduling in Hard Real-Time Distributed systems , 1984, IEEE Software.

[14]  Sudhakar Yalamanchili,et al.  Adaptive resource allocation for embedded parallel applications , 1996, Proceedings of 3rd International Conference on High Performance Computing (HiPC).

[15]  Anindo Banerjea,et al.  The Tenet real-time protocol suite: design, implementation, and experiences , 1996, TNET.

[16]  Stefan Savage,et al.  Processor Capacity Reserves for Multimedia Operating Systems , 1993 .

[17]  Karsten Schwan,et al.  Improving protocol performance by dynamic control of communication resources , 1996, Proceedings of ICECCS '96: 2nd IEEE International Conference on Engineering of Complex Computer Systems (held jointly with 6th CSESAW and 4th IEEE RTAW).

[18]  Shahid H. Bokhari Partitioning Problems in Parallel, Pipelined, and Distributed Computing , 1988, IEEE Trans. Computers.

[19]  Richard Gerber,et al.  Performance-based design of distributed real-time systems , 1997, Proceedings Third IEEE Real-Time Technology and Applications Symposium.

[20]  H. G. Rotithor,et al.  Decentralized decision-making in adaptive task sharing , 1990, Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990.

[21]  Wing Au,et al.  The C31 parallel benchmark suite - introduction and preliminary results , 1996, Supercomputing '96.

[22]  Kang G. Shin,et al.  QoS negotiation in real-time systems and its application to automated flight control , 1997, Proceedings Third IEEE Real-Time Technology and Applications Symposium.

[23]  Edward D. Lazowska,et al.  Adaptive load sharing in homogeneous distributed systems , 1986, IEEE Transactions on Software Engineering.

[24]  Kevin Jeffay,et al.  A Rate-Based Execution Abstraction for Multimedia Computing , 1995, NOSSDAV.

[25]  Kenneth C. Sevcik Characterizations of parallelism in applications and their use in scheduling , 1989, SIGMETRICS '89.

[26]  Michael B. Jones,et al.  CPU reservations and time constraints: efficient, predictable scheduling of independent activities , 1997, SOSP.

[27]  Karsten Schwan,et al.  High-performance operating system primitives for robotics and real-time control systems , 1987, TOCS.

[28]  Marco Spuri,et al.  How to Integrate Precedence Constraints and Shared Resources in Real-Time Scheduling , 1994, IEEE Trans. Computers.

[29]  David M. Nicol,et al.  Optimal Dynamic Remapping of Data Parallel Computations , 1990, IEEE Trans. Computers.

[30]  Anoop Gupta,et al.  Process control and scheduling issues for multiprogrammed shared-memory multiprocessors , 1989, SOSP '89.

[31]  Shyh-In Hwang,et al.  Schedulability-oriented replication of periodic tasks in distributed real-time systems , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[32]  Karsten Schwan,et al.  Performance effects of information sharing in a distributed multiprocessor real-time scheduler , 1992, [1992] Proceedings Real-Time Systems Symposium.

[33]  Wei-Kuan Shih,et al.  Algorithms for scheduling imprecise computations , 1991, Computer.

[34]  Jay K. Strosnider,et al.  Distributed pipeline scheduling: end-to-end analysis of heterogeneous, multi-resource real-time systems , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[35]  Karsten Schwan,et al.  DataExchange: High Performance Communications in Distributed Laboratories , 1998, Parallel Comput..

[36]  P. H. Watson,et al.  Real-time system scenarios , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.