Game Theory Based Load Balanced Job Allocation in Distributed Systems



Similar documents
Dynamic Multi-User Load Balancing in Distributed Systems

A Game-Theoretic Model and Algorithm for Load Balancing in Distributed Systems

GAME THEORY BASED JOB ALLOCATION/LOAD BALANCING IN DISTRIBUTED SYSTEMS WITH APPLICATIONS TO GRID COMPUTING

Load Balancing in Distributed Systems: An Approach Using Cooperative Games

Noncooperative load balancing in distributed systems

LOAD BALANCING IN DISTRIBUTED SYSTEMS: A GAME THEORETIC APPROACH

IN CURRENT distributed systems such as computational

Algorithmic Mechanism Design for Load Balancing in Distributed Systems

A Load Balancing Mechanism with Verification

Classification of Load Balancing in a Distributed System

Pareto Set, Fairness, and Nash Equilibrium: A Case Study on Load Balancing

BRAESS-LIKE PARADOXES FOR NON-COOPERATIVE DYNAMIC LOAD BALANCING IN DISTRIBUTED COMPUTER SYSTEMS

A Game Theoretic Approach for Cloud Computing Infrastructure to Improve the Performance

Public Cloud Partition Balancing and the Game Theory

The Load Balancing Strategy to Improve the Efficiency in the Public Cloud Environment

Statistics Analysis for Cloud Partitioning using Load Balancing Model in Public Cloud

A Load Balancing Model Based on Cloud Partitioning for the Public Cloud

Effective Load Balancing Based on Cloud Partitioning for the Public Cloud

MANAGING OF IMMENSE CLOUD DATA BY LOAD BALANCING STRATEGY. Sara Anjum 1, B.Manasa 2

Cooperative Load Balancing for a Network of Heterogeneous Computers

Cloud Partitioning of Load Balancing Using Round Robin Model

Network Model. University of Tsukuba. of the system. Load balancing policies are often. used for balancing the workload of distributed systems.

A Secure Load Balancing Technique based on Cloud Partitioning for Public Cloud Infrastructure Nidhi Bedi 1 and Shakti Arora 1

Decentralized Utility-based Sensor Network Design

Efficient Cloud Computing Load Balancing Using Cloud Partitioning and Game Theory in Public Cloud

Improved Dynamic Load Balance Model on Gametheory for the Public Cloud

Cooperative Virtual Machine Management for Multi-Organization Cloud Computing Environment

THE computational grid is a promising platform that

On the Interaction and Competition among Internet Service Providers

Enhancing Wireless Security with Physical Layer Network Cooperation

Load Balancing Model in Cloud Computing

2 Prof, Dept of CSE, Institute of Aeronautical Engineering, Hyderabad, Andhrapradesh, India,

Priority Based Load Balancing in a Self-Interested P2P Network

How To Develop A Dynamic Load Balancing Algorithm

DECENTRALIZED LOAD BALANCING IN HETEROGENEOUS SYSTEMS USING DIFFUSION APPROACH

A Task Allocation Schema Based on Response Time Optimization in Cloud Computing

Cloud Partitioning Based Load Balancing Model for Performance Enhancement in Public Cloud

RESEARCH PAPER International Journal of Recent Trends in Engineering, Vol 1, No. 1, May 2009

Price of Anarchy in Non-Cooperative Load Balancing

Various Schemes of Load Balancing in Distributed Systems- A Review

A Game Theory Modal Based On Cloud Computing For Public Cloud

A REVIEW ON LOAD BALANCING TECHNIQUE IN THE PUBLIC CLOUD USING PARTITIONING METHOD

A Novel Switch Mechanism for Load Balancing in Public Cloud

A Load Balancing Model Based on Cloud Partitioning for Public Cloud Using Game Theory

Dynamic Load Balancing Strategy for Grid Computing

AN ADAPTIVE DISTRIBUTED LOAD BALANCING TECHNIQUE FOR CLOUD COMPUTING

The Conincident Cost Improvement and Adverse Effects of Adding Connections

A Dynamic Load Balancing Algorithm in Computational Grid Using Fair Scheduling

@IJMTER-2015, All rights Reserved 355

A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters

Keywords Load balancing, Dispatcher, Distributed Cluster Server, Static Load balancing, Dynamic Load balancing.

Game Theory Based Iaas Services Composition in Cloud Computing

An Empirical Study and Analysis of the Dynamic Load Balancing Techniques Used in Parallel Computing Systems

Load Balancing in Distributed Systems: A survey

On the Design of Mutually Aware Optimal Pricing and Load Balancing Strategies for Grid Computing Systems

A Study on the Application of Existing Load Balancing Algorithms for Large, Dynamic, Heterogeneous Distributed Systems

On the Traffic Capacity of Cellular Data Networks. 1 Introduction. T. Bonald 1,2, A. Proutière 1,2

