Rate-Based Execution Models For Real-Time Multimedia Computing


Kevin Jeffay
Department of Computer Science
University of North Carolina at Chapel Hill

September 1997


Lecture 1: Rate Based Execution: The case against Liu & Layland style models of real-time computing

This lecture is primarily based on my experiences building distributed, interactive, multimedia systems. Some of these experiences have been documented in the following papers:

Kernel Support for Live Digital Audio and Video, K. Jeffay, D.L. Stone, F.D. Smith, Computer Communications, Vol. 15, No. 6, (July/August 1992) pp. 388-395.

Transport and Display Mechanisms For Multimedia Conferencing Across Packet-Switched Networks, K. Jeffay, D.L. Stone, F.D. Smith, Computer Networks and ISDN Systems, Vol. 26, No. 10, (July 1994) pp. 1281-1304.

Two-Dimensional Scaling Techniques For Adaptive, Rate-Based Transmission Control of Live Audio and Video Streams, T.M. Talley and K. Jeffay, Proceedings of the Second ACM International Conference on Multimedia, San Francisco, CA, October 1994, pp. 247-254.

An Empirical Study of Delay Jitter Management Policies, D.L. Stone and K. Jeffay, ACM Multimedia Systems, Vol. 2, No. 6 (January 1995), pp. 267-279.

Other good papers that describe the requirements of real-time multimedia systems include:

Video Acceptability and Frame Rate, Apteker, R.T., Fisher, J.A., Kisimov, V.S., & Neishlos, H., IEEE Multimedia, Vol. 2, No. 3 (Fall 1995), pp. 32-40.

Multimedia Synchronization Techniques: Experiences Based on Different System Structures, Steinmetz, R., Meyer, T., IEEE Multimedia Workshop, Monterey, CA, April, 1992.

Client Requirements for Real-Time Communication Services, Ferrari, D., IEEE Communications, (November 1990), pp. 65-72.

The premise of this lecture is that "traditional" real-time systems support is a poor tool for realizing the requirements of real-time multimedia applications. Works that characterize the traditional approach include::

Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment, C. L. Liu and J. W. Layland, Journal of the ACM, Vol. 20, No. 1, January 1973, pp. 46-61.

Enhanced Aperiodic Responsiveness in Hard Real-Time Environments, J.P. Lehoczky, L. Sha, J.K. Strosnider, Proc. of the Eighth IEEE Real-Time Systems Symp., San Jose, CA, December 1987, pp. 261-270.

Lecture 2: A Liu & Layland extension for rate-based execution

The concept of rate-based computing as developed in this lecture was first described in:

A Rate-Based Execution Abstraction For Multimedia Computing, K. Jeffay and D. Bennett, Proceedings of the Fifth International Workshop on Network and Operating System Support for Digital Audio and Video, Durham, NH, April 1995, published in Lecture Notes in Computer Science, T.D.C. Little and R. Gusella, editors, Volume 1018, pages 64-75, Springer-Verlag, Heidelberg, Germany, 1995.

The implementation of rate-based computing was done in the YARTOS real-time microkernel:

YARTOS: Kernel support for efficient, predictable real-time systems, K. Jeffay, D. Stone, and D. Poirier, Proc. of the Joint Eighth IEEE Workshop on Real-Time Operating Systems and Software and IFAC/IFIP Workshop on Real-Time Programming, Atlanta, GA, May 1991, pp. 7-12.

The Design, Implementation, and Use of a Sporadic Tasking Model For Real-Time Computing on the Desktop, K. Jeffay, D. Becker, D. Bennett, S. Bharrat, T. Gramling, M. Housel, in submission.

In this lecture, I claim that the paradigm of rate-based computing I have developed is a hybrid of three approaches. The approaches are described in:

Fine-Grain Adaptive Scheduling Using Feedback, H. Massalin, C. Pu, Computing Systems, Vol. 3, No. 1, (Winter 1990) pp. 139-173.

Support for Continuous Media in the DASH System, D.P. Anderson, S.-Y. Tzou, R. Wahbe, R. Govindan, M. Andrews, Proc. Tenth Intl. Conf. on Distributed Computing Systems, Paris, France, May 1990, pp. 54-61.

The Real-Time Producer/Consumer Paradigm: A paradigm for the construction of efficient, predictable real-time systems, K. Jeffay, Proceedings of the 1993 ACM/SIGAPP Symposium on Applied Computing, Indianapolis, IN, ACM Press, February 1993, pp. 796-804.

Lecture 3: Fluid-flow models of resource allocation for real-time services

A good survey of real-time resource allocation algorithms for packet networks can be found in:

Service Disciplines For Guaranteed Performance Service in Packet-Switching Networks, Zhang, H., Proceedings of IEEE, Vol. 83, No. 10, October 1995.

The resource allocation algorithms described in this lecture are covered in greater detail in:

A Generalized Processor Sharing Approach To Flow Control in Integrated Services Networks-The Single Node Case, A. K. Parekh and R. G. Gallager, ACM/IEEE Transactions on Networking, Vol. 1, No. 3, 1992, pp. 344-357.

VirtualClock: A New Traffic Control Algorithm for Packet-Switched Networks, L. Zhang, ACM Transactions on Computer Systems, Vol. 9, No. 2, (May 1991), pp. 101-124.

Analysis and simulation of fair queueing algorithm, Demers, A., Keshav S., & Shenkar, S., Proceedings of ACM SIGCOMM, 1989, pp. 3-12.

Lecture 4: Proportional share CPU scheduling

The proportional share CPU scheduling framework and algorithm covered in this lecture are described in greater detail in:

A Proportional Share Resource Allocation Algorithm For Real-Time, Time-Shared Systems, I. Stoica, H. Abdel-Wahab, K. Jeffay, S.K. Baruah, J.E. Gehrke, and C.G. Plaxton, Proceedings of the 17th IEEE Real-Time Systems Symposium, Washington, DC, December 1996, pp. 288-299.

Fair On-Line Scheduling of a Dynamic Set of Tasks on a Single Resource, S.K. Baruah, J.E. Gehrke, C.G. Plaxton, I. Stoica, H. Abdel-Wahab, and K. Jeffay, Information Processing Letters, to appear.

Support For Real-Time Computing Within General Purpose Operating Systems: Supporting co-resident operating systems, G. Bollella and K. Jeffay, Proceedings of the IEEE Real-Time Technology and Applications Symposium, Chicago, IL, May 1995, pp. 4-14.

Other approaches to proportional share allocation for multimedia computing include the dollowing works:

Integrated Processor Scheduling for Multimedia, J. Nieh and M. S. Lam, Proc. of the Fifth International Workshop on Network and Operating System Support for Digital Audio and Video, Durham, N.H., April, 1995.

Lottery Scheduling: Flexible Proportional-Share Resource Management, C. A. Waldspurger and W. E. Weihl. Proc. of the First Symposium on Operating System Design and Implementation, November 1994, pp. 1-12.

A Hierarchical CPU Scheduler for Multimedia Operating Systems, P. Goyal, X. Guo and H. M. Vin, Proc. of the 2nd ACM/USENIX Symposium on Operating System Design and Implementation, October 1996.

Lecture 5: On the duality of proportional share and traditional Liu & Layland style resource allocation

This lecture comes from the following paper:

On the Duality between Resource Reservation and Proportional Share Resource Allocation, I. Stoica, H. Abdel-Wahab, K. Jeffay, in Multimedia Computing and Networking 1997, Proceedings, SPIE Proceedings Series, Volume 3020, San Jose, CA, February 1997, pp. 207-214.