The real problem in cluster of workstations is the changes in workstation power or number of workstations or dynmaic changes in the run time behavior of the application hamper the efficient use of resources. Dynamic load balancing is a technique for the parallel implementation of problems, which generate unpredictable workloads by migration work units from heavily loaded processor to lightly loaded processors at run time. This paper proposed an efficient load balancing method in which parallel tree computations depth first search (DFS) generates unpredictable, highly imbalance workloads and moves through different phases detectable at run time, where dynamic load balancing strategy is applicable in each phase running under the MPI(message passing interface) and Unix operating system on cluster of workstations parallel platform computing.
One of the fundamental problems in parallel and distributed systems is deciding how to allocate jobs to processors. The goals of job scheduling in a parallel environment are to minimize the parallel execution time of a job and try to balance the user’s desire with the system’s desire. The users always want their jobs be completed as quickly as possible, while the system wants to service as many jobs as possible. In this paper, a dynamic job scheduling algorithm was introduced. This algorithm tries to utilize the information of a practical system to allocate the jobs more evenly. The communication time between the processor and scheduler is overlapped with the computation time of the processor. So the communication overhead can be little. The principle of scheduling the job is based on the desirability of each processor. The scheduler would not allocate a new job to a processor that is already fully utilized. The execution efficiency of the system will be increased. This algorithm also can be reused in other complex algorithms.