Skip to main content
Log in

Approximation algorithm for periodic real-time tasks with workload-dependent running-time functions

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

This paper addresses the problem of resource allocation for distributed real-time periodic tasks, operating in environments that undergo unpredictable changes and that defy the specification of meaningful worst-case execution times. These tasks are supplied by input data originating from various environmental workload sources. Rather than using worst-case execution times (WCETs) to describe the CPU usage of the tasks, we assume here that execution profiles are given to describe the running time of the tasks in terms of the size of the input data of each workload source. The objective of resource allocation is to produce an initial allocation that is robust against fluctuations in the environmental parameters. We try to maximize the input size (workload) that can be handled by the system, and hence to delay possible (costly) reallocations as long as possible. We present an approximation algorithm based on first-fit and binary search that we call FFBS. As we show here, the first-fit algorithm produces solutions that are often close to optimal. In particular, we show analytically that FFBS is guaranteed to produce a solution that is at least 41% of optimal, asymptotically, under certain reasonable restrictions on the running times of tasks in the system. Moreover, we show that if at most 12% of the system utilization is consumed by input independent tasks (e.g., constant time tasks), then FFBS is guaranteed to produce a solution that is at least 33% of optimal, asymptotically. Moreover, we present simulations to compare FFBS approximation algorithm with a set of standard (local search) heuristics such as hill-climbing, simulated annealing, and random search. The results suggest that FFBS, in combination with other local improvement strategies, may be a reasonable approach for resource allocation in dynamic real-time systems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Aber E, Drews F, Gu D, Juedes D, Lenharth A, Parrott D, Welch L, Zhao H, Fleeman D (2004) Experimental comparison of heuristic and optimal resource allocation algorithms for maximizing allowable workload in dynamic, distributed real-time systems. In: 6th Brazilian Workshop on Real-Time Systems

  • Ali S, Maciejewski AA, Siegel HJ, Kim J-K (2004) Measuring the robustness of a resource allocation. IEEE Trans Parall Distrib Syst 15(7):630–641

    Article  Google Scholar 

  • Blazewicz J, Ecker KH, Pesch E, Schmidt G, Weglarz J (2001) Scheduling computer and manufacturing processes. Springer Heidelberg, New York

    MATH  Google Scholar 

  • Burns A (2000) The meaning and role of value in scheduling flexible real-time systems. J Syst Architect 46:305–325

    Article  Google Scholar 

  • Burns A, Nicholson M, Tindell K, Zhang N (1993) Allocating and scheduling hard real-time tasks on a point-to-point distributed system. In: Proceedings of the The Workshop on Parallel and Distributed Real-Time System, pp 11–20

  • Garey MR, Johnson DS (1979) Computers and intractability: A guide to the theory of NP-completeness. W.H. Freeman and Company, San Francisco

    Google Scholar 

  • Gertphol S, Yu Y, Alhusaini A, Prasanna VK (2001) An integer programming approach for static mapping of paths onto heterogeneous real-time systems. In: Ninth Workshop on Parallel and Distributed Real-Time Systems (WPDRTS), 15th International Parallel and Distributed Processing Symposium (IPDPS 2001)

  • Gertphol S, Yu Y, Gundala SB, Prasanna VK, Ali S, Kim J-K, Maciejewski AA, Siegel H (2002) A metric and mixed-integer-programming-based approach for resource allocation in dynamic real-time systems. In: Proceedings of the International Parallel and Distributed Processing Symposium (IPDPS 2002)

  • Hou C-J, Shin KG (1997) Allocation of periodic task modules with precedence and deadline constraints in distributed real-time systems. IEEE Trans Comp 46(12):1338–1355

    Article  MathSciNet  Google Scholar 

  • Humphrey M, Brandt S, Nutt G, Berk T (1997) The DQM architecture: Middleware for application -centered QoS resource management. In: Proceedings of the IEEE Workshop on Middleware for Distributed Real-Time Systems and Services, pp 97–104

  • Juedes D, Drews F, Welch L, Fleeman D (2004) Heuristic resource allocation algorithms for maximizing allowable workload in dynamic, distributed, real-time systems. In: The 12th Workshop on Parallel and Distributed Real-Time Systems (WPDRTS2004), Santa Fe, Mexico, USA

  • Karr D, Rodrigues C, Loyall J, Schantz R (2001) Controlling quality-of-service in a distributed video application by an adaptive middleware framework. In: Proceedings of ACM Multimedia

  • Krishnamurth Y, Kachroo V, Karr D, Rodrigues C, Loyall J, Schantz R, Schmidt D (2001) Integration of QoS-enabled distributed object computing middleware for developing next-generation distributed applications. In: Proceedings of the ACM SIGPLAN Workshop on Optimization of Middleware and Distributed Systems

  • Lee C, Siewiorek D (1999) On quality of service optimization with discrete qos options. In: Proceedings of the 5th IEEE Real-Time Technology and Applications Symposium (RTAS ’99), pp 276–286

  • Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J Assoc Comp Mach 20(1):46–61

    MATH  MathSciNet  Google Scholar 

  • Lopez JM, Diaz JL, Garcia DF (2004) Utilization bounds for edf scheduling on real-time multiprocessor systems. Real-Time Syst 28:39–68

    Article  MATH  Google Scholar 

  • Loyall J, Rubel P, Schantz R, Atighetchi M, Zinky J (2002) Emerging patterns in adaptive, distributed real-time, embedded middleware. In: Proceedings of the 9th Conference on Pattern Language of Programs

  • Manolache S, Eles P, Peng Z (2004) Optimization of soft real-time systems with deadline miss ratio constraints. In: 10th IEEE Real-Time and Embedded Technology and Applications Symposium

  • Oh D-I, Baker TP (1998) Utilization bounds for N-processor rate monotonic scheduling with stable processor assignment. Real Time Syst J 15(1):183–193

    Article  Google Scholar 

  • Peng DT, Shin KG, Abdelzaher TF (1997) Assignment and scheduling of communicating periodic tasks in disributed real-time systems. IEEE Transactions on Software Engineering 23(12)

  • Puschner P, Schedl A (1997) Computing maximum task execution times—a graph-based approach. The Journal of Real-time Systems 13:67–91

    Article  Google Scholar 

  • Rajkumar R, Lee C, Lehoczky J, Siewiorek D (1997) A qos-based resource allocations model. In: Proceedings of the IEEE Real-Time Systems Symposium

  • Rajkumar R, Lee C, Lehoczky J, Siewiorek D (1998) Practical solutions for qos-based resource allocation problems. In: Proceedings of the IEEE Real-Time Systems Symposium, pp 315–326

  • Rajkumar R, Lee C, Lehoczky J, Siewiorek D (1999) A scalable solution to the multi-resource QoS problem. In: Proceedings of the 20th IEEE Real-Time Systems Symposium, pp 315–326

  • Ramamritham K (1995) Allocation and scheduling of precedence-related periodic tasks. IEEE Trans Parall Distrib Syst 6(4):412–420

    Article  Google Scholar 

  • Ravindran B, Welch L, Shirazi B (2000) Resource management middleware for dynamic, dependable real-time systems. Real-Time Syst 20:183–196

    Article  Google Scholar 

  • Shirazi B, Welch L, Ravindran B, Cavanaugh C, Yanamula B, Brucks R, Huh E (1999) DynBench: A dynamic benchmark suite for distributed real-time systems. In: Proceedings of the Parallel and Distributed Processing: IPPS/SPDP Workshops, pp 1335–1349

  • Tan Z (2003) .Producing application CPU profiles in DynBench via curve fitting. In: Technical Report, Center for Intelligent, Distributed, and Dependable Systems, Ohio University

  • Tia T-S, Deng Z, Shankar M, Storch M, Sun J, Wu L-C, Liu JW-S (1995) Probabilistic performance guarantee for real-time tasks with varying computation times. In: IEEE Real-Time Technology and Applications Symposium

  • Tindell K, Burns A, Wellings A (1992) Allocating real-time tasks (an np-hard problem made easy). J Real-Time Syst 4(2):145–165

    Article  Google Scholar 

  • Welch LR, Ravindran B, Shirazi BA, Bruggeman C (1998) Specification and modeling of dynamic distributed real-time systems. In: Proceedings of the 19th IEEE Real-Time Systems Symposium. IEEE Computer Society Press, Washington, pp 72–81

  • Welch LR, Shirazi BA (1999) A dynamic real-time benchmark for assessment of qos and resource management technology. In: Proceedings of the IEEE Real-Time Technology and Applications Symposium, pp 36–45

  • Welch LR, Werme P, Ravindran B, Fontenot LA, Masters MW, Mills DW, Shirazi BA (1999) Adaptive QoS and resource management using a posteriori workload characterizations. In: Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium. IEEE Computer Society Press, Washington, pp 266–275

  • Zhou Y, Welch LR, Huh E-N, Alexander C, Lawrence D (2001) Execution time analysis for dynamic, periodic processes. In: The 9th Workshop on Parallel and Distributed Real-Time Systems

