Resolving Load Balancing Issue of Grid Computing through Dynamic Approach

Similar documents
Effective Load Balancing in Grid Environment

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT

Introduction to Grid Computing

GRID SIMULATION FOR DYNAMIC LOAD BALANCING

Two-Level Dynamic Load Balancing Algorithm Using Load Thresholds and Pairwise Immigration

CHAPTER 7 CONCLUSION AND FUTURE SCOPE

Assignment 5. Georgia Koloniari

Enhanced Round Robin Technique with Variant Time Quantum for Task Scheduling In Grid Computing

II. NEEDLEMAN AND WUNSCH'S ALGORITHM FOR GLOBAL SEQUENCE ALIGNMENT

Modified Hierarchical Load Balancing Algorithm for Scheduling in Grid Computing

A Fault Tolerant Scheduler with Dynamic Replication in Desktop Grid Environment

Grid Computing Systems: A Survey and Taxonomy

Performance Analysis of Adaptive Dynamic Load Balancing in Grid Environment using GRIDSIM

A Survey on Grid Scheduling Systems

Chapter 4:- Introduction to Grid and its Evolution. Prepared By:- NITIN PANDYA Assistant Professor SVBIT.

Dynamic Load Balancing By Scheduling In Computational Grid System

Lecture 9: MIMD Architectures

Global Load Balancing and Fault Tolerant Scheduling in Computational Grid

Efficient Technique for Allocation of Processing Elements to Virtual Machines in Cloud Environment

Computational Grid System Load Balancing Using an Efficient Scheduling Technique

CSE 5306 Distributed Systems. Course Introduction

Chapter 3. Design of Grid Scheduler. 3.1 Introduction

Reconfigurable Architectures in Collaborative Grid Computing: An Approach

A QoS Load Balancing Scheduling Algorithm in Cloud Environment

QoS Guided Min-Mean Task Scheduling Algorithm for Scheduling Dr.G.K.Kamalam

A Comparative Study of Load Balancing Algorithms: A Review Paper

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi

A Resource Discovery Algorithm in Mobile Grid Computing Based on IP-Paging Scheme

Distributed Systems. Thoai Nam Faculty of Computer Science and Engineering HCMC University of Technology

Scheduling Large Parametric Modelling Experiments on a Distributed Meta-computer

Load Balancing Algorithm over a Distributed Cloud Network

Functional Requirements for Grid Oriented Optical Networks

Grid Computing. Grid Computing 2

A Heuristic Based Load Balancing Algorithm

Dynamic Load balancing for I/O- and Memory- Intensive workload in Clusters using a Feedback Control Mechanism

Co-operative Scheduled Energy Aware Load-Balancing technique for an Efficient Computational Cloud

Knowledge Discovery Services and Tools on Grids

Visual Modeler for Grid Modeling and Simulation (GridSim) Toolkit

Various Strategies of Load Balancing Techniques and Challenges in Distributed Systems

A COMPARATIVE STUDY IN DYNAMIC JOB SCHEDULING APPROACHES IN GRID COMPUTING ENVIRONMENT

GRID-INFRASTRUCTURE SIMULATION 1

Framework for Preventing Deadlock : A Resource Co-allocation Issue in Grid Environment

Load Balancing Algorithms in Cloud Computing: A Comparative Study

Lecture 1: January 22

Lecture 9: MIMD Architectures

A Container On a Virtual Machine On an HPC? Presentation to HPC Advisory Council. Perth, July 31-Aug 01, 2017

Lecture 1: January 23

OPTIMIZE PERFORMANCE LOAD BALANCING TECHNIQUES: USING BINARY VOTE ASSIGNMENT GRID QUORUM (BVAGQ): A SYSTEMATIC REVIEW

Task Load Balancing Strategy for Grid Computing

Designing Issues For Distributed Computing System: An Empirical View

A Study of High Performance Computing and the Cray SV1 Supercomputer. Michael Sullivan TJHSST Class of 2004

A new efficient Virtual Machine load balancing Algorithm for a cloud computing environment

SDS: A Scalable Data Services System in Data Grid

