34
Pricing for Utility-driven Resource Management and Allocation in Clusters Chee Shin Yeo and Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS) Lab. Dept. of Computer Science and Software Engineering The University of Melbourne, Australia www.gridbus.org/ WW Grid

Pricing for Utility-driven Resource Management and Allocation in Clusters

Embed Size (px)

DESCRIPTION

WW Grid. Pricing for Utility-driven Resource Management and Allocation in Clusters. Gri d Computing and D istributed S ystems (GRIDS) Lab. Dept. of Computer Science and Software Engineering The University of Melbourne, Australia www.gridbus.org/. Chee Shin Yeo and Rajkumar Buyya. - PowerPoint PPT Presentation

Citation preview

Page 1: Pricing for Utility-driven Resource Management  and Allocation in Clusters

Pricing for Utility-driven Resource Management

and Allocation in Clusters

Chee Shin Yeo and Rajkumar Buyya

Grid Computing and Distributed Systems (GRIDS) Lab. Dept. of Computer Science and Software EngineeringThe University of Melbourne, Australia

www.gridbus.org/

WW Grid

Page 2: Pricing for Utility-driven Resource Management  and Allocation in Clusters

2

Presentation Outline

Motivation Computation Economy Economy-based Admission Control,

Resource Allocation & Job Control Pricing Function Performance Evaluation Conclusion and Future Work

Page 3: Pricing for Utility-driven Resource Management  and Allocation in Clusters

3

Motivation

Cluster-based systems have gained popularity and widely adopted 75% of Top500 supercomputers world-

wide based on Cluster architecture. Clusters are used in not only used in

scientific computing, but also in driving many commercial applications.

Many Corporate Data Centers are cluster-based systems.

Page 4: Pricing for Utility-driven Resource Management  and Allocation in Clusters

4

Problem and our Proposal

However, RMS responsible for managing clusters and allocating resources to users

Still adopts system-centric approaches such as FCFS with some static pariorities.

Maximize CPU throughput & CPU utilization Minimize average waiting time & average response time

They provide no or minimal means for users to define Quality-Of-Service (QoS) requirements.

We propose the use of user-centric approaches such as computational economy in management of cluster resources.

Page 5: Pricing for Utility-driven Resource Management  and Allocation in Clusters

5

Computational Economy

Management of shared resources with economic accountability is effective: Regulates supply and demand of cluster

resources at market equilibrium User-centric management of clusters

Users express Quality Of Service (QoS) requirements

Users express their valuation for the required service

Economic incentives for both users and cluster owner as a means of feedback

Page 6: Pricing for Utility-driven Resource Management  and Allocation in Clusters

6

Utility-driven Cluster RMS Architecture

Page 7: Pricing for Utility-driven Resource Management  and Allocation in Clusters

7

Economy-based Admission Control & Resource Allocation

Uses the pricing function to compute cost for satisfying the QoS of a job as a means for admission control

Regulate submission of workload into the cluster to prevent overloading

Provide incentives Deadline -- $ Execution Time -- $ Cluster Workload -- $

Cost acts as a mean of feedback for user to respond to

Page 8: Pricing for Utility-driven Resource Management  and Allocation in Clusters

8

Economy-based Admission Control & Resource Allocation

Accept or reject based on 3 criteria (consider required QoS) resource requirements that are needed by

the job to be executed deadline that the job has to be finished budget to be paid by the user for the job

to be finished within the deadline Requires estimated execution time Allocates job to node with least

remaining free processor time

Page 9: Pricing for Utility-driven Resource Management  and Allocation in Clusters

9

Job Control: Economy-based Proportional Resource Sharing

Monitor and enforce required deadline.

Time-shared Allocate resources proportional to the

needs of jobs based on the estimated execution time and required deadline

Update processor time partition periodically

Page 10: Pricing for Utility-driven Resource Management  and Allocation in Clusters

10

Essential Requirements for Pricing

Flexible Easy configuration

Fair Based on actual usage

Dynamic Not static

Adaptive Changing supply and demand of resources

Page 11: Pricing for Utility-driven Resource Management  and Allocation in Clusters

11

Pricing Function

Page 12: Pricing for Utility-driven Resource Management  and Allocation in Clusters

12

Pricing Function

Page 13: Pricing for Utility-driven Resource Management  and Allocation in Clusters

13

Processing Cost Functions for Different Scheduling Algorithms

First-Come-First-Served (FCFS)

Economy based Proportional Resource Sharing (Libra)

Libra with dynamic pricing (Libra+$)

Page 14: Pricing for Utility-driven Resource Management  and Allocation in Clusters

14

Performance Evaluation: Simulation

Simulation Model Simulated scheduling for a cluster

