European Journal of Operational Research 43 (1989) 225-230 225
North-Holland
Theory and Methodology
A polynomial algorithm to optimally
tasks on a virtual distributed system
under tree-like precedence constraints
schedule
Philippe CHRETIENNE
Universitd Pierre et Marie Curie, Laboratoire MASI, Aile 66-56 Bll6, 4, place Jussieu, 75252 Paris, France
Abstract: In this paper an ideal distributed memory architecture is considered which is called a Virtual
Distributed System. The scheduling problem is formally defined which is associated with the execution in a
minimal makespan of a set of dependent tasks over such an architecture. It is shown that if the processing
times of the tasks are not less that the data communication times between the tasks, the associated
scheduling problem under tree-like precedence constraints is polynomial and an efficient algorithm is
provided to solve it.
Keywords: Algorithm, scheduling, complexity, graph, distributed system
Introduction
Providing multiprocessor operating systems
with efficient schedules of the tasks they have to
process is one of the main application areas of the
recent research work on scheduling (Coffman,
1976; Rinnooy Kan, 1976; Carlier, 1984). Most of
these results assume a shared memory architecture
implying that the output data of one task are
instantaneously available to any other task need-
ing them as part of its input. Quite recently,
distributed memory systems pass from the state of
theoretical models to that of real machines such as
hypercubes or transputer networks and a lot of
research aims at using at best the inherent paral-
lelism of these architectures. To achieve this goal,
new scheduling problems have to be solved. One
of the new constraints introduced by these systems
is that if one task must send data to one of its
Received February 1988; revised June 1988
immediate successors and if these two tasks are
not assigned to the same processor, a communica-
tion time is needed to carry the output data from
the sending task to the receiving one.
Until now, the main approaches used to cope
with these problems are quadratic programming
models in order to improve the load balance among
the processors (Chow, 1982), branch and bound
methods (Sinclair, 1987), or heuristics (Lo, 1984;
Efe, 1982) to deal with the scheduling problem.
Clearly, the scheduling decision problem asso-
ciated with a 'real' distributed memory machine is
NP-complete since the special case we get by
letting all the communication times be equal to
zero is the well-known Precedence constrained
scheduling (Garey and Johnson, 1979). So, unlike
the previously mentioned works that do aim at
solving the 'real case', our objective here is to
locate more precisely the borderline between easy
and difficult special cases of this new scheduling
problem by presenting a polynomial subproblem.
~77-2217/89/$3.50 © 1989, Elsevier Science Publishers B.V. (North-Holland)