Dynamic load-balancing algorithm for a decentralized gpu-cpu cluster

Managing CAE Simulation Workloads in Cluster Environments

Double Threshold Based Load Balancing Approach by Using VM Migration for the Cloud Computing Environment

A Resource Discovery Algorithm in Mobile Grid Computing based on IP-paging Scheme

Resource and Service Trading in a Heterogeneous Large Distributed

ARC-XWCH bridge: Running ARC jobs on the XtremWeb-CH volunteer

Network-Aware Resource Allocation in Distributed Clouds

Boundary control : Access Controls: An access control mechanism processes users request for resources in three steps: Identification:

Grid Architectural Models

Dynamic Load Sharing Policy in Distributed VoD using agents

Advanced School in High Performance and GRID Computing November Introduction to Grid computing.

The Study of Genetic Algorithm-based Task Scheduling for Cloud Computing

Distributed Scheduling for the Sombrero Single Address Space Distributed Operating System

HETEROGENEOUS COMPUTING

CloudSim: A Toolkit for Modeling and Simulation of Cloud Computing Environments

Evaluation of Performance of Cooperative Web Caching with Web Polygraph

Dynamic Load Balancing on Deadline Task in Gridsim on Computational Grid

Heuristic Clustering Algorithms in Ad hoc Networks

Distributed Computing: PVM, MPI, and MOSIX. Multiple Processor Systems. Dr. Shaaban. Judd E.N. Jenne

Grid Computing. MCSN - N. Tonellotto - Distributed Enabling Platforms

Resource CoAllocation for Scheduling Tasks with Dependencies, in Grid

Adaptive Memory Allocations in Clusters to Handle Unexpectedly Large Data-Intensive Jobs

MATE-EC2: A Middleware for Processing Data with Amazon Web Services

A Load Balancing Approach to Minimize the Resource Wastage in Cloud Computing

It also performs many parallelization operations like, data loading and query processing.

C-Meter: A Framework for Performance Analysis of Computing Clouds

An Experimental Cloud Resource Broker System for Virtual Application Control with VM Allocation Scheme

A Taxonomy and Survey of Grid Resource Management Systems

A Comparative Study of Various Computing Environments-Cluster, Grid and Cloud

High Performance Computing Course Notes Grid Computing I

PROXIMITY AWARE LOAD BALANCING FOR HETEROGENEOUS NODES Mrs. Yogita A. Dalvi Dr. R. Shankar Mr. Atesh Kumar

DISTRIBUTED COMPUTING

Distributed Operating Systems Fall Prashant Shenoy UMass Computer Science. CS677: Distributed OS

Description of a Lightweight Bartering Grid Architecture

IMPLEMENTATION OF INFORMATION RETRIEVAL (IR) ALGORITHM FOR CLOUD COMPUTING: A COMPARATIVE STUDY BETWEEN WITH AND WITHOUT MAPREDUCE MECHANISM *

An Introduction to the Grid

A Simulation Model for Large Scale Distributed Systems

Scaling-Out with Oracle Grid Computing on Dell Hardware

Outline. Definition of a Distributed System Goals of a Distributed System Types of Distributed Systems

Prof. Darshika Lothe Assistant Professor, Imperial College of Engineering & Research, Pune, Maharashtra

Distributed Systems LEEC (2006/07 2º Sem.)

A Data-Aware Resource Broker for Data Grids

A Process Scheduling Algorithm Based on Threshold for the Cloud Computing Environment

Peer-to-Peer Systems. Chapter General Characteristics

1 Gokuldev S, 2 Valarmathi M 1 Associate Professor, 2 PG Scholar

Load Balancing in Cloud Computing System

Grids of Agents for Computer and Telecommunication Network Management

Transcription:

Resolving Load Balancing Issue of Grid Computing through Dynamic Er. Roma Soni M-Tech Student Dr. Kamal Sharma Prof. & Director of E.C.E. Deptt. EMGOI, Badhauli. Er. Sharad Chauhan Asst. Prof. in C.S.E. Deptt. EMGOI, Badhauli Abstract--Load balancing has been a key concern for traditional multiprocessor systems. The emergence of computational grids extends this challenge to deal with more serious problems, such as scalability, heterogeneity of computing resources and considerable transfer delay. Due to the dynamic property of grid environment, fixed-parameter prediction model cannot exert its forecast capability completely. To improve the global throughput of computational grid, effective and efficient load balancing algorithms are fundamentally important. A computational grid differs from traditional high-performance computing system in the heterogeneity of computing nodes, as well as the communication links that connect the different nodes together. A dynamic and decentralized load balancing algorithm for computationally intensive jobs on a heterogeneous distributed computing platform is required. The time spent by a job in the system is considered as the main issue that needs to be minimized. A resource queue length based solution to the grid load balancing problem has been proposed in this dissertation. An algorithm that is dynamic, decentralized and distributed for load balancing among the aggregated processing elements in the grid has proposed.the proposed algorithm balances the load in the grid based on the queue length of each processing element and transfer the task to the processing element having minimum queue length. The proposed Algorithm is implemented with the help of GridSim toolkit. The Simulations are performed for number of users and processing elements. ***** 1.INTRODUCTION This is an introduction to grid computing in the terms of its characteristics, problem areas, Grid architecture, load balancing, advantages, disadvantages, objective of dissertation and organization of dissertation. 1.1 GRID COMPUTING The term grid is increasingly appearing in computer literature, generally referring to some form of system framework into which hardware or software components can be plugged, and which permits easy configuration and creation of new functionality from existing components. Grids enable the sharing, selection, and aggregation of a wide variety of resources including supercomputers, storage systems, data sources, and specialized devices that are geographically distributed and owned by different organizations for solving large-scale computational and data intensive problems in science, engineering, and commerce. The term grid is chosen as an analogy to the electric power grid that provides consistent, pervasive, dependable, transparent access to electricity, irrespective of its source. Such an approach to network computing is known by several names: meta computing, scalable computing, global computing, Internet computing, and more recently Peer-to- Peer computing. The concept of grid computing [1] started as a project to link geographically dispersed supercomputers, but now it has grown far beyond its original intent. The grid infrastructure [2] can benefit many applications, including collaborative engineering, data exploration, high throughput computing, distributed supercomputing, and service-oriented computing. 1.2 GRID ARCHITECTURE Grids are usually heterogeneous networks.grid nodes, generally individual computers that consist of different hardware and use a variety of operating systems and networking to connecting them vary in bandwidth. It is a type of parallel and distributed system that enables the sharing, selection and aggregation of resources distributed across multiple domains based on their resources availability, capability, performance, cost and users requirement. The components that are necessary to form a Grid (shown in Figure 1.3) are as follows:- 2572

Grid Fabric Core Grid Middleware User-Level Grid Middleware Grid Application and portals It is a system formed to share the resources among the various local domains and which owns the resources. These resources are used among the various projects. This forms the system as the aggregation of resources for a particular task i.e. virtual organization. 2. LOAD BALANCING PHENOMENA This Chapter gives an overview of Load balancing, motivation for load balancing, its schemes, policies and challenges of Grid Computing. 2.1 INTRODUCTION Distributed network computing environments have become a cost effective and popular choice to achieve high performance and to solve large scale computation problems. Unlike past supercomputers a cluster or grid or peer-to-peer system can be used as multipurpose computing platform to run diverse high performance parallel applications. Cluster computing [17] environment consist of Personal Computers that are interconnected using high speed networks and are located at same location where as grid computing involves coupled and coordinated use of geographically distributed resources for purposes such as large scale computation and distributed data analysis [18] [19]. A peer-to-peer system [20] is composed of participants that make a portion of their resources (such as processing power, disk storage, and network bandwidth) available directly to their peers without intermediary network hosts or servers. Peers are both suppliers and consumers of resources, in contrast to the traditional client-server model where only servers supply, and clients consume. A collection of autonomous intelligent devices connected through a communication link is called Distributed System [21]. A major advantage of using distributed system is resource sharing. A major shareable resource is Central Processing Unit cycles. A distributed scheduler is a resource Figure 1.2. A layered Grid architecture and components management component of a distributed operating system that focuses on redistributing the load of the system among the individual devices, such that the overall performance of the system is optimized. Load Balancing in a distributed system is a process of sharing computational resources by transparently distributing system workload. A distributed computing system consists of software programs and data resources dispersed across independent devices. A workstation user may not use the machine all the time, but may require more than it can provide while actively working.some devices may be heavily loaded, while other remains idle. Performance enhancement is one of the most important issues in distributed system. The performance of the system can often be improved to an acceptable level simply by. 3. GRIDSIM: GRID MODELING AND SIMULATION TOOLKIT The GridSim toolkit provides a comprehensive facility for simulation different classes of heterogeneous resources, users, applications, and resource brokers. In Grid -like environment, resource brokers perform resource selection and aggregation depending on users requirements and hence they are user-centric in nature. Whereas, in single administrative domain PDC systems such as clusters, resource schedulers manage whole resource and hence they are generally system centric in nature as they aim to optimize system throughput for enhancing utilization of the entire system[38].the GridSim toolkit can be used for simulating application schedulers for different parallel and distributed computing systems such as clusters and grids. 3.1 FEATURES OF GRIDSIM TOOLKIT Salient features of the GridSim toolkit include the following: It allows modeling of heterogeneous types of resources. 2573