Download references

Author information

Authors and Affiliations

Authors

Additional information

David Juedes is a tenured associate professor and assistant chair for computer science in the School of Electrical Engineering and Computer Science at Ohio University. Dr. Juedes received his Ph.D. in Computer Science from Iowa State University in 1994, and his main research interests are algorithm design and analysis, the theory of computation, algorithms for real-time systems, and bioinformatics. Dr. Juedes has published numerous conference and journal papers and has acted as a referee for IEEE Transactions on Computers, Algorithmica, SIAM Journal on Computing, Theoretical Computer Science, Information and Computation, Information Processing Letters, and other conferences and journals.

Dazhang Gu is a software architect and researcher at Pegasus Technologies (NeuCo), Inc. He received his Ph.D. in Electrical Engineering and Computer Science from Ohio University in 2005. His main research interests are real-time systems, distributed systems, and resource optimization. He has published conference and journal papers on these subjects and has refereed for the Journal of Real-Time Systems, IEEE Transactions on Computers, and IEEE Transactions on Parallel and Distributed Systems among others. He also served as a session chair and publications chair for several conferences.

Frank Drews is an Assistant Professor of Electical Engineering and Computer Science at Ohio Unversity. Dr. Drews received his Ph.D. in Computer Science from the Clausthal Unversity of Technolgy in Germany in 2002. His main research interests are resource management for operating systems and real-time systems, and bioinformatics. Dr. Drews has numerous publications in conferences and journals and has served as a reviewer for IEEE Transactions on Computers, the Journal of Systems and Software, and other conferences and Journals. He was Publication Chair for the OCCBIO’06 conference, Guest Editor of a Special Issue of the Journal of Systems and Software on “Dynamic Resource Management for Distributed Real-Time Systems”, organizer of special tracks at the IEEE IPDPS WPDRTS workshops in 2005 and 2006.

