Effective Load Balance Scheduling Schemes for Heterogeneous Distributed System

ABSTRACT


INTRODUCTION
Distributed System (DS) is a form in which Hardware and Software components situated at computer network communication manage their actions only by passing message. DS is fast emerging field, it keeps evolving and changing to meet user demands. The goals of DS are making resources accessible, distribution transparency, open, scalable, communication and coordination etc. A distributed system is described as collection of either homogeneous system or heterogeneous system [1][2]. Homogeneous Distributed System (HoDS) is that distributed system where collections of identical processors are linked to a high speed network for completing some tasks. Identical processors in the sense that all processors possessed same computational speed, complexity, cache size, equivalent frequencies and functions etc. The benefit of HoDS is that the communication and computation cost are constant in any type of task scheduling algorithm. Heterogeneous distributed system (HeDS) is that DS when all processors work different computational speed, complexity, cache size, frequencies and function etc., are connected with different speed links in order to completing those tasks or solving problems which needs different non identical processors. So, for implementing HeDS is to very difficult as compared to HoDS [3][4]. Distributed System is important to distributing the work load on the processors [5]. The distributed of loads to the processing element is basically known as load balancing problem. However, Load balancing algorithm is plays a important role in homogeneous and heterogeneous distributed system in order to distribution of the tasks with better performance in terms of minimizing LIF, execution time, migration time, maximizing speedup and many more. Today, tasks scheduling is the major issue to be considered for the researchers and various tasks scheduling method are needed in heterogeneous distributed system. This tasks scheduling can be done both the DS that is HoDS and HeDS. It can be categorized into dependent (i.e., Directed Acyclic Graph) and independent task scheduling. In independent tasks scheduling, scheduling of tasks can be run without any dependencies of all other tasks, here tasks can be processed whether other tasks finished or not [6][7][8]. There are various independent task scheduling algorithms such as Min-Min [9], Max-Min [9][10], Opportunistic Load Balancing [10][11], Dynamic Load Balancing Strategy (DLBS) [2], a heuristic based load balanced scheduling model [12] algorithm etc. In this paper, our contributions are enhancement of the previous work [2] and proposing load balancing scheme for heterogeneous distributed system. The proposed algorithm is using optimization techniques such as Max-Max and Min-Max strategy on the FCC interconnection network. In section 2, it describes the problem formulation and presents the proposed load balancing algorithm named as Independent Task Scheduling with Load Balancing using two techniques Max-Max and Min-Max for heterogeneous distributed system with illustration. In section 3 presents the results and analysis for this work. Finally presents the concluded paper with future work in section 4.

RESEARCH METHOD
The proposed work considers load balancing a batch of independent tasks where each task has dissimilar expected time to compute value in order to minimize the LIF on the FCC network. The FCC is a best multiprocessor interconnection network (MIN) as compared with other MINs in terms of diameter [13]. The balancing of load is used to load balancer scheduler for the proposed work as shown in Figure1. Load Balancer places a vital role in fulfilling the request of the clients through servers (i.e., FCC Interconnection Network) and for this work load balancer routes requests to those servers, which has the capability of doing its job in an effective way that is maximization of speed, maximum utilization of capacity and can fulfill the client's requests. For the proposed load balancing algorithm are using FCC network as server which have n number of processor. In this work load balancer checks, which processors are overloaded and underloaded. After determining overloaded and underloaded processors load balancer sends tasks from overloaded to underloaded processor in order to moderating the processors. Thus, all the processors in FCC interconnection network are approximately moderates by migrating the load from overloaded to underloaded processor if the connection exist between the processors. The detail of the scheduler is discussed in the next section. The load balancing algorithms is proposed to schedules a batch of independent tasks for HeDS whereas achieving minimum LIF, makespan, maximum speedup and resource utilization. and is set of tasks where as P m is used for m th processor. ETC ij and LEP m are the Expected Time to Compute of i th task on j th processor and Load on Each m th processor respectively. OL, UL, MOD, MOL and MUL are overloaded, underloaded, moderate, maximum overloaded and maximum underloaded processor respectively whereas CC, IL, TL and LIF check connectivity, ideal, total load and load imbalance factor respectively. SMT, EMT and MT, are used for start migration, end migration and migration time. MS and RU are makespan and average resource utilization respectively. The batch of independent task is randomly allocated on the processors. After allocation of task, the scheduler computes the load on each P m by summation of all expected time to compute of i th tasks on j th processor. The load on each P m is calculated as Ideal load shows the average load should on each processor as possible which is calculated by equation (2 The overloaded, underloaded and moderate processors are compared with ideal load. The overloaded underloaded and moderate processors can be calculated as The load distribution of tasks is firstly from maximum OL (MOL) to maximum UL (MUL) processor. The MOL and MUL processor is computed as The FCC interconnection network is a cube shape network. The degree of each processor is four. For checking connection among the processors are used to adjacency matrix (Adj). Since, its network cube shape so the number of rows (R) and columns (C) will be equal. To check connectivity between any two processors is defined as The LIF is important parameter for balancing of load. The LIF is calculated as The migration time is the time to move of the tasks from one processor to another processor. Migration time is always less for give better performance of the system. The migration time can be estimated as Makespan is the total completion time of latest task among all the processors in the system. The makespan can be calculated as Speedup is defined as the ratio of the time taken by job in serial manner to the time taken by job in parallel. The speedup of the distributed system is calculated as The allocation of resources for completion/tasks should be effective and optimized. The average resource utilization of the heterogeneous distributed system for the batch of independent tasks for a given allocation can be computed as In this section, we present the a load balancing schemes ITSLB (Max-Max) and ITSLB (Min-Max) with objective of minimizing the LIF and computing the makespan, speedup and resource utilization for performance evaluation. The objective of this algorithms is to improve our previous work i.e. DLBS algorithm [2]. The DLBS algorithm worked for homogeneous system it means all tasks have identical execution time. So, it is easy to reduce the load imbalance factor. But, the proposed work is designed for heterogeneous distributed system on the same multiprocessor interconnection network. Our approach is to reduce the LIF despite that each task has dissimilar execution time. To perform for this work the LIF can be rewritten of equation (1) as Since, '1' is a constant factor. So, LIF is dependent on MOL and IL. But IL is also constant variable throughout all iteration. Therefore, for minimum LIF must dependent on MOL.
= Due to this reason, firstly, load transfer should be from maximum overloaded processor because lesser MOL will give lesser LIF. Therefore, it is new optimization problem is MOL.
∝ Thus, the proposed ITSLB algorithm is a new strategy for minimization of LIF.