Resources can be modeled operating under space-or types of job created, e.g. job execution time, number of time -shared mode. parametric replications, etc.; Resource capability can be defined (in the form of scheduling optimization strategy, e.g. minimization of MIPS as per SPEC benchmark). cost, time, or both; Resources can be located in any time zone. activity rate, e.g. how often it creates new job; Weekends and holidays can be mapped depending on time zone; and resource s local time to model non- Grid (local) absolute deadline and budget workload. 4.1.2 Processing Element Resources can be booked for advance reservation. Applications with different parallel application models Each instance of the Processing element entity represents a can be simulated. Grid processing element. Each processing element may Application tasks can be heterogeneous and they can differ from the rest of the processing element with respect to be CPU and/or I/O intensive. the following characteristics: It does not limit number of application tasks that can be submitted to a resource. Multiple user entities can submit tasks for execution simultaneously in the same resource, which may be time -shared or space-shared. This feature helps in building schedulers that can use different market-driven economic models for selecting services competitively. Network speed between resources can be specified. It supports simulation of both static and dynamic schedulers. Statistics of all or selected operations can be recorded and they can be analyzed using GridSim statistics analysis methods. 4. PROPOSED METHODOLGY This chapter gives an introduction to generic model for Computational grid, proposed algorithm and working of proposed algorithm. Generic Model for Computational Grid Figure 4.1: Generic Model for Computational grid The Generic model for computational grid consists of Grid Information Server (GIS), users and processing elements. 4.1.1User Each instance of the User entity represents a Grid user. Each user may differ from the rest of users with respect to the following characteristics: number of processors; cost of processing; speed of processing; internal process scheduling policy, e.g. time-shared or space-shared; local load factor; and time zone. The processing element speed and the task execution time can be defined in terms of the ratings of standard benchmarks such as MIPS and SPEC. They can also be defined with respect to the standard machine. Upon obtaining the processing element contact details from the Grid information service, balancers can query processing elements directly for their static and dynamic properties. 4.1.3 Grid Information Server Providing processing element registration services and keeping track of a list of processing elements available in the Grid. The brokers can query this for processing element contact, configuration, and status information. 4.2 PROPOSED ALGORITHM A Dynamic load balancing algorithm has been proposed that handles heterogeneous grid sites. Here, the heterogeneity only refers to the processing power of sites. The proposed algorithm balances the load in the grid based on the queue length of each processing element and transfer the job to the processing element having minimum queue length. The proposed algorithm is implemented using GridSim Toolkit. The proposed algorithm for Dynamic load balancing in computational grid is as follows: 1. Begin the GridSim Toolkit Package. 2. Initialize the number of users and processing elements. 3. Generate users from 1 to 75. 4. Generate processing elements from 1 to 20. 5. Create tasks of each users. 2574