Klaus Ecker received his Ph.D. in Theoretical Physics from the University of Graz, Austria, and his Dr. habil. in Computer Science from the University of Bonn. Since 1978 he is professor in the Department of Computer Science at the Clausthal University of Technology, Germany, and since 2005 he is visiting professor at the Ohio University. His research interests are parallel processing and theory of scheduling, especially in real time systems, and bioinformatics. Prof. Ecker published widely in the above mentioned areas in well reputed journals and proceedings of international conferences as well. He is also the author of two monographs on scheduling theory. Since 1981 he is organizing annually international workshops on parallel processing. He is associate editor of Real Time Systems, and member of the German Gesellschaft fuer Informatik (GI) and of the Association for Computing Machinery (ACM).

Lonnie R. Welch received a Ph.D. in Computer and Information Science from the Ohio State University. Currently, he is the Stuckey Professor of Electrical Engineering and Computer Science at Ohio University. Dr. Welch performs research in the areas of real-time systems, distributed computing and bioinformatics. His research has been sponsored by the Defense Advanced Research Projects Agency, the Navy, NASA, the National Science Foundation and the Army. Dr. Welch has twenty years of research experience in the area of high performance computing. In his graduate work at Ohio State University, he developed a high performance 3-D graphics rendering algorithm, and he invented a parallel virtual machine for object-oriented software. For the past 15 years his research has focused on middleware and optimization algorithms for high performance computing. His research has produced three successive generations of adaptive resource management (RM) middleware for high performance real-time systems. The project has resulted in two patents and more than 150 publications. Professor Welch also collaborates on diabetes research with faculty at Edison Biotechnology Institute and on genomics research with faculty in the Department of Environmental and Plant Biology at Ohio University. Dr. Welch is a member of the editorial boards of IEEE Transactions on Computers, The Journal of Scalable Computing: Practice and Experience, and The International Journal of Computers and Applications. He is also the founder of the International Workshop on Parallel and Distributed Real-time Systems and of the Ohio Collaborative Conference on Bioinformatics.

Silke Schomann graduated in 2003 with a M.Sc. in Computer Science from Clausthal University Of Technology, where she has been working as a scientific assistant since then. She is currently working on her Ph.D. thesis in computer science at the same university.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Juedes, D., Drews, F., Gu, D. et al. Approximation algorithm for periodic real-time tasks with workload-dependent running-time functions. Real-Time Syst 34, 173–194 (2006). https://doi.org/10.1007/s11241-006-9358-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-006-9358-2

Keywords

Navigation