ITSLB (Max-Max)
Working of ITSLB (Max-Max) algorithm initiates with generation of random tasks, which allocates the processors in randomly fashion with dissimilar ETC of tasks. The scheduler sorts the ETC of all tasks in ascending order on each processor and computes LEP. Computes TL and IL of the system and then indentifies the OL, UL and MOD by comparison with the IL. After calculating all these OL and UL, scheduler determines MOL and MUL then checks for connectivity between the MOL and MUL, if the connection found between the MOL and MUL, migration time starts. The load is transferred through load balancer (i.e., already shown in Figure 1) from the MOL which will have maximum ETC value of the task and goes to MUL then mapped between these processors. Now, next load transfer take place between MOL and MUL, if the MUL has sufficient capacity for receiving the next highest ETC value, otherwise it will transfer to another MUL and continues till the capacity exhausted. After accomplishment of first MOL we take second MOL and this process continues like former process and so on. When all the load transfer finished then migration time stops. If the scheduler does not found connection between MOL and MUL then will go for next MUL and then checks connectivity between these two processors, and connectivity existing, migration will takes place from MOL to MUL, and this step will repeat again and again until and unless all the available processors become approximately moderated and migration time ends. The pseudo code of ITSLB algorithm is given by following steps: As this Table 1 is generated by ITSLB algorithm for 92 numbers of tasks on FCC 3 interconnection network. The FCC 3 interconnection network has 8 processors and 32 connections exist among these processors. By DLBS algorithm for this illustration LIF is 45.45%. ITSLB (Max-Max) algorithm is generated same number of random tasks and allocated same number of processors but each tasks having dissimilar ETC value and these ETC value are also generated randomly by the scheduler. For better view the illustration of ITSLB (Max-Max) algorithm as shown in Table 1.  (2) which is 4579.727 and 572.465. Scheduler also identifies that processor P1, P2, P4, P6 and P7 are overloaded by 13.197, 100.508, 526.361, 182.957 and 64.907 respectively and processors P0, P3 and P5 are underloaded by 357.278, 353.106 and 177.539 respectively. Then scheduler calculates MOL and MUL processors which are P4 and P0. After checking for connectivity between P4 and P0 processors scheduler found that there is no connection between the P4 and P0, then find next MUL i.e., is P3. In P4 and P3 processors exists connection and then load transfer begins. P4 and P3 are overloaded and underloaded by 526.361 and 353.106 respectively. Since P4 has next maximum load and P3 has minimum load to take, that's why migration between P4 and P3 will not takes place in this situation, so in this case P3 becomes partially moderated by 514.597. Therefore, scheduler determines next MUL processor that is P5, now scheduler checks connectivity between P4 and P5, if connectivity exists between these two processors P4 and P5 then migration will takes place from P4 to P5. Similarly, it's continue as per ITSLB (Max-Max) schemes. After that, ITSLB (Max-Max) algorithm calculates LIF is 24.20% as shown in Table 2.