6. Initialize the Queuelength of each processing 19. Repeat steps 10 to 16 until Nextuser<=Number of element=0. users. 7. Now, Processing elements registers their 20. Print the Execution time of all tasks. information to Grid Information Server(GIS). 8. GIS checks the availability of processing elements 5. SIMULATION & RESULTS and users send requests to processing elements to send its characteristics. This Chapter covers the different parameters considered for 9. Afterwards, users are waiting to receive processing simulations and results analyzed through simulations for elements characteristics. Dynamic. 10. After receiving the processing element characteristics, the users find the 5.1 SIMULATION PARAMETERS processing element with minimum Queuelength. The performance of proposed algorithm under different a) Initially assign the Queuelength of first system parameters using GridSim toolkit are studied. processing element to the temporary Following parameters are used during simulation of variable (temp). Dynamic load balancing algorithm: b) for (i=2;i<total processing elements;i++) c) Check IF temp > Queuelength of next Table 5.1: Simulation parameters element THEN temp contains Queuelength of next Simulation Runs 4 processing element ELSE there is no No. of Processing 5 20 change in temp value. elements 11. Allocate the task of user to Processing element No. of Users 10 75 (PE) with minimum Queuelength. 12. Queuelength of Processing element(pe) will become No. of tasks 10 75 Queuelength PE=Queuelength PE +1. Gridlet Size (In MI) 10,000,000-13. Print the Submission time of User s task to the 750,000,000 allocated processing element(pe). Processing Power of 100 400 Submission time_task=gridsim.clock( ). processing elements ( In 14. Nextuser=Nextuser+1. MIPS) 15. Print the Execution time of user s task. Execution time_task=gridsim.clock( )- The Execution time of tasks corresponding to different users Submission time_task. using Dynamic and Static is shown in 16. After Completion of Execution of above task. Now, Figure 5.1 and Figure 5.2. The graph shows the Execution Check for the arrival of any new task T from time of tasks under Static approach is more than that of processing element PE. execution time of tasks with Dynamic. 17. IF no task arrives to the processing element PE THEN go to step 19. 5.2 SIMULATION RESULTS 18. Queuelength of processing element PE will become Queuelength PE =Queuelength PE -1. The Execution time of Dynamic are analyzed for various users and processing elements for number of Simulations. Table 5.2: Execution times of users when number of processing elements = 3 Processing Elements =3 Number of Users 10 25 50 75 Execution time of Dynamic Execution time of Static 2376104 11318257 35760370 82361354 2980199 15610357 46021349 89670786 2575

100000000 90000000 80000000 70000000 60000000 50000000 40000000 30000000 20000000 10000000 0 10 25 50 75 Dynamic Static Figure 5.1: Execution times of users when number of processing elements = 3 Table 5.3: Execution times of users when number of processing elements = 5 Processing elements=5 Number of users 10 25 50 75 Execution time of Dynamic Execution time of Static 1753265 7312567 21678340 53612308 2374163 8289650 27469234 59234871 70000000 60000000 50000000 40000000 30000000 20000000 Dynamic Static 10000000 0 10 25 50 75 Figure 5.2: Execution time of users when number of processing elements = 5 2576

The execution time of tasks corresponding to different is still less as compared to Static even when processing elements using Dynamic and Static number of processing elements are increased due to is shown in Figure 5.3 and Figure 5.4. The graph selection of only those processing elements which has shows that execution time of tasks under Dynamic minimum load. Table 5.4: Execution times of processing elements when number of users = 25 Number of Users = 25 Number of PE s (Processing elements) Execution time of Dynamic Execution time of Static 5 10 15 20 7376540 4523189 3741653 3467251 8256471 5824198 4672587 4359823 9000000 8000000 7000000 6000000 5000000 4000000 3000000 Dynamic Static 2000000 1000000 0 5 10 15 20 Figure 5.3: Execution times of processing elements when number of users= 25 Table 5.5: Execution times of processing elements when number of users = 50 Number of Users = 50 Number of PE S (Processing elements) Execution time of Dynamic Execution time of Static 5 10 15 20 22674905 13570349 10116890 83564216 26537828 17823487 16583891 89346271 2577