Falloc: Fair Network Bandwidth Allocation in IaaS Datacenters via a Bargaining Game Approach

6.254 : Game Theory with Engineering Applications Lecture 1: Introduction

How To Balance In The Cloud

Grid Computing Approach for Dynamic Load Balancing

Thesis work and research project

Load Balancing Algorithms for Peer to Peer and Client Server Distributed Environments

The Economics of the Cloud: Price Competition and Congestion

Global Load Balancing and Primary Backup Approach for Fault Tolerant Scheduling in Computational Grid

IMPROVED PROXIMITY AWARE LOAD BALANCING FOR HETEROGENEOUS NODES

Presentation of Multi Level Data Replication Distributed Decision Making Strategy for High Priority Tasks in Real Time Data Grids

Scheduling Allowance Adaptability in Load Balancing technique for Distributed Systems

An Active Packet can be classified as

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.

Tasks Scheduling Game Algorithm Based on Cost Optimization in Cloud Computing

Towards a compliance audit of SLAs for data replication in Cloud storage

Keywords: PDAs, VM. 2015, IJARCSSE All Rights Reserved Page 365

A Novel Load Balancing Optimization Algorithm Based on Peer-to-Peer

Analysis of Internet Topologies: A Historical View

Analysis of Internet Topologies

A Review on an Algorithm for Dynamic Load Balancing in Distributed Network with Multiple Supporting Nodes with Interrupt Service

CHAPTER 5 WLDMA: A NEW LOAD BALANCING STRATEGY FOR WAN ENVIRONMENT

LOAD BALANCING MECHANISMS IN DATA CENTER NETWORKS

Cloud Management: Knowing is Half The Battle

Mining Association Rules on Grid Platforms

Load Balancing in Cloud Computing using Observer's Algorithm with Dynamic Weight Table

Figure 1. The cloud scales: Amazon EC2 growth [2].

A Power Efficient QoS Provisioning Architecture for Wireless Ad Hoc Networks

A Game Theoretic Formulation of the Service Provisioning Problem in Cloud Systems

Hierarchical Status Information Exchange Scheduling and Load Balancing For Computational Grid Environments

A Game Theoretical Framework for Adversarial Learning

Closed-loop Load Balancing: Comparison of a Discrete Event Simulation with Experiments

Profit Maximization and Power Management of Green Data Centers Supporting Multiple SLAs

Design of an Optimized Virtual Server for Efficient Management of Cloud Load in Multiple Cloud Environments

Dynamic Resource Pricing on Federated Clouds

Cloud Computing for Agent-based Traffic Management Systems

Shareability and Locality Aware Scheduling Algorithm in Hadoop for Mobile Cloud Computing

Load-balancing Approach for AOMDV in Ad-hoc Networks R. Vinod Kumar, Dr.R.S.D.Wahida Banu

Job Scheduling in a Distributed System Using Backfilling with Inaccurate Runtime Computations

Load Balancing and Switch Scheduling

Object Request Reduction in Home Nodes and Load Balancing of Object Request in Hybrid Decentralized Web Caching

A Bi-Objective Approach for Cloud Computing Systems

Demand Response of Data Centers: A Real-time Pricing Game between Utilities in Smart Grid

Keywords: WMSN, MCC, NIST

Transcription:

in Distributed Systems Anthony T. Chronopoulos Department of Computer Science University of Texas at San Antonio San Antonio, TX, USA atc@cs.utsa.edu

Load balancing: problem formulation Load balancing Given a large number of jobs, find an allocation of jobs to computers optimizing a given objective function (e.g. total execution time or total cost).

Motivation for a game theoretic approach Computational resources are distributed and used by many users having different requirements. Users are likely to behave in a selfish manner and their behavior cannot be characterized using conventional techniques.

Outline Taxonomy of Load Balancing Approaches A Noncooperative scheme A Cooperative Scheme A Dynamic Scheme Application to Grid Models Future Work

Categories of load balancing policies Static policies: base their decision on collected statistical information about the system. Dynamic policies: base their decision on the current state of the system.

Job Classification Jobs in a distributed system can be divided into different classes (multi-class or multi-user) based on their nature (e.g. arrival rates, execution times etc). So, the objective of the load balancing schemes can be to provide a system-optimal solution where all the jobs are regarded to belong to one group (one class). an individual-optimal solution where each job optimizes its own response time. a class-optimal (user-optimal) solution where the jobs are classified into finite number of classes (users) based on their nature and each user tries to optimize the response time of her own jobs.

Load Balancing Approaches I. Global approach II. Non-cooperative approach III. Cooperative approach

I. Global approach Only one decision maker that minimizes the response time of the entire system over all jobs. Algorithms: [Tantawi & Towsley 85][Tang & Chanson 00] nonlinear optimization [Kim & Kameda 92] efficient algorithm [Li & Kameda 94] tree and star networks

