A benchmark for Minecraft-like services

Slides:



Advertisements
Similar presentations
High throughput chain replication for read-mostly workloads
Advertisements

Southampton Open Wireless Network The Topology Talk.
CS 8803 Advanced Internet Systems and Application Development ASHWIN RAGHUNATHAN S.BHARATH RENGARAJAN SOCCER FANTASY LEAGUE.
Online Educational Game of Snakes and Ladders -Shalini Pradhan -Manali Joshi -Uttara Paingankar -Seema Joshi.
Scalable Content-aware Request Distribution in Cluster-based Network Servers Jianbin Wei 10/4/2001.
MICROSOFT PLATFORM  Microsoft is a platform company is committed to providing a rich ecosystem for building and managing connected systems.  Microsoft.
1 A Performance Study of Grid Workflow Engines Alexandru Iosup and Dick Epema PDS Group Delft University of Technology The Netherlands Corina Stratan Parallel.
1 IMPROVING RESPONSIVENESS BY LOCALITY IN DISTRIBUTED VIRTUAL ENVIRONMENTS Luca Genovali, Laura Ricci, Fabrizio Baiardi Lucca Institute for Advanced Studies.
Networking Within MMOs Scott Seeley. Differences in game networking Peer-to-peer Client/Server Distributed Server.
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
July 13, “How are Real Grids Used?” The Analysis of Four Grid Traces and Its Implications IEEE Grid 2006 Alexandru Iosup, Catalin Dumitrescu, and.
1 Efficient Management of Data Center Resources for Massively Multiplayer Online Games V. Nae, A. Iosup, S. Podlipnig, R. Prodan, D. Epema, T. Fahringer,
Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical.
PIC: Practical Internet Coordinates for Distance Estimation Manuel Costa joint work with Miguel Castro, Ant Rowstron, Peter Key Microsoft Research Cambridge.
Assembly Simulation on Collaborative Haptic Virtual Environments Rosa Iglesias, Elisa Prada Sara Casado, Teresa Gutierrez Ainhoa Uribe, Alejandro Garcia-Alonso.
End-to-end QoE Optimization Through Overlay Network Deployment Bart De Vleeschauwer, Filip De Turck, Bart Dhoedt and Piet Demeester Ghent University -
1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering.
1 EuroPar 2009 – POGGI: Puzzle-Based Online Games on Grid Infrastructures POGGI: Puzzle-Based Online Games on Grid Infrastructures Alexandru Iosup Parallel.
HERO: Online Real-time Vehicle Tracking in Shanghai Xuejia Lu 11/17/2008.
Gil EinzigerRoy Friedman Computer Science Department Technion.
Microsoft and Community Tour 2011 – Infrastrutture in evoluzione Community Tour 2011 Infrastrutture in evoluzione.
QoS Support in High-Speed, Wormhole Routing Networks Mario Gerla, B. Kannan, Bruce Kwan, Prasasth Palanti,Simon Walton.
Gregory Fotiades.  Global illumination techniques are highly desirable for realistic interaction due to their high level of accuracy and photorealism.
A performance evaluation approach openModeller: A Framework for species distribution Modelling.
The NIProxy: a Flexible Proxy Server Supporting Client Bandwidth Management and Multimedia Service Provision Maarten Wijnants Wim Lamotte.
Parallel and Distributed Simulation Introduction and Motivation.
Zibin Zheng DR 2 : Dynamic Request Routing for Tolerating Latency Variability in Cloud Applications CLOUD 2013 Jieming Zhu, Zibin.
Digital Intuition Cluster, Smart Geometry 2013, Stylianos Dritsas, Mirco Becker, David Kosdruy, Juan Subercaseaux Welcome Notes Overview 1. Perspective.
Replica Consistency in a Data Grid1 IX International Workshop on Advanced Computing and Analysis Techniques in Physics Research December 1-5, 2003 High.
DynamicMR: A Dynamic Slot Allocation Optimization Framework for MapReduce Clusters Nanyang Technological University Shanjiang Tang, Bu-Sung Lee, Bingsheng.
A Measurement Based Memory Performance Evaluation of Streaming Media Servers Garba Isa Yau and Abdul Waheed Department of Computer Engineering King Fahd.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Emir Halepovic, Jeffrey Pang, Oliver Spatscheck AT&T Labs - Research
Mark Gilbert Microsoft Corporation Services Taxonomy Building Block Services Attached Services Finished Services.
Logically Centralized? State Distribution Trade-offs in Software Defined Networks.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
1 Scalability and Accuracy in a Large-Scale Network Emulator Nov. 12, 2003 Byung-Gon Chun.
A Hierarchical Edge Cloud Architecture for Mobile Computing IEEE INFOCOM 2016 Liang Tong, Yong Li and Wei Gao University of Tennessee – Knoxville 1.
Cloud Benchmarking, Tools, and Challenges
Junchen Jiang, Rajdeep Das, Ganesh Ananthanarayanan, Philip A
Connected Infrastructure
R-Storm: Resource Aware Scheduling in Storm
Univa Grid Engine Makes Work Management Automatic and Efficient, Accelerates Deployment of Cloud Services with Power of Microsoft Azure MICROSOFT AZURE.
CIS 700-5: The Design and Implementation of Cloud Networks
Overview of Centralized Operation system
Introduction to SDNS-Mon
University of Maryland College Park
Architecture and Algorithms for an IEEE 802
GENUS Virtualisation Service for GÉANT and European NRENs
Supporting Windows 8.1 Krystle Portocarrero | Training Experts Inc.
Introduction to Load Balancing:
op5 Monitor - Scalable Monitoring
Virtual laboratories in cloud infrastructure of educational institutions Evgeniy Pluzhnik, Evgeniy Nikulchev, Moscow Technological Institute
Introduction to Redux Header Eric W. Greene Microsoft Virtual Academy
Pytheas: Enabling Data-Driven Quality of Experience Optimization Using Group-Based Exploration-Exploitation Junchen Jiang (CMU) Shijie Sun (Tsinghua Univ.)
Connected Infrastructure
Introduction to NewSQL
CHAPTER 3 Architectures for Distributed Systems
Performance Evaluation of Adaptive MPI
A Framework for Automatic Resource and Accuracy Management in A Cloud Environment Smita Vijayakumar.
Overview Introduction VPS Understanding VPS Architecture
Department of Computer Science University of California, Santa Barbara
Modernizing your enterprise with hybrid it
Chapter 4: Threads.
Goals Introduce the Windows Server 2003 family of operating systems
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks
Smita Vijayakumar Qian Zhu Gagan Agrawal
Next-Gen GUI for Web Services John D
The Performance of Big Data Workloads in Cloud Datacenters
Performance of VoIP in a b wireless mesh network
Presentation transcript:

