Abstract
We consider a problem involving the design of a system for concurrent processing of application software using multiple processors on a local area network. The task control-flow graph which graphically describes the software logic is allowed to be an arbitrary directed multigraph. We establish equations of flow conservation which arise in the execution of modules on the set of interconnected processors. Incorporating these equations, we develop a mixed integer programming model to find an optimal allocation of program modules, with possible replications, to the set of capacitated processors. The objective is to minimize the total interprocessor communication cost and module execution cost subject to the capacity constraints of processors and the broadcast channel. The decisions involved are: how many copies of each module should be maintained; how to allocate module copies across processors; and how to distribute invocations of each module across its copies on different processors. We report numerical results from solving the model.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
J.A. Bannister and K.S. Trivedi, Task allocation in fault-tolerant distributed systems, Acta Inform. 20(1983)261–281.
S.H. Bokhari, A shortest tree algorithm for optimal assignments across space and time in a distributed processor system, IEEE Trans. Software Eng. SE-7(1981)583–589.
W. Bux, Performance issues, in:Lecture Notes in Computer Science 184: Local Area Networks: An Advanced Course, eds. G. Goos and J. Hartmanis (Springer, Berlin, 1985) pp. 108–161.
W.W. Chu, L.J. Holloway, L.M-T. Lan and K. Efe, Task allocation in distributed data processing, IEEE Comp. 13(1980)57–69.
W.W. Chu, L.M-T. Lan and J. Hellerstein, Estimation of intermodule communication and its applications in distributed processing systems, IEEE Trans. Comp. C33-(1984)691–699.
W.W. Chu and L.M-T. Lan, Task allocation and precedence relations for distributed real-time systems, IEEE Trans. Comp. C-36(1987)667–679.
W.W. Chu and K.K. Leung, Module replication and assignment for real-time distributed processing systems, Proc. IEEE 75(1987)547–562.
R. Duncan, A survey of parallel computer architectures, IEEE Comp. 23(1990)5–16.
K. Efe, Heuristic models of task assignment scheduling in distributed systems, IEEE Comp. 15(1982)50–56.
D. Fernandez-Baca, Allocating modules to processors in a distributed system, IEEE Trans. Software Eng. SE-15(1989)1427–1436.
D. Fernandez-Baca and A. Medepalli, Approximation algorithms for assignment problems in distributed systems, unpublished mimeograph (1992).
M.L. Fisher, The Lagrangian relaxation method for solving integer programming problems, Manag. Sci. 27(1981)1–18.
M.L. Fisher, R. Jaikumar and L.N. van Wassenhove, A multiplier adjustment method for the generalized assignment problem, Manag. Sci. 32(1986)1095–1103.
M.J. Flynn, Very high speed computing systems, Proc. IEEE 54(1966)1901–1909.
B. Gavish and S. Sridhar,O(n) algorithms for load balancing in distributed computing systems, Comp. Oper. Res., to appear.
M. Gondran and M. Minoux,Graphs and Algorithms (Wiley, New York, 1988).
V.B. Gylys and J. A. Edwards, Optimal partitioning of workload for distributed systems,COMPCON Fall 76 (IEEE Computer Society, Washington D.C., 1976) pp. 353–357.
S. Hariri and C.S. Raghavendra, Distributed functions allocation for reliablity and delay optimization,IEEE/ACM Fall Joint Computer Conf. (1986) pp. 344–352.
C. Ho, Replicated module allocation to capacitated multiprocessors in network-based concurrent processing systems, Ph.D. Dissertation, The University of Iowa, Iowa City (1992).
J.P. Huang, Modeling of software partition for distributed real-time applications, IEEE Trans. Software Eng. SE-11(1985)1113–1126.
R.M. Karp, Reducibility among combinatorial problems, in:Complexity of Computer Computations, eds. R.E. Miller and J.W. Thatcher (Plenum Press, 1972).
G.A.P. Kindervater, J.K. Lenstra and A.H.G. Rinnooy Kan, Perspectives on parallel computing, Oper. Res. 37(1989)985–990.
L. Kleinrock,Queueing Systems Vol. I: Theory (Wiley, New York, 1975).
V.M. Lo, Heuristic algorithms for task assignment in distributed systems, IEEE Trans. Comp. C-37(1988)1384–1397.
P-Y.R. Ma, E.Y.S. Lee and M. Tsuchiya, A task allocation model for distributed computing systems, IEEE Trans. Comp. C-31(1982)41–47.
S. Martello and P. Toth,Knapsack Problems (Wiley, New York, 1990).
C. Nikolaou, G. Kar, D.F. Ferguson and G. Leitner, Allocation and relocation of processes in distributed computer systems, in:Current Advances in Distributed Computing and Communication, ed. Y. Yemini (Computer Science Press, 1987).
D. Notkin, N. Hutchinson, J. Sanislo and M. Schwartz, Heterogeneous computing environments: Report on the ACM SIGOPS Workshop on accommodating heterogeneity, Commun. ACM 30(1987)132–140.
J.S. Park and K. Kang, Delay analysis for a multidimensional queueing process in CSMA/CD local area network, Telecom. Syst. 1(1993)217–242.
J.S. Park, R. Bartoszynski and W. Rosenkrantz, Stability ofp-persistent CSMA/CD, ORSA J. Comp., to appear.
S. Pinter and Y. Wolfstahl, On mapping processes to processors in distributed systems, Proc. IEEE (1987)337–341.
G.S. Rao, H.S. Stone and T.C. Hu, Assignment of tasks in a distributed processor system with limited memory, IEEE Trans. Comp. C-28(1979)291–299.
A.A. Rizzi, L.L. Whitcomb and D.E. Koditschek, Distributed real-time control of a spatial robot juggler, IEEE Comp. 25(1992)12–24.
S.M. Shatz and J.P. Wang,Tutorial: Distributed Software Engineering (IEEE Computer Society, Washington D.C., 1989).
C.C. Shen and W.H. Tsai, A graph matching approach to optimal task assigment in distributed computing systems using a minimax criterion, IEEE Trans. Comp. C-34(1985)197–203.
J.B. Sinclair, Optimal assignments in broadcast networks, IEEE Trans. Comp. C-37(1988) 521–531.
J. Singhal, R.E. Marsten and T.L. Morin, Fixed order branch-and-bound methods for mixed-integer programming: TheZoom system, ORSA J. Comp. 1(1989)44–51.
H.S. Stone, Multiprocessor scheduling with the aid of network flow algorithms, IEEE Trans. Software Eng. SE-3(1977)85–93.
D. Towsley, Allocating programs containing branches and loops within a multiple processor system, IEEE Trans. Software Eng. SE-12(1986)1018–1024.
User's Manual for Zoom, Release 4.0 (XMP Software Inc., 1989).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Park, J.S., Ho, Cy. & Lowe, T.J. Replicated module allocation in LAN-based concurrent processing systems. Telecommunication Systems 3, 295–318 (1994). https://doi.org/10.1007/BF02110309
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF02110309