Table1. Initial Random Generation Tasks Matrix by ITSLB
Though we have used ITSLB (Max-Max) algorithm for heterogeneous distributed system environment still we are achieving lesser LIF as 24.20% as comparison to DLBS algorithm.

ITSLB (Min-Max)
Working of ITSLB (Min-Max) strategy is same as of ITSLB (Max-Max) but the only difference is migration, which take place from MOL to MUL. The load is transferred (i.e., migration of the task) from the MOL which will have minimum to maximum ETC value of the task alternatively. From ITSLB (Min-Max) algorithm is also achieving lesser LIF as 24.84% as comparison to DLBS algorithm.

RESULTS AND ANALYSIS
To simulate and compute the performance of ITSLB (Max-Max) and ITSLB (Min-Max) is to design on software Code: Blocks in C language using Intel Core i5-6200, x64-based processor with 4GB RAM. The experimental results were concluded to monitor the allocation of the batch of independent tasks on the FCC interconnection network. The tasks are randomly generated between 0-100, 0-1000, 0-25000 etc., and each task's ETC values taken are also between 0.0-100.0 msec in the simulation. The batch of independent tasks is scheduled on the FCC networks as per the ITSLB algorithm which is discussed in section 2.1 and 2.2. The experimental results are to compare our previous work DLBS algorithm. The experimental evaluation is carried out to compare the performance of the algorithm on the performance metrics such as LIF, makespan, speedup and resource utilization as follows: a. Observing the LIF, Makespan, Speedup and Average Resource Utilization of the processors represent the FCC network while keeping the number of the processors equal but varying the number of independent tasks. b. Observing the LIF, Makespan, Speedup and Average Resource Utilization of the processors represent the FCC network while keeping the number of independent tasks equal but varying the number of the processors.

Observations
In Figures 2, 3 ITSLB (Max-Max) shows the best performance followed by ITSLB (Min-Max) and DLBS. This is because of the potentially of ITSLB (Max-Max) to simultaneously allocate each independent tasks of the batch on the best processors available resulting in the minimizing the LIF offered to the independent tasks. ITSLB (Min-Max) shows also better perform than DLBS. Makespan, Speedup and RU are also increasing when keeping the number of processors fixed while the number of tasks is increased for all load balancing strategy viz. ITSLB (Max-Max) and ITSLB (Min-Max). ITSLB (Max-Max) shows better Makespan, Speedup and RU as compare to ITSLB (Min-Max).

Observations
Furthermore, in Figure 6, 7, 8 and 9 show the case 2 which is representing the variation of LIF, Makespan, Speedup and Average Resource Utilization while keeping the number of independent tasks equal but varying the number of the processors are eight and sixteen. As we can see in Figure 6, ITSLB (Min-Max) also shows better LIF from DLBS. LIF goes on decreasing when the number of processors is increased whereas keeping the batch of tasks fixed for all the scheduling strategies viz. ITSLB (Max-Max), ITSLB (Min-Max) and DLBS as expected in such a case on FCC interconnection network as shown in Figure 6. Makespan, Speedup and RU are also decreasing when the increase the number of processors while keeping the number of tasks fixed for all load balancing strategy viz. ITSLB (Max-Max) and ITSLB (Min-Max) as predictable in such a case. ITSLB (Max-Max) shows better Makespan, Speedup and RU as compare to ITSLB (Min-Max).

CONCLUSION
Load Balancing (LB) is the phenomena of distributing the approximately equal amount of workload of the processors so that all processors keep busy all the time in order to prevent ideal time of processors. The aim of LB algorithm is to sustain the load to each processing element (PE) such that all the PEs becomes neither underloaded nor overloaded. Therefore, the proper design of a LB algorithm may notably improve the performance of the system. In this paper, a load balancing schemes ITSLB (Max-Max) and ITSLB (Min-Max) algorithms have been proposed to address LIF in the scheduling for heterogeneous distributed system and its application on FCC interconnection network. To the experimental results, ITSLB (Max-Max) algorithm is framed for better performance in terms of different parameters like LIF, makespan, speedup, resource utilization etc. With this ITSLB algorithm, we would be able to construct a fine speedup, reduced LIF and makespan, which consequently can save energy of the systems. IJECE ISSN: 2088-8708 