massively mul player online gaming on heterogeneous
play

Massively)Mul+player)Online)Gaming) - PowerPoint PPT Presentation

Massively)Mul+player)Online)Gaming) on)Heterogeneous)Parallel)Pla7orms) Radu)Prodan) Ins+tute)of)Computer)Science) University)of)Innsbruck) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 1) What)are)MMOGs?) !


  1. Massively)Mul+player)Online)Gaming) on)Heterogeneous)Parallel)Pla7orms) Radu)Prodan) Ins+tute)of)Computer)Science) University)of)Innsbruck) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 1)

  2. What)are)MMOGs?) ! Real%&me(virtual(world( simula&ons(entertaining(players( distributed(across(the(world( ! Simula&on(en&&es( o Avatars( o Non%player(characters( o Passive(en&&es( o Immutable(en&&es((décor)( ! Players(interact(with(each(other( within(game(sessions( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 2)

  3. MMOG)Genres) ! Massively(Mul&player(Online(Role(Playing( Games((MMORPG)( o Adventure(games( o World(of(WarcraF,(Eve(Online,(Second(Life,(RunScape,(…( o Thousands(of(players(sharing(one(game(session(in(a(huge( persistent(game(world( ( ! First(Person(Shooter((FPS)( o Ac&on(games( o Counter(Strike,(BaPlefield,(Doom,(Quake,(…( o 64(up(to(few(hundreds(players(in(one(ephemeral(session ( ! Real%Time(Strategy((RTS)( o Economic(and(baPle(strategy(games( o StarcraF,(Empire:(Total(War,(Age(of(Empires,(Dune(II,(…( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 3)

  4. 22)million) Why)MMOGs)?) subscribers) ! hPp://mmodata.blogspot.co.at/( ( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 4)

  5. Game)Revenue) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 5)

  6. MMOG)Computa+onal)Model) Congested) ! Real%&me(server(loop(with(a(minimum(required(&ck(rate( o Minimum(state(update(frequency(for(a(responsive(playable(game( o Up(to(100(Hz(depending(on(game(type( ! Number)and)density)of)players) in(a(game(session(generates( load ( that(congest(servers( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 6)

  7. MMOG)Load) ! Long%term(demand( o hPp://mmodata.blogspot.co.at/( o MMOG(providers(operate(large( data(centres( ! Short%term(demand( o hPp://store.steampowered.com/( o Resource(overprovisioning( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 7)

  8. Research)Agenda) ! History:(2006(–(2014( ( Service(Level(Agreements( ! EU(edutain@grid,(FP6(STREP( o 2006(–(2009( QoS(fault(tolerance( o University(of(Münster,(Germany ( Resource(provisioning( ! FWF(Real(Games( Load(modelling( o 2010(–(2013( Parallelisa+on) ! TU(DelF,(Netherlands( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 8)

  9. Game)Server)Parallelisa+on) ! Zoning( o Spa&al(par&&oning( o Geographical(sub%zones( ( ! Replica&on( o En&ty(distribu&on( o Synchronised(states( ( ! Instancing( o Mul&ple(instances(with( independent(states( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 9)

  10. OnUdemand)MMOG)Scaling) Massive)join) Massive)leave) Massive)join) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 10)

  11. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 11)

  12. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( several(ac&ons( o Replica+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 12)

  13. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client)migra+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 13)

  14. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o DeUreplica+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 14)

  15. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o DeUreplica+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 15)

  16. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server)migra+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 16)

  17. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server)migra+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 17)

  18. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server)migra+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 18)

  19. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server)migra+on) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 19)

  20. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server(migra&on( o Instancing) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 20)

  21. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to( the(exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server(migra&on( o Instancing) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 21)

  22. OnUdemand)Scaling)Algorithm) ! Scale(the(MMOG(session( up(/down(according(to(the( exhibited(load( ! Combina&on(of(the( following(ac&ons( o Replica&on( o Client(migra&on( o De%replica&on( o Server(migra&on( o Instancing( o DeUinstancing) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 22)

  23. FPS)Game)Demonstrator) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 23)

  24. Scaling)Experiment) ! 4(massive(joins(at(1(minute( interval( o 80(+(30(+(30(+(50(=(190(users( Zone 0 Zone 1 R1 R1 R2 Player)thresholdUbased) Player)interac+onU Metric) based) 40)clients/server) 50)clients/server) Under%alloca&on((avg.)( 0.66%) 0.86%( 8.69%( Total(non%interrup&on( 99.33%) 99.14%( 91.31%( Resource(u&lisa&on( 83.3%) 100%( 83.3%( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 24)

  25. Research)Agenda) Service(Level(Agreements( QoS(fault(tolerance( Resource(provisioning( Load)modelling) Parallelisa&on( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 25)

  26. Load)Predic+on) ! Load(predic&on(method( o Monitor(game(servers(and(log(en&ty( Time ( posi&ons( 2 ( 1 ( 3 ( t+∆t ( o Use(past(posi&ons(to(predict(future( 4 ( 5 ( 6 ( en&ty(distribu&on( o Translate(en&ty(distribu&on(in( resource(load( Neural Neural Neural Network ) Network ) Network ) Preprocessor Preprocessor Preprocessor Neural Neural Neural Network ) Network ) Network ) Preprocessor ) Preprocessor ) Preprocessor ! En&ty(distribu&on(predic&on( 1 ( 2 ( 3 ( t ( o Split(game(world(into(subareas( 4 ( 5 ( 6 ( o Predict(the(number(of(players(in(each( subarea( o Time(series(and(neural(network%based( methods( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 26)

  27. Load)Modelling) ! Translate(en&ty(distribu&on( ! !(​$↓ 1 , ​$↓ 2 ) = {)​$↓ 1 + ​$↓ 2 &+(,)@​$↓ 1 ∙ ​ log ⁠ , &+(, ∙ ​ log ⁠ , )@​$↓ 1 ∙ ​$↓ 2 &+(​ into(resource(load( ,↑ 2 )@​$↓ 1 ↑ 2 ∙ ​ log ⁠ ​$↓ 2 &+(​,↑ 2 ∙ ​ log ⁠ , )@​$↓ 1 ↑ 2 ∙ ​$↓ 2 &+(​,↑ 3 ) ! Game(interac&on(complexity( o Low,(average,(high( Memory Load Model N m BE m m m M ⋅ + ⋅ + + CPU Load Model cs es game zone L Network Load Model = = MEM M M HOST HOST ( ) ( ) T p p f IC , IC p p f IC , BE t N BE ⋅ ⋅ + ⋅ ⋅ ⋅ + + L C ui ci ui ei i D D & # = = CPU L max out , in T S MAX $ ! = NET $ ! SAT B B % " out in LOAD 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 27)

  28. En+ty)Predic+on)Results) ! Game(simulator(with(AI(profile%driven(en&&es( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 28)

  29. Resource)UnderUalloca+on)Events) 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 29)

  30. Research)Agenda) Service(Level(Agreements( QoS(fault(tolerance( Resource)provisioning) Load(modelling( Parallelisa&on( 01/09/2014) R.)Prodan,)12th)Interna+onal)Workshop)HeteroPar)2014) 30)

Recommend


More recommend