On Unit Task Linear-Nonlinear Two-Cluster Scheduling Problem
In parallel and distributed processing, tasks are ordinarily clustered and assigned to different processors or machines before they are scheduled. The assignment of tasks to processors is called clustering. The ordering of tasks for execution is called cluster scheduling. The set of tasks is typically modelled as a directed acyclic task graph (DAG). As a result of the clustering process, the set of tasks in each cluster either forms a total ordering, called linear, or it doesn't, called nonlinear, with respect to the DAG. It has been shown that two-cluster scheduling with one cluster being linear and the other nonlinear is strongly NP-hard. In this paper, we develop an exact algorithm to compute an optimal schedule for the above problem in O(e + α(n)n) time when tasks are restricted to unit tasks, where n is the number of nodes, e is the number of edges, and α(n) is similar to inverse Ackerman function. We also show that when both clusters are nonlinear, even when tasks are restricted to unit-tasks and task graphs are restricted to those having no path of length more than three, the problem remains NP-complete in the strong sense.
MSU Digital Commons Citation
Xiao, Zhichun; Li, Wing Ning; and Jenq, John, "On Unit Task Linear-Nonlinear Two-Cluster Scheduling Problem" (2005). Department of Computer Science Faculty Scholarship and Creative Works. 455.