TASK ASSIGNMENT IN HOST-SATELLITE SYSTEMS
Kyungryong Seo, Kyu-Ho Paul Park · Journal of Circuits Systems and Computers · 1996
This paper deals with the problem of assigning task modules of a program over a multiple computer system such that the sum of execution and communication costs is minimized. If the number of processors is two, this problem can be solved efficiently using the network flow approach pioneered by Stone.13 However, the general n-processor problem (n>3) in a fully connected system is known to be NP-complete.14 A host-satellite system considered in this paper is composed of a powerful host processor p0 and N homogeneous satellite processors pk’s, 1≤k≤N, in which each satellite processor pk is connected to the host processor p0 through a communication link. When any two satellite processors are to communicate with each other, the host processor p0 must participate in the communication. Therefore, the interprocessor communication cost per unit of information transferred between any two satellite processors is twice as much as that between a satellite processor and the host processor p0. In this paper, we propose an algorithm which finds an optimal assignment on a host-satellite system in polynomial time. A task assignment problem for a host-satellite system is first transformed into a network flow problem, and then solved by applying the well known network flow algorithm in time no worse than O(NM3), where N and M are the number of satellites and the number of modules, respectively.