You are on page 1of 6

International Journal of Computer Science Engineering and Information Technology Research (IJCSEITR) ISSN 2249-6831 Vol.

3, Issue 1, Mar 2013, 143-148 TJPRC Pvt. Ltd.

ANALYSIS OF A DYNAMIC LOAD BALANCING IN MULTIPROCESSOR SYSTEM


MOHAMMAD HAROON1 & MOHAMMAD HUSAIN2
1 2

Research Scholar, TMU , Moradabad,

Director MGIMT, Lucknow, Uttar Pradesh, India

ABSTRACT
Dynamic load balancing is an important factor affecting the parallel computing performance in a multiprocessor system. On the basis of an introduction to the principle of dynamic load balancing algorithm, we will find the rated efficiency, throughput, speedup, performance of the multiprocessor systems , in case of load balancing we finds through analysis that the basic reason for overhead occurring in load balancing is the load migration, and then qualitatively gives the granularity formula of moving load each time, we proposes a new dynamic load balancing algorithm, defines the four possible states of the node, and discusses the implementation rule of the algorithm.

KEYWORDS: Multiprocessors System, Dynamic Load Balancing, Parallel Computing, Scheduling Algorithms INTRODUCTION
Today, the use and access of fast processors and multiprocessors, has vastly uses and it is mostly used in cases that are very time-consuming, and time is a valuable source. We have to save the computational time A phenomenon in general appears in the multiprocessor system is that the unbalancing load. So it is a big issue to balance the load for that we propose an algorithm to balance the load of every node and then improve the system performance. in an efficient dynamic load balancing algorithm when a new job comes, a node checks whether its current load level is too high. If so, it randomly selects a number of nodes, up to a preset limit, whose last period load level are low enough, and polls them one by one. This paper describes the analysis of an effective load balancing algorithm for the multiprocessor systems phenomenon often appears in the multiprocessor system is that the load is unbalanced. So it is a hot issue to propose a algorithm to balance the load of every node and then improve the system performance. The load balancing algorithm can be divided into two kinds, centralized and distributed, by the decision information acquisition range. The centralized algorithm set a central node to collect load information of every node, and then make the loads-scheduling decision. but in that case if central node is out of order then at that moment over all load balancing algorithms is fail. this is central node may be the communication bottleneck of the system. In the distributed algorithm, each node makes the loads-scheduling algorithm based on there adjoining nodes load information. This algorithm oriented to partial balance and it beneficial to realize the global balance if properly designed. The load balancing algorithm also can be divided into static algorithm and dynamic algorithm by that whether the decision is related with the current load state. The multiprocessor that we discussed has some characteristics as follows. Every node has the same structure, the software configuration and hardware configuration is similar or the same. Arrive of each nodes task conform to the Poisson distribution. Every node never sends wrong information.

144

Mohammad Haroon & Mohammad Husain

The scheduling process responsible for the monitor this processor state, process every information and realize the task migration. Thus, there has been a motivation for designing appropriate scheduling algorithms with the aid of heuristic algorithms that can guarantee load balance in all processors of a system. Parallel processing is information processing that emphasizes the concurrent manipulation of data elements belonging to one or more processes solving a single problem. A parallel computer is a multiple processor computer capable of parallel processing. Parallel Processing is a combined field of studies which requires a broad knowledge of an experience with all aspects of algorithms, languages, hardware, software, performance evaluation and computing alternatives. It will be effective only, if all the processors are utilized at a time. It is very essential to utilize all the processors, without leaving any processor idle. To assign task evenly to all the processors it is necessary to schedule dynamically. When the processing is speed high, the multiprocessor system can be used as an effective real time system for dynamic scheduling.

DESCRIPTION OF LOAD BALANCING PROBLEM


Why the Load Balancing Problem Occur In multiprocessor systems, some of the nodes may be heavily loaded while others are lightly loaded. This suggests that it is possible to improve the overall performance of a multiprocessor system by transferring jobs from the heavily loaded nodes to the lightly loaded nodes. This type of processing power sharing is called load balancing, which can be classified into two categories: static and dynamic policies. A static policy uses only the information about the average behavior of the system to make job transfer decisions. A policy takes into account the current system state and react accordingly is called dynamic or adaptive policy. The multiprocessor system is a new form of parallel processing system. The paper targets at achieving reasonable task allocation in the system, making it operate at higher performance levels. Basic Concept of Load Balancing Dynamic load balancing algorithms can be classified into three categories: Sender Initiated (SI), Receiver Initiated (RI), and Periodically Exchanged (PE). In the SI algorithms, a heavily loaded node initiates the load balancing by requesting the load information of other nodes and sending out its jobs to the lightly loaded nodes. In the RI algorithms, a lightly loaded node initiates The load balancing by sending job request messages to other nodes and waiting for remote jobs. In periodical exchange sender and receiver both initiating load balancing in a fix time interval so that load of the over all system will be balanced.

ALGORITHM RESEARCH
Algorithm Rules Design objectives of the algorithm: Able to dynamically regulate task allocation to each processor according to changes in the system load, optimize the utilization of processor resources Minimize the effect on the working performance of the processor. The node processor in the algorithm is defined into the four states as follows:

Analysis of a Dynamic Load Balancing in Multiprocessor System

145

Light load node

Figure 1 Heavy load Light load Busy No load We provide the unit to measure the workload of the task and the processing capacity of the processor, and the rules are defined as follows: Rule I: Suppose A1, A2, B1 and B2 represent the processor node set in heavy load, busy, light load and no load states respectively, load balancing is carried out in following steps: Equilibrium operation is conducted between the heavy loaded node and light loaded node Equilibrium operation is conducted between the busy node and the no load node when there is no heavy load Node. Repeat steps 1 and 2 until no migratable task can be selected or the loads on the processor Nodes are relatively balanced. Rule II: The execution time of the parallel program is always restricted by the task at the slowest execution speed L denotes the load. So when load L moves from A1 to B1, the benefit function is

M=

Where K1 is calculation speed of heavy and light load and C12 is the communication time between two tasks. The method adopted in this paper is to reallocate the load of the heaviest load task (a1) and the lightest load task (b2), letting t1=t3 (t=1/k), making the tasks end simultaneously as possible after load balancing. The formula is

146

Mohammad Haroon & Mohammad Husain

L= Where L represents the value of load moved. We can calculate 1 from 3.

Represents the granularity of load balancing.

LOAD EVALUATION
Its common to evaluation node load by the array length of CPU. And this load evaluation mode is concise and rapid .In order to evaluation load state of each node; we let character C to represent process capability of each node in homogeneous multiprocessor system. Namely, its maximum process number that can be processed by CPU in per unit time. Character A represents load threshold value (A=C*10%).Character C represents process number of the current CPU array. Then we can get the node load state S based on the following function:

F(Q)=

(4)

Among them, H--node load is too heavy, some process should be move out. N--node load is proper, dont need to move process in or out. L--node load is lightsome process should be move in.

TASK SCHEDULING AND COMPUTING


In the task parallel programming model, the programmer is responsible for expressing the available parallelism within an application by specifying tasks that may be executed in parallel. A task is defined as an independent unit of work, typically formulated at the function level. Data dependencies between tasks may further restrict the order in which tasks can be executed. The runtime system then takes care of managing, scheduling, and balancing the tasks among a number of processors or cores. Using these abstractions, programmers can focus on the task structure of their applications, instead of having to deal with threads and locks. Parallel processing is information processing that emphasizes the concurrent manipulation of data elements belonging to one or more processes solving a single problem. A parallel computer is a multiple processor computer capable of parallel processing. Parallel Processing is a combined field of studies which requires a broad knowledge of an experience with all aspects of algorithms, languages, hardware, software, performance evaluation and computing alternatives. It will be effective only, if all the processors are utilized at a time. It is very essential to utilize all the processors, without leaving any processor idle. To assign task evenly to all the processors it is necessary to schedule dynamically. When the processing is speed high, the multiprocessor system can be used as an effective real time system for dynamic scheduling.

TASK FLOW
In the model shown in Fig.2, each node has a task input queue Q, and some task waiting queues QI-Qn' The tasks first enter the queue Ql waiting for sort operation after they enter the processing node. The task allocator sends the sorted tasks to the corresponding queues QI-Qn waiting for execution. The equalizer is responsible for monitoring node resource use, communications between nodes and task transfer.

Analysis of a Dynamic Load Balancing in Multiprocessor System

147

Figure 2: Scheduling TASK PARALLELISM


Tasks are a flexible way to express parallelism in a wide range of applications. Typically, tasks are defined at the function level for straightforward execution, but in principle, tasks may comprise any instructions that can be executed independently of other instructions. Depending on the granularity, tasks allow for additional parallelism in the form of instruction, data, and memory parallelism. To achieve good load balance, applications should be decomposed into many more tasks than there are threads available for execution

CONCLUSIONS
We propose a new dynamic load balancing algorithm applied in the multiprocessor system. Experimental simulation has shown that the algorithm can solve very well the load balancing problems in a multiprocessor system and significantly improve the system performance and task processing. The proposed algorithm is characterized by less load balancing frequency and less overhead. It can be seen from the results of the experiment that use of the algorithm proposed in the paper can get good performance.

REFERENCES
1. Wentao Wang, Xiaozhong Geng, Qing Wang Design of a Dynamic Load Balancing Model for Multiprocessor Systems IEEE 2011, 641-643. 2. Xin Liang Tang , Peng Liu, Zhen Zhou Wang, Bin Liu A load balancing algorithm for homogeneous multiprocessors system IEEE 2010. 1186-1190. 3. Ralf Hoffmann, Andreas Prell, and Thomas Rauber processors IEEE 2010, 205-212. Dynamic Task Sheduling and Load Balancing on cell

148

Mohammad Haroon & Mohammad Husain

4. 5.

Dynamic Load Balancing Scheduling Model Based on Multi-core Processor, IEEE DOI,2010,398-403. A new method for scheduling load balancing in multi-processor systems based on PSO, IEEE Computer,2011, 7176 .

6.

casanova, Arnaud legrand Legrand, parallel Algorithms ,CRC Press

You might also like