  In this study, a cluster-computing environment is employed as a computational
platform. In order to increase the efficiency of the system, a dynamic task
scheduling algorithm is proposed, which balances the load among the nodes of
the cluster. The technique is dynamic, nonpreemptive, adaptive, and it uses a
mixed centralised and decentralised policies. Based on the divide and conquer
principle, the algorithm models the cluster as hyper-grids and then balances
the load among them. Recursively, the hyper-grids of dimension k are divided
into grids of dimensions k - 1, until the dimension is 1. Then, all the nodes
of the cluster are almost equally loaded. The optimum dimension of the
hyper-grid is chosen in order to achieve the best performance. The simulation
results show the effective use of the algorithm. In addition, we determined the
critical points (lower bounds) in which the algorithm can to be triggered.