II. Non-cooperative approach Several decision makers (e.g. jobs, users) minimize their own response time independently of the others and they all eventually reach an equilibrium. At the equilibrium a decision maker cannot receive any further benefit by changing its own decision. This situation can be modeled as a non-cooperative game. Solutions: Wardrop equilibrium - infinite # of decision makers. Nash equilibrium - finite # of decision makers. Algorithms: [Kameda 97] Wardrop equilibrium; [Roughgarden 01] Stackelberg game; [Grosu 05] Nash equilibrium;

III. Cooperative approach Several decision makers (e.g. jobs, computers) cooperate in making the decisions. Each of them will operate at its optimum. Decision makers have complete freedom of preplay communication to make joint agreements about their operating points. This situation can be modeled as a cooperative game. Algorithms: [Grosu IPDPS 02],[Penmatsa IPDPS 06] cooperative game among computers.

Noncooperative Load Balancing Game among Users ([Grosu 05]) We consider a distributed system that consists of n heterogeneous computers shared by m users. User j is a player and she must find a load balancing strategy s j = (s j1, s j2,..., s jn ) that minimizes the expected response time of her jobs. The expected response time of user j is given by: D j (s) = n s ji F i (s) = i=1 n i=1 s ji µ i m k=1 s kiφ k

The Distributed System Model Servers Computers 1 S1 s11 1 C1 s12 1 s1n 1 2 S2 s21 2 s22 2 C2 Users s2n 2 Job Assignment sm1 m sm2 m m Sm smn m Cn Job Assignment

Nash Equilibrium Nash Equilibrium A Nash equilibrium of the load balancing game defined above is a strategy profile s such that for every user j: s j arg min s j D j (s 1,..., s j,..., s m )

OP j : User j Optimization Problem min D j (s) s j subject to the constraints: s ji 0, i = 1,..., n n s ji = 1 i=1 m s ki φ k < µ i, i = 1,..., n k=1

Summary of results The new algorithm (NASH) is compared with three other existing load balancing schemes: Proportional Scheme (PS), Global Optimal Scheme (GOS) and Individual Optimal Scheme (IOS). GOS minimizes the expected execution time for all the jobs of all users in the entire system. NASH finds the Nash equilibrium solution (i.e. it minimizes the expected execution time for all the jobs of each user). IOS finds the Wardrop equilibrium solution and PS is not optimal.

The expected response time for entire system (non-cooperative game approach) 0.3 0.25 Expected Response Time(in Sec) 0.2 0.15 0.1 NASH GOS IOS PS 0.05 0 10 20 30 40 50 60 70 80 90 System Utilization

The expected response time for each user (non-cooperative game approach)

Cooperative Load Balancing We consider a distributed computer system that consists of n heterogeneous computers (nodes) interconnected by a communication network. The load balancing problem is formulated as a cooperative game among the computers and the communication subsystem. The Nash Bargaining Solution (NBS) is the solution for our cooperative load balancing game which provides a Pareto optimal and fair solution.

Cooperative Load Balancing Game The cooperative load balancing game consists of: n computers and the communication subsystem as players; The set of strategies, X, is defined by the following constraints: β i < µ i, i = 1,..., n (1) n n β i = φ i = Φ, (2) i=1 i=1 β i 0, i = 1,..., n (3) For each computer i, i = 1,..., n, the objective function f i (X ) = D i (β i ); for the communication subsystem, the objective function f n+1 (X ) = G(λ); X = [β 1,..., β n, λ] T. The goal is to minimize simultaneously all f i (X ), i = 1,..., n + 1. For each player i, i = 1,..., n + 1, the initial performance u 0 i = f i (X 0 ), where X 0 is a zero vector of length n + 1.

Performance evaluation: Expected response time (cooperative game approach) 0.35 0.3 CCOOP OPTIM PROP Expected Response Time (sec) 0.25 0.2 0.15 0.1 0.05 0 10 20 30 40 50 60 70 80 90 System Utilization(%)

Performance evaluation: Fairness index (cooperative game approach) 1.1 1 0.9 Fairness Index I 0.8 0.7 0.6 CCOOP OPTIM PROP 0.5 10 20 30 40 50 60 70 80 90 System Utilization(%)

Communication Time vs Expected Response Time (cooperative game approach) 0.15 0.14 0.13 0.12 Expected Response Time (sec) 0.11 0.1 0.09 0.08 0.07 0.06 0.05 0.04 0.03 0.02 0.01 COOP, 50% system utilization COOP, 70% system utilization CCOOP, 50% system utilization CCOOP, 70% system utilization 0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01 Mean Communication Time (sec)