A benchmark for Minecraft-like services Opencraft A benchmark for Minecraft-like services Jerom van der Sar Jesse Donkervliet Alexandru Iosup Contact: opencraft@atlarge-research.com www.atlarge-research.com/opencraft

Minecraft = Block-based Online Game Blocks Talk about Minecraft Differences between MC and other games Introduce: example awesomeness Hint about computation: dynamic pathfinding in Minecraft © Mojang and Microsoft

Minecraft = Most Popular Block-based Online-game 50 million active users Over 100 million sales worldwide 53,000 daily 20 since this presentation started Mojang valued at $1.8 billion, bought for $2.5 billion 38,000 modules for 10+ platforms Sources: techspot.com, curseforge.com

Minecraft = Most Popular Block-based Online Virtual Environment Also: Only game in top-20 by sales for Nintendo Wii/Switch Number 5 most bought game on Xbox 1. One in three Xbox users have Minecraft. Source: arstechnica.com

Minecraft = Uniquely Modifiable Online Game 1. Terrain is completely modifiable No baked lighting / light maps Unstable 3D pathfinding No static maps ⇒ More network 2. Terrain influences computation Redstone ⇒ Computation in MC Physics ⇒ Falling blocks, liquid flow, arrows, etc. Sources: curseforge.com, codingame.com, minecraftsix.com

Community hosts 50k+ servers on 10+ distributions Minecraft servers: 2. Minecraft offered ‘as a Service’ Officially: Mojang Realms Unofficially: 50+ providers 1. Minecraft is important because 2. What is the ‘best’ Minecraft server: For lots of people Works consistently Sources: bstats.org

Which Minecraft-like Server Performs ‘Best’? Community hosts 50k+ servers on 10+ distributions Minecraft servers: 2. Minecraft offered ‘as a Service’ Officially: Mojang Realms Unofficially: 50+ providers Q: How to evaluate the scalability of Minecraft-like games? Q: How to make Minecraft-like games scale to millions? 1. Minecraft is important because 2. What is the ‘best’ Minecraft server: For lots of people Works consistently Sources: bstats.org

