Download presentation
Presentation is loading. Please wait.
Published byKristin Morton Modified over 9 years ago
1
Online Auctions in IaaS Clouds: Welfare and Profit Maximization with Server Costs Xiaoxi Zhang 1, Zhiyi Huang 1, Chuan Wu 1, Zongpeng Li 2, Francis C.M. Lau 1 1 The University of Hong Kong 2 University of Calgary
2
Outline Background Problem settings Difficulties Mechanism design Performance evaluations Summary
3
Amazon EC2 Computing resources are packed into VMs by virtualization technology
4
Users demand for Cloud resources
5
Why auction Users can determine their own VM types Providers can price according to the current demand and supply relationship Computing resources are limited
6
Amazon EC2 Spot Instances Demand: a VM instance
7
Amazon EC2 Spot Instances Demand: a VM instance
8
Our work Time-variant resource demands —— a customized VM Start time End time
9
S servers R types of resources, with known capacities T time slots I users For each user i: Demands of user i: Problem settings
10
Power consumption of each server can be formulated Problem settings Horizontal coordinate: resource(e.g., CPU) utilization Vertical coordinate: power consumption
11
When Dynamic Voltage Frequency Scaling (DVFS) server mode is enabled,. Problem settings
12
Dynamic Voltage Frequency Scaling (DVFS) server mode is disabled.
13
Problem settings Server cost is not considered.
14
bid server bid i on s ✔ =1 ✗ =0 time slot resource VM allocation model
15
resource allocation constraint server cost VM allocation model
16
1. y = allocated resource amount 2.No resource is over-provisioned VM allocation model
17
VM auction: NP-hard Sever cost consideration Resource reusability Payment: For welfare maximization: it should be a threshold to filer out low-value bids For profit maximization: it should be as close to bidding price as possible Challenges with online auction
18
Upon the arrival of bid i: 1. Use the current price to calculate the payment on each server: payment(s)= 2. Choose the smallest payment and the corresponding server. 3. If : Accept bid i. Serve bid i on. Update. Otherwise: Reject bid i. Online auction for welfare maximization
19
Our online auction achieves: How to update ? Online auction for welfare maximization
20
Our online auction achieves: Truthfulness Polynomial time complexity High social welfare ---- competitive ratio How to update ? Online auction for welfare maximization
21
Our online auction achieves: Truthfulness Polynomial time complexity High social welfare ---- competitive ratio How to update ? Online auction for welfare maximization
22
Our online auction achieves: Truthfulness Polynomial time complexity High social welfare ---- competitive ratio How to update ? Using an online primal-dual framework Online auction for welfare maximization
23
An online primal-dual framework Primal: Dual: Lagrange relaxation
24
An online primal-dual framework Primal: Dual: Lagrange relaxation Resource price Utility of i
25
An online primal-dual framework Primal (P): Maximization problem Dual (D): Minimization problem P(or D): Primal(or Dual) objective value under a feasible primal(or dual) solution Weak duality: P<=P* <= D*<=D
26
An online primal-dual framework Primal (P): Maximization problem Dual (D): Minimization problem P(or D): Primal(or Dual) objective value under a feasible primal(or dual) solution Weak duality: P<=P* <= D*<=D Competitive analysis: P>= (1/ α )D Tight the gap
27
An online primal-dual framework Competitive analysis: P>= (1/ α )D P i : The primal objective value after dealing with bid i D i : The dual objective value after dealing with bid i In order to get P>= (1/ α )D, we resort to satisfying P i - P i-1 >= (1/ α ) (D i – D i-1 ), given P 0 =D 0 =0.
28
An online primal-dual framework In order to guarantee P i - P i-1 >= (1/ α ) (D i – D i-1 ), we have: Solve for each i, r, s, t to minimize α.
29
What are the goals of our online auction ? Truthfulness Polynomial time complexity High social welfare ---- competitive ratio How to update ? Using an online primal-dual framework, we solve, a function of. Online auction for welfare maximization
30
How to intuitively understand
31
Evaluation setup Google Cluster Data contains information including resource demands (CPU, RAM, Disk), job arrival times and durations. We translate each job into a VM bid, requesting R = 3 types of resources at the demands extracted from the traces (demand here is not much smaller than C rs ). Default Parameters: Each time slot is 10 seconds, and a bid arrives every [1, 10] time slot(s). The duration of each VM is between 10 and 3600 time slots. Ur =50, Lr =1. h rs ~[0.4, 0.6] for CPU, h rs ~[0.005, 0.02] for RAM and disk. β rs ~[1.7, 2.2] for CPU, β rs ~[0.5, 1] for RAM and disk. The capacity of each type of resource and the number of servers are roughly according to the total amount of demand from all bids multiplying a random number in [0.4, 0.8].
32
Performance evaluation of welfare maximization Bar colors: difference with average # of time slots between the bid arrival time to its specified VM start time over all the bids.
33
Performance evaluation of welfare maximization
34
Performance evaluation of profit maximization Bar colors: difference with the ratio between the upper and lower bound of bidding price per unit of resource demand
35
Summary We design an online auction to do Cloud resource provisioning for users with time-variant demands. We consider heterogeneous resources dynamically allocated, released, and reused. We maximize social welfare with server cost which achieves a good competitive ratio. We also apply an approach to maximize provider profit which achieves a good competitive ratio.
36
Thank you Q&A
37
Backup Slides
38
Upon the arrival of bid i: 1. Using the current price of each type of resource at each time slot within the resource execution duration to calculate the payment on each server: payment(s)= 2. Choose the smallest payment among all s, denoted by. The corresponding s is. 3. If : Accept bid i. Allocate resources on to server bid i. Update. Otherwise: Reject bid i. Online auction for welfare maximization
39
uiui P rs (t) relaxation Lagrange Relaxation Online primal-dual framework
40
uiui P rs (t) relaxation Online primal-dual framework
41
uiui P rs (t) relaxation utility marginal payment Online primal-dual framework
42
uiui P rs (t) relaxation utility marginal payment payment of bid i Online primal-dual framework
43
utility marginal payment payment of bid i Online primal-dual framework
44
utility marginal payment payment of bid i 1. Dual Feasibility P >= 1/ α D P*<=D*<=D P >= 1/ α P* 2. Complementary Slackness of KKT Optimality Condition: For any user i, Main idea: Online primal-dual framework
45
Intuitively, p rs (y rs (t)) is a function of marginal cost under some predicted allocated amount. Why ? Upon Bi’s arrival, for any t, r, s, p rs (t)d ir (t) > f rs (y rs (t)+d ir (t)) – f rs (y rs (t)) ≈ f ’ rs (y rs (t))d ir (t) if How to design p rs (t)
46
Intuitively, p rs (y rs (t)) is a function of marginal cost under some predicted allocated amount. Why ? Exponential function is growing fast! if How to design p rs (t)
47
P i – P i-1 >= 1/ α ( D i – D i-1 ), given P 0 = D 0 =0 P I >= 1/ α D I α is the competitive ratio How to design p rs (t)
48
P i – P i-1 >= 1/ α ( D i – D i-1 ), given P 0 = D 0 =0 P I >= 1/ α D I α is the competitive ratio How to design p rs (t)
49
P i – P i-1 >= 1/ α ( D i – D i-1 ), given P 0 = D 0 =0 P I >= 1/ α D I α is the competitive ratio How to design p rs (t)
50
Show the idea by drawing a picture on the whiteboard How to design p rs (t)
51
>= b max Profit maximization
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.