Dynamic Load Balancing Distributed dynamic scheme components: Information policy: The number of jobs waiting in the queue to be processed (queue length) is used as the state information. This state information is exchanged between the nodes every P time units. Transfer policy: When a job arrives at a node, the transfer policy component determines whether the job should be processed locally or should be transferred to another node for processing. Location policy: If the job is eligible for transfer, the location policy component determines the destination node for remote processing.

Dynamic Non-cooperative Scheme with Communication (DNCOOPC) The goal of DNCOOPC is to balance the workload among the nodes dynamically in order to obtain a user-optimal solution i.e. to minimize the expected response time of the individual users. The derivation of DNCOOPC is based on the static NCOOPC.

Dynamic Global Optimal Scheme (DGOS) The goal of DGOS is to balance the workload among the nodes dynamically in order to obtain a system-wide optimization i.e. to minimize the expected response time of all the jobs over the entire system. The derivation of DGOS is based on the static GOS similar to DNCOOPC.

The expected response time for entire system (dynamic load balancing approach) 0.3 Expected Response Time (sec) 0.25 0.2 0.15 0.1 GOS NCOOPC DGOS DNCOOPC 0.05 0 10 20 30 40 50 60 70 80 90 System Utilization (%)

The expected response time for each user (dynamic load balancing approach)

Job Allocation Schemes for Computational Grids (GOSP and NASHP) Grid is a type of parallel / distributed system which enables the sharing, selection, and aggregation of geographically distributed autonomous resources dynamically at runtime. Computational grid: Tries to solve problems or applications by allocating the idle computing resources over a network or the internet These computational resources have different owners who can be enabled by an automated negotiation mechanism by the grid controllers

Pricing Model Players are the Grid Servers and the Computers Reserved valuations The server has to play an independent game with each computer associated with it to form the price per unit resource vector, p j. In a system with m servers and n computers at time t, we have m n bargaining games.

Non-cooperative Job Allocation Game A Non-cooperative job allocation game consists of a set of players, a set of strategies, and preferences over the set of strategy profiles: (i) Players: The m users. (ii) Strategies: Each user s set of feasible job allocation strategies. (iii) Preferences: Each user s preferences are represented by its expected price (D j ). Each user j prefers the strategy profile β to the strategy profile β if and only if D j (β ) < D j (β ). Definition: A Nash equilibrium of the job allocation game defined above is a strategy profile β such that for every user j (j = 1,..., m): β j arg min D j (β 1,..., β j,..., β m ) (4) β j

Performance evaluation: Expected response time (price-based job allocation) 0.3 0.25 NASHPC GOSPC Expected Response Time (sec) 0.2 0.15 0.1 0.05 0 10 20 30 40 50 60 70 80 90 System Utilization (%)

Performance evaluation: Fairness index (price-based job allocation) 1.02 1 0.98 Fairness Index I 0.96 0.94 0.92 NASHPC GOSPC 0.9 10 20 30 40 50 60 70 80 90 System Utilization (%)

Future Work More results on load balanced job allocation in distributed systems and validation by application to the Grid computing model. Develop cooperative load balancing schemes for multi-class jobs by taking the communication costs and bandwidth constraints into consideration. Develop dynamic cooperative load balancing schemes. Extend the current non-cooperative load balancing scheme to include the communication costs and bandwidth constraints. Develop load balancing protocols based on mechanism design that work in distributed systems shared by self interested agents. Implement the new schemes in conjunction with job allocation schemes for grids. Study the performance of the algorithms using existing distributed systems simulation frameworks (e.g. SIMGRID).

References D. Grosu and A. T. Chronopoulos, Noncooperative Load Balancing in Distributed Systems, Journal of Parallel and Distributed Computing, 65(9), pp. 1022-1034, Sept. 2005. S. Penmatsa and A. T. Chronopoulos, Cooperative Load Balancing for a Network of Heterogeneous Computers, Proc. of the 20th IEEE Intl. Parallel and Distributed Processing Symposium, 15th HCW, Rhodes Island, Greece, April 2006. S. Penmatsa and A. T. Chronopoulos, Dynamic Multi-User Load Balancing in Distributed Systems, Proc. of the 21st IEEE Intl. Parallel and Distributed Processing Symposium, Long Beach, California, March 26-30, 2007. S. Penmatsa and A. T. Chronopoulos, Job Allocation Schemes in Computational Grids based on Cost Optimization, Proc. of the 19th IEEE Intl. Parallel and Distributed Processing Symposium, Joint Workshop on HPGC and HIPS, Denver, Colorado, 2005. S. Penmatsa and A. T. Chronopoulos, Price-based User-optimal Job Allocation Scheme for Grid Systems, Proc. of the 20th IEEE Intl. Parallel and Distributed Processing Symposium, 3rd HPGC, Rhodes Island, Greece, April 2006.

Thank you Questions?