Assignment of Games to Servers in the OnLive Cloud Game System David Finkel, Mark Claypool, Sam...

14
Assignment of Games to Servers in the OnLive Cloud Game System David Finkel, Mark Claypool, Sam Jaffe, Thinh Nguyen, Brendan Stephen Computer Science and Interactive Media & Game Development Worcester Polytechnic Institute Worcester, MA 01609, USA

Transcript of Assignment of Games to Servers in the OnLive Cloud Game System David Finkel, Mark Claypool, Sam...

Assignment of Games to Servers in the OnLive Cloud Game System

David Finkel, Mark Claypool, Sam Jaffe, Thinh Nguyen, Brendan Stephen

Computer Science and Interactive Media & Game Development

Worcester Polytechnic Institute Worcester, MA 01609, USA

Overview• Worked with OnLive

– thin-client, cloud-based, video game streaming service

• Multiple server farms• User connects to nearest farm• Client connects to Game Selection Portal,

selects a game • Connects to free server that has that game

installed (a miss if game not available)

2

Problem Statement

• Server serves only one client at a time

• Each server has only a subset of games

• Question: How to assign games to servers

• Current method– Proportion of servers determined by expected

popularity (weights)– Worst-fit algorithm to assign games to

servers, respecting weights and hardware requirements

3

Approach

• Collected data from OnLive logs– Represents 1.6 million player session

• Fit probability distributions to data (EasyFit)

• Built discrete event simulation– Validated to match current operation– Re-ran with increased arrival rates

• Hill-climbing algorithm to minimize number of misses

4

How OnLive serves a client

5

Game Popularity

6

Pareto 2 distribution; follows Zipf’s Law

Interarrival Time for a Game

7

Exponential distribution, α = 0.00664.

Player Session Length

8

Weibull distribution, k = 0.9637 and λ = 2504.8

Validation

• Ran small-scale version, matched hand results

• Ran under current simulation, close to current operational results

• Consulted with OnLive engineers

• Concluded the work OnLive originally proposed

9

Optimization

• Used simulation to improve assignment of games to servers

• Increased arrival rate up to 7x current

• Used hill-climbing algorithm to improve weights (proportion of servers with a particular game)

• Obtained reduced disk space requirements

10

Hill-Climbing Algorithm

11

step size 5%

while (not all game weights are locked)

for (each game)

if (game does not have misses)

decrease weight by one step

elseif (game has been decreased already)

increase weight by one step

lock game weight

else

increase weight by one step

Re-run simulation with new weights

Number of misses

12

Hill-climbing and current OnLive operation virtually identical

Disk space utilization

13

Disk space utilization on different servers

Advantages of saving disk space

• Cost saving over large number of servers

• Faster installation of games

• Faster reconfiguration

• Changing games configurations expensive– Future: Design re-configurations to minimize

costs

14