This Article 
 Bibliographic References 
 Add to: 
Execution Time Analysis of Communicating Tasks in Distributed Systems
May 1996 (vol. 45 no. 5)
pp. 572-579

Abstract—Task-execution times are one of the most important parameters in scheduling tasks. Most scheduling algorithms are based on the assumption that either worst-case task-execution times are known to the scheduler or no information on execution times is available at all. While scheduling tasks based on worst-case execution times can guarantee to meet their timing requirements, it may lead to severe under-utilization of CPUs because worst-case execution times could be one or two orders of magnitude larger than the corresponding actual values. Scheduling tasks based on the execution time distribution (instead of worst-case execution times) is known to improve system utilization significantly.

In this paper, we propose a model to predict task execution times in a distributed system. The model considers several factors which affect the execution time of each task. These factors are classified into two groups: intrinsic and extrinsic. The intrinsic factors control the flow within a task, while the extrinsic factors include communication and synchronization delays between tasks. By simplifying the extrinsic factors, we represent a distributed system with a simple queuing model. The proposed queuing model consists of two stations: one for computation and the other for communication and synchronization. Information on system utilization can be obtained by converting this queuing model to a Markov chain. The execution time of a task is then derived from the information on system utilization in the form of average and distribution. The model is extended to describe the effects of multiple tasks assigned to a single processing node. The utility of the model is demonstrated with an example.

[1] M.H. Woodbury and K.G. Shin,"Evaluation of the Probability of Dynamic Failure and Processor Utilization for Real-Time Systems," Proc Ninth Real-Time System Symp., pp. 222-231, Dec. 1988.
[2] M.H. Woodbury,"Analysis of the Execution Time of Real-Time Tasks," Proc. Seventh Real-Time System Symp., pp. 89-96, Dec. 1986.
[3] V. Haase,"Real-Time Behavior of Programs," IEEE Trans. Software Eng., vol. 7, pp. 494-501, Sept. 1981.
[4] W. Chu and K.K. Leung,"Task Response Time Model and Its Applications for Real-Time Distributed Processing Systems," Proc. Fifth Real-Time System Symp., pp. 225-236, Dec. 1984.
[5] C.Y. Park and A.C. Shaw, "Experiments With a Program Timing Tool Based on Source-Level Timing Schema," Computer, pp. 48-57, May 1991.
[6] A. Stoyenko,"A Real-Time Language with a Schedulability Analyzer," Doctoral dissertation CSRI-206, Univ. of Toronto, Dec. 1987.
[7] K. Kenny and K.-J. Lin, "Measuring and Analyzing Real-Time Performance," IEEE Software, Sept. 1991, pp. 41-49.
[8] W. Chu and C.M. Sit,"Estimating Task Response Time with Contentions for Real-Time Distributed Systems," Proc. Ninth Real-Time System Symp., pp. 272-281, Dec. 1988.
[9] D. Peng and K. G. Shin,“Modeling of concurrent task execution in a distributed system for real-time control,”IEEE Trans. Comput., vol. C-36, pp. 500–516, Apr. 1987.
[10] R. Nelson, D. Towsley, and A. Tantawi, “Performance Analysis of Parallel Processing Systems,” IEEE Trans. Software Engineering, vol. 14, pp. 532–539, Apr. 1988.
[11] K.S. Trivedi, Probability and Statistics with Reliability, Queuing, and Computer Science Applications. Prentice Hall, 1982.
[12] J.B. Dugan,R. Geist, and K.S. Trivedi,"The Hybrid Automated Reliability Predictor," AIAA J. Guidance, Control, and Dynamics, vol. 9, no. 3, pp. 319-331, 1986.
[13] V. Sarkar,Partitioning and Scheduling Parallel Programs for Execution on Multiprocessors.Cambridge, Mass.: MIT Press, 1989.
[14] J. Lee,E. Shragowitz, and S. Sahni,"A Hypercube Algorithm for the 0/1 Knapsack Problem," Proc. 1987 ICPP, pp. 699-706, Aug. 1987.

Index Terms:
Task-execution time, distributed systems, queuing analysis, communication and synchronization delays.
Jong Kim, Kang G. Shin, "Execution Time Analysis of Communicating Tasks in Distributed Systems," IEEE Transactions on Computers, vol. 45, no. 5, pp. 572-579, May 1996, doi:10.1109/12.509908
Usage of this product signifies your acceptance of the Terms of Use.