100000000 90000000 80000000 70000000 60000000 50000000 40000000 30000000 20000000 10000000 0 5 10 15 20 Dynamic Static Figure 5.4: Execution times of processing elements when number of users= 50 The results show that Dynamic is better than the Static in all scenarios. 6. CONCLUSION AND FUTURE SCOPE 6.1 CONCLUSION In Grid Environment, poor performance results due to uneven distribution of load among nodes in the system. Therefore, to fully exploit the computing power of such systems, it is crucial to employ a judicious load balancing strategy for proper allocation and sequencing of tasks on the computing nodes. In this dissertation, effect of load balancing on tasks in terms of execution time is analyzed. Results show that the execution time of Dynamic is less as every time the processing element with minimum queue length is selected for execution as compared to the execution time with Static. The algorithm is tested under various load conditions in terms of task length varying from 10,000,000-750,000,000 (MI). The performance of Dynamic is also better when the system is lightly loaded in terms of increasing the processing elements and keeping the number of users as fixed. 6.2 FUTURE SCOPE The Simulations are performed for number of users and processing elements and results shows that our Dynamic Algorithm works better than static approach. This dissertation work can later be extended for different simulation parameters and more better load balancing results can be achieved. 7. REFERENCES [1] Yulai Yuan, Yongwei Wu, Guangwen Yang, and Weimin Zheng, Adaptive Hybrid Model for Long Term Load Prediction in Computational Grid, 8th IEEE International Symposium on Cluster Computing and the Grid, pp.340-347, August 2008. [2] Youchan Zhu, Lei An, Shuangxi Liu, A Resource Discovery Method of Grid Based on Resource Classification, Proceedings of First International Conference on Intelligent Networks and Intelligent Systems, pp. 716-719, August 2008. [3] C. Xu and F. Lau, Load Balancing in Parallel Computers: Theory and Practice, Kluwer, Boston, MA, 1997. [4] Yajun Li, Yuhang Yang, and Rongbo Zhu, A Hybrid Load Balancing Strategy of Sequential Tasks for Computational Grids, International Conference on Networking and Digital Society (ICNDS), 2009. [5] M. Baker, R. Buyya, and D. Laforenza, Grids and grid technologies for wide area distributed computing, International Journal of Software: Practice and Experience (SPE), vol. 32(15), 2002. [6] B. Yagoubi, and M. Medebber, A load balancing model for grid environment, Proceeding of 22 nd International Symposium on Computer and Information Sciences (ISCISC 2007), pp. 1-7, 7 November 2007. [7] C. Kim and H. Kameda, An algorithm for optimal static load balancing in distributed computer systems, IEEE Transaction on Computers, vol. 41(3), pp. 381-384, March 1992. [8] K. Lu, R. Subrata, and A. Zomaya, An Efficient Load Balancing Algorithm for Heterogeneous Grid Systems Considering Desirability of Grid Sites, Journal of Computer and System Sciences, vol. 73(8), pp. 1191-1206, December 2006. 2578

[9] K. Lu, and A. Zomaya, A Hybrid Policy for Job Scheduling and Load Balancing in Heterogeneous Computational Grids, Proceeding of 6 th International Symposium on Parallel and Distributed Computing, pp. 19-26, 5 July 2007. [10] M. Dobber, R. Mei, and G. Koole, Dynamic Load Balancing and Job Replication in a Global-Scale Grid Environment: A Comparison, IEEE Transaction on Parallel and Distributed Systems, vol. 20(2), pp. 207-218, February 2009. [11] J. Cao, D.P. Spooner, S. A. Jarvi, and G.R. Nudd, Grid Load Balancing Using Intelligent Agents, Future Generation Computer Systems, vol. 21(1), pp. 135-149, January 2005. [12] Bin Lu, and Hongbin Zhang, Grid Load Balancing Scheduling Algorithm Based on Statistics Thinking, IEEE 9th International Conference, pp. 288-292, 2008. 2579