computing environment using the GridSim toolkit (http://www.gridbus.org/gridsim)

Simulated Cluster manjra.cs.mu.oz.au (13 single-processor

nodes with Pentium4 2-GHz CPU)

Page 15: Pricing for Utility-driven Resource Management  and Allocation in Clusters

15

Experimental Methodology

Page 16: Pricing for Utility-driven Resource Management  and Allocation in Clusters

16

Evaluation Metrics

Job QoS Satisfaction Cluster Profitability Average Waiting Time Average Response Time

Page 17: Pricing for Utility-driven Resource Management  and Allocation in Clusters

17

Normalised Comparison of FCFS, Libra & Libra+$

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Job QoSSatisfaction

Cluster Profitability Average WaitingTime

Average ResponseTime

FCFS

Libra

Libra+$, β = 0.01

Page 18: Pricing for Utility-driven Resource Management  and Allocation in Clusters

18

Varying Cluster Workload

Scheduling policies First-Come-First-Served (FCFS) Economy based Proportional Resource

Sharing (Libra) Libra with dynamic pricing (Libra+$)

An increasing mean job execution time 6, 7, 8, 10, 15 and 30 hours

Page 19: Pricing for Utility-driven Resource Management  and Allocation in Clusters

19

Impact of Increasing Job Execution Time on Job QoS Satisfaction

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

6 7 8 10 15 30

Mean Job Execution Time (hours)

Job

Qo

S S

ati

sfa

ctio

n (

%)

FCFS

Libra

Libra+$, β = 0.01

Page 20: Pricing for Utility-driven Resource Management  and Allocation in Clusters

20

Impact of Increasing Job Execution Time on Cluster Profitability

0%

5%

10%

15%

20%

25%

30%

6 7 8 10 15 30

Mean Job Execution Time (hours)

Clu

ster

Pro

fita

bili

ty (

%)

FCFS

Libra

Libra+$, β = 0.01

Page 21: Pricing for Utility-driven Resource Management  and Allocation in Clusters

21

Varying Pricing Factor for Different Level of Sharing

Scheduling policies Libra with dynamic pricing (Libra+$)

An increasing dynamic pricing factor β 0.01, 0.1, 0.3, and 1

Page 22: Pricing for Utility-driven Resource Management  and Allocation in Clusters

22

Impact of Increasing Dynamic Pricing Factor on Job QoS Satisfaction

0%

10%

20%

30%

40%

50%

60%

70%

80%

0.01 0.1 0.3 1

Dynamic Pricing Factor β

Job

Qo

S S

ati

sfa

ctio

n (

%)

FCFS

Libra

Libra+$

Page 23: Pricing for Utility-driven Resource Management  and Allocation in Clusters

23

Impact of Increasing Dynamic Pricing Factor on Cluster Profitability

0%

10%

20%

30%

40%

50%

60%

70%

80%

0.01 0.1 0.3 1

Dynamic Pricing Factor β

Clu

ster

Pro

fita

bili

ty (

%)

FCFS

Libra

Libra+$

Page 24: Pricing for Utility-driven Resource Management  and Allocation in Clusters

24

Tolerance against Estimation Error

Under-estimated execution time EEi e.g. job whose execution time Ei = 60 hours

has EEi = 30 hours for estimation error = 50% Scheduling policies

Libra – Economy based Proportional Resource Sharing (Libra)

Libra with dynamic pricing (Libra+$) An increasing estimation error for

estimated execution time EEi 0%, 10%, 30% and 50%

Page 25: Pricing for Utility-driven Resource Management  and Allocation in Clusters

25

Impact of Increasing Estimation Error on Job QoS Satisfaction

0%

10%

20%

30%

40%

50%

60%

70%

80%

0% 10% 30% 50%

Estimation Error for Estimated Execution Time EE i (%)

Job

Qo

S S

ati

sfa

ctio

n (

%)

Libra

Libra+$, β = 0.01

Libra+$, β = 0.1

Libra+$, β = 0.3

Libra+$, β = 1.0

Page 26: Pricing for Utility-driven Resource Management  and Allocation in Clusters

26

Impact of Increasing Estimation Error on Cluster Profitability

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

0% 10% 30% 50%

Estimation Error for Estimated Execution Time EE i (%)

Clu

ste

r P

rofi

tab

ility

(%

)

Libra

Libra+$, β = 0.01

Libra+$, β = 0.1

Libra+$, β = 0.3

Libra+$, β = 1.0

Page 27: Pricing for Utility-driven Resource Management  and Allocation in Clusters

27

Conclusion & Future Work

Importance of effective pricing function (demand exceeds supply of resources)

Satisfy four essential requirements for pricing

Serves as means of admission control Tolerance against estimation errors Higher benefits for cluster owner Future work

Explore different pricing strategies Examine different application models

Page 28: Pricing for Utility-driven Resource Management  and Allocation in Clusters

Backup

Page 29: Pricing for Utility-driven Resource Management  and Allocation in Clusters

29

Related Work

Traditional cluster RMS Load Sharing Facility (LSF) – Platform Load Leveler – IBM Condor – University of Wisconsin Portable Batch System (PBS) – Altair Grid

Technologies Sun Grid Engine (SGE) – Sun Microsystems

Market-based cluster RMS REXEC Libra

Page 30: Pricing for Utility-driven Resource Management  and Allocation in Clusters

30

Job details eg. Estimated execution time

Resource requirements eg. Memory size, Disk storage size

QoS constraints eg. Deadline, Budget

QoS optimization eg. Time, Cost

User-level Job Submission Specification

Page 31: Pricing for Utility-driven Resource Management  and Allocation in Clusters

31

Job QoS Satisfaction

Performance Evaluation Metrics

Page 32: Pricing for Utility-driven Resource Management  and Allocation in Clusters

32

Cluster Profitability

Performance Evaluation Metrics

Page 33: Pricing for Utility-driven Resource Management  and Allocation in Clusters

33

Performance Evaluation Metrics

Average Waiting Time

Page 34: Pricing for Utility-driven Resource Management  and Allocation in Clusters

34

Performance Evaluation Metrics

Average Response Time