This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Allocation of Periodic Task Modules with Precedence and Deadline Constraints in Distributed Real-Time Systems
December 1997 (vol. 46 no. 12)
pp. 1338-1356

Abstract—This paper addresses the problem of allocating (assigning and scheduling) periodic task modules to processing nodes in distributed real-time systems subject to task precedence and timing constraints. Using the branch-and-bound technique, a module allocation scheme is proposed to find an "optimal" allocation that maximizes the probability of meeting task deadlines.

The task system within a planning cycle is first modeled with a task flow graph which describes computation and communication modules, as well as the precedence constraints among them. To incorporate both timing and logical correctness into module allocation, the probability of meeting task deadlines is used as the objective function. The module allocation scheme is then applied to find an optimal allocation of task modules in a distributed system. The timing aspects embedded in the objective function drive the scheme not only to assign task modules to processing nodes, but also to use a module scheduling algorithm (with polynomial time complexity) for scheduling all modules assigned to each node, so that all tasks may be completed in time.

In order to speed up the branch-and-bound process and to reduce the computational complexity, a dominance relation is derived from the requirement of timely completion of tasks and use to eliminate the possibility of generating vertices in the state-space search tree, which never lead to an optimal solution, and an upper bound of the objective function is derived for every partial allocation with which the scheme determines whether or not to prune the corresponding intermediate vertex in the search tree. Several numerical examples are presented to demonstrate the effectiveness and practicality of the proposed scheme.

[1] 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.
[2] J.A. Stankovic, K. Ramamritham, and S. Chang, "Evaluation of a Flexible Task Scheduling Algorithm for Distributed Hard Real-Time Systems," IEEE Trans. Computers, vol. 34, no. 12, pp. 1,130-1,141, Dec. 1985.
[3] K. Ramamritham, J.A. Stankovic, and W. Zhao, “Distributed Scheduling of Tasks with Deadlines and Resource Requirements,” Trans. Computers, vol. 38, no. 8, Aug. 1989.
[4] K.G. Shin and Y.-C. Chang, "Load Sharing in Distributed Real-Time Systems with State Change Broadcasts," IEEE Trans. Computers, vol. 38, no. 8, pp. 1,1224-1,142, Aug. 1989.
[5] K.G. Shin and C.-J. Hou, "Analytic Models of Adaptive Load Sharing Schem es in Distributed Real-Time Systems," IEEE Trans. Parallel and Distributed Systems, vol. 4, no. 7, pp. 740-761, July 1993.
[6] C.-J. Hou and K.G. Shin, "Load Sharing with Consideration of Future Task Arrivals in Heterogeneous Distributed Real-Time Systems," IEEE Trans. Computers, vol. 44, no. 9, pp. 1,076-1,090, Sept. 1994.
[7] P.-Y. Ma, E.Y.S. Lee, and M. Tsuchiya, "A Task Allocation Model for Distributed Computing Systems," IEEE Trans. Computers, vol. 31, no. 1, pp. 41-47, Jan. 1982.
[8] H.S. Stone, "Multiprocessor Scheduling with the Aid of Network Flow Algorithms," IEEE Trans. Software Eng., vol. 3, no. 1, pp. 85-93, Jan. 977.
[9] V.M. Lo, "Heuristic Algorithms for Task Assignment in Distributed Systems," IEEE Trans. Computers, vol. 37, no. 11, pp. 1,384-1,397, Nov. 1988.
[10] C.E. Houstis, "Module Allocation of Real-Time Applications for Distributed Systems," IEEE Trans. Software Eng., vol. 16, no. 7, pp. 699-709, July 1990.
[11] J.A. Bannister and K.S. Trivedi, "Task Allocation in Fault-Tolerant Distributed Systems," Acta Informatica, vol. 20, pp. 261-281, 1983.
[12] A. Tantawi and D. Towsley, "Optimal Static Load Balancing in Distributed Computer Systems," J. ACM, vol. 32, pp. 445-465, 1985.
[13] T.C.K. Chou and J.A. Abraham, "Load Balancing in Distributed Systems," IEEE Trans. Software Eng., vol. 8, pp. 401-422, July 1982.
[14] C.C. Shen and W.H. Tsai, "A Graph Matching Approach to Optimal Task Assignment in Distributed Computing Systems Using a Minimax Criterion," IEEE Trans. Computers, vol. 34, no. 3, pp. 197-203, Mar. 1985.
[15] W.W. Chu and L.M-T. Lan,“Task allocation and precedence relations for distributed real-time systems,” IEEE Trans. on Computers, vol. 36, no. 6, June 1982.
[16] W.W. Chu and K.K. Leung, "Module Replication and Assignment for Real-Time Distributed Processing Systems," Proc. IEEE, vol. 75, pp. 547-562, May 1987.
[17] D.-T. Peng and K.G. Shin, "Static Allocation of Periodic Tasks with Precedence Constraints," Proc. Int'l Conf. Distributed Computing Systems, 1989.
[18] S.M. Shatz and J.P. Wang, “Models&Algorithms for Reliability-Oriented Task-Allocation in Redundant Distributed-Computer Systems,” IEEE Trans. Reliability, vol. 38, pp. 16-26, Apr. 1989.
[19] S.M. Shatz, J.P. Wang, and M. Goto, “Task Allocation for Maximizing Reliability of Distributed Computer Systems,” IEEE Trans. Computers, vol. 41, no. 9, pp. 1,156-1,168, Sept. 1992.
[20] K.G. Shin, C.M. Krishna, and Y.H. Lee, "A Unified Method for Evaluating Real-Time Computer Controllers Its Application," IEEE Trans. Automatic Control, vol. 30, pp. 357-366, Apr. 1985.
[21] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness.New York: W.H. Freeman, 1979.
[22] D. Fernandez-Baca, "Allocating Modules to Processors in a Distributed System," IEEE Trans. Software Eng., vol. 15, no. 11, pp. 1,427-1,436, Nov. 1989.
[23] K. Ramamritham, “Allocation and Scheduling of Complex Periodic Tasks,” Proc. 10th IEEE Int'l Conf. Distributed Computing Systems, 1990.
[24] C.J. Hou and K.G. Shin, “Allocation of Periodic Task Modules with Precedence and Deadline Constraints in Distributed Real-Time Systems,” Proc. Real-Time Systems Symp., pp. 146-155, Dec. 1992.
[25] J. K. Strosnider and T. Marchok,“Responsive, deterministic ieee 802.5 token ring scheduling,”Real-Time Syst. J.,pp. 133–158, Sept. 1989.
[26] B. Chen,G. Agrawal,, and W. Zhao,“Optimal synchronous capacity allocation for hard real-time communicationswith the timed token protocol,” Proc. Real-Time Systems Symp., pp. 198-207, Dec. 1992.
[27] G. Agrawal,B. Chen,W. Zhao,, and S. Davari,“Guaranteeing synchronous message deadlines with the timed token mediumaccess control protocol,” IEEE Trans. Computers, vol. 43, no. 3, pp. 327-339, Mar. 1994.
[28] N. Malcolm and W. Zhao, “The Timed-Token Protocol for Real-Time Communications,” Computers, vol. 27, no. 1, pp. 35-41, Jan. 1994.
[29] C.-C. Han, K.G. Shin, and C. Hou, “On Non-Existence of Optimal Local Synchronous Bandwidth Allocation Schemes,” Proc. 14th IEEE Ann. Int'l Phoenix Conf. Computers and Comm., pp. 191-197, Mar. 1995.
[30] C.-C. Han, K.G. Shin, and C.-J. Hou, "Synchronous Bandwidth Allocation for Real-Time Communications with the Timed-Token MAC Protocol," submitted for publication, Jan. 1997.
[31] C.-C. Han, C.-J. Hou, and K.G. Shin, “On Slot Allocation for Time-Contrained Messages in Dual-Bus Networks,” IEEE Trans. Computers, vol. 46, no. 7, pp. 756-767, July 1997.
[32] D. Saha, M.C. Saksena, S. Mukherjee, and S.K. Tripathi, "On Guaranteed Delivery of Time-Critical Messages in DQDB," Proc. IEEE INFOCOM '94, vol. 1, pp. 272-279, June 1994.
[33] D. Ferrari and D.C. Verma,“A scheme for real-time channel establishment in wide-area networks, IEEE J. Selected Areas in Comm., vol. 8, no. 3, pp. 368-379, Apr. 1990.
[34] Q. Zheng and K.G. Shin,“On the ability of establishing real-time channelsin point-to-point packet-switched networks,” IEEE Trans. Comm. pp. 1,096-1,105, Feb./Mar./Apr. 1994.
[35] W.L. Winston, Operations Research, Applications and Algorithms, second ed., chapter 7, pp. 321-326. PWS-KENT Publishing, 1987.
[36] K.R. Baker, E.L. Lawler, J.K. Lenstra, and A.H.G.R. Kan, "Preemptive Scheduling of a Single Machine to Minimize Maximum Cost Subject to Release Dates," Operations Research, pp. 381-386, Mar.-Apr. 1983.
[37] N.S. Bowen, C.N. Nikolaou, and A. Ghafoor, “On the Assignment Problem of Arbitrary Process Systems to Heterogeneous Distributed Computer Systems,” IEEE Trans. Computers, vol. 41, no. 3, Mar. 1992.
[38] C.-J. Hou, "Design and Analysis of Task Allocation and Re-Distribution in Distributed Real-Time Systems," PhD thesis, Univ. of Michigan-Ann Arbor, Dept. of Electrical Eng. and Computer Science, Aug. 1993. Also available as Technical Report CSE-TR-172-93, Univ. of Michigan-Ann Arbor.

Index Terms:
Real-time systems, dynamic failure, task/module allocation, module scheduling, precedence and deadline constraints, task flow graph, branch-and-bound process.
Citation:
Chao-Ju Hou, Kang G. Shin, "Allocation of Periodic Task Modules with Precedence and Deadline Constraints in Distributed Real-Time Systems," IEEE Transactions on Computers, vol. 46, no. 12, pp. 1338-1356, Dec. 1997, doi:10.1109/12.641934
Usage of this product signifies your acceptance of the Terms of Use.