Opencraft: An Umbrella Project Yardstick A benchmark for Minecraft-like services Meerkat A prototype to explore novel scalability techniques for Minecraft Note: Opencraft only _starts_ with these two subprojects.

Yardstick A Benchmark for Minecraft-like Services

Performance evaluation tool for Minecraft-like games Goals: Yardstick: Goals Performance evaluation tool for Minecraft-like games Goals: Benchmark & compare server performance: Which architecture and/or implementation for Minecraft-like games performs ‘best’? Analyze server performance: Identify bottlenecks and performance issues

Yardstick: Design Overview Talk about Player emulation Vendorized Minecraft server Results processing and virtual environment

Yardstick: Experimental Setup Experiments performed on DAS-5 1 node: Minecraft server 5 nodes: Yardstick player emulation 1 node: Monitoring Workload consist of players that alternate between traveling (walking a large distance) and interacting (walking many short distances)

Yardstick: Latest Results (1/3) ≈ 100% tick utilization Talk about Player emulation Vendorized Minecraft server Results processing and virtual environment

Yardstick: Latest Results (2/3) ≈ 125 players Talk about Player emulation Vendorized Minecraft server Results processing and virtual environment

Yardstick: Latest Results (3/3) ≈ 160 Mbps outgoing Talk about Player emulation Vendorized Minecraft server Results processing and virtual environment

Meerkat A Prototype to Explore Novel Scalability Techniques for Minecraft

Meerkat: Improving Scalability by Reducing Communication large number of players complex world high amount of communication + We now want to focus on improving the scalabiltiy. Complex environment → Increased communication Highest impact: world data

Meerkat: Improving Scalability by Reducing Communication large number of players complex world allowing bounded inconsistency reduced amount of communication Challenge: be inconsistent without impacting player experience + Solution: Introduce inconsistency to improve performance without UX drop

Meerkat: Using the Conit Consistency Model Quantify inconsistency in the system using three metrics Staleness (how old is this update?) Numerical error (how large is the impact of this update?) Order error (how does this update relate to other updates?) Conits: use three dimensions to model (in)consistency Example: Far explosives have a large numerical error If someone blows up the casle, it really matters

Consistency Example: Current Approach Tick: 1 Server Client

Consistency Example: Current Approach Tick: 2 Server Client Server receives update

Consistency Example: Current Approach Tick: 3 Server Client Update sent to client

Consistency Example: Current Approach Tick: 4 Server Client

Consistency Example: Current Approach Tick: 5 Server Client

Consistency Example: Current Approach Tick: 5 Server Client

Consistency Example: Conits Tick: 1 Numerical Error Bound: 3 Server Client

Consistency Example: Conits Tick: 1 Numerical Error Bound: 3 Server Client Error = 1

Consistency Example: Conits Tick: 2 Numerical Error Bound: 3 Server Client Error = 2

Consistency Example: Conits Tick: 3 Numerical Error Bound: 3 Server Client Error = 3

Consistency Example: Conits Tick: 4 Numerical Error Bound: 3 Server Client Error = 0

Meerkat: Experimental Setup Experiments performed on DAS-5 Varying … … number of nodes … consistency bounds Workload of 100% writes (heaviest workload possible)

Meerkat: Initial Results Core message: between 0 and 50ms → clear improvement in throughput

Wrapping Up

Opencraft: Future Work Yardstick Realistic player emulation based on real-world message dumps Support for all major server implementations Complex interactions with the virtual environment Meerkat Evaluate scalability improvements … … when dynamically changing consistency bounds … when using realistic (server-client) network setups … when using realistic workloads Meerkat: → Dynamic bounds → Multi-hop conits → Realistic workloads

Minecraft server scalability varies across implementations Take-Home Message Minecraft server scalability varies across implementations Improved performance with (dynamic) conits is promising

Talk to us at these places: Opencraft @Large Research Delft University of Technology & Vrije Universiteit Amsterdam www.atlarge-research.com/opencraft opencraft@atlarge-research.com Jerom van der Sar J.vanderSar@atlarge-research.com Jesse Donkervliet J.Donkervliet@atlarge-research.com (So long, and thanks for all the fish)

Minecraft = Subject to Performance Optimization Undocked (Battery) Docked (A/C) Minecraft on Wii switch: docked vs undocked. Minecraft on Wii Switch: docked (A/C) vs undocked (Battery) Source: techspot.com

Meerkat: Using the conit consistency model A conit is a consistency unit, where: 1 conit = subset of game data + tolerated inconsistency Introduce conits to reduce consistency.

Meerkat: Initial Results

Meerkat: Initial Results