Outatime: Using Speculation to Enable Low-Latency Continuous Interaction for Mobile Cloud Gaming

Gaming on phones, tablets and laptops is very popular. Cloud gaming - where remote servers perform game execution and rendering on behalf of thin clients that simply send input and display output frames - promises any device the ability to play any game any time. Unfortunately, the reality is that wide-area network latencies are often prohibitive; cellular, Wi-Fi and even wired residential end host round trip times (RTTs) can exceed 100ms, a threshold above which many gamers tend to deem responsiveness unacceptable. In this paper, we present Outatime, a speculative execution system for mobile cloud gaming that is able to mask up to 120ms of network latency. Outatime renders speculative frames of future possible outcomes, delivering them to the client one entire RTT ahead of time, and recovers quickly from mis-speculations when they occur. Clients perceive little latency. To achieve this, Outatime combines: 1) future state prediction; 2) state approximation with image-based rendering and event time-shifting; 3) fast state checkpoint and rollback; and 4) state compression for bandwidth savings. To evaluate the Outatime speculation system, we use two high quality, commercially-released games: a twitch-based first person shooter, Doom 3, and an action role playing game, Fable 3. Through user studies and performance bench- marks, we find that players strongly prefer Outatime to traditional thin-client gaming where the network RTT is fully visible, and that Outatime successfully mimics playing across a low-latency network.

[1]  Jason Flinn,et al.  Speculative execution in a distributed file system , 2005, SOSP '05.

[2]  James F. O'Brien,et al.  Self-refining games using player analytics , 2014, ACM Trans. Graph..

[3]  Jay Torborg,et al.  Talisman: commodity realtime 3D graphics for the PC , 1996, SIGGRAPH.

[4]  Feng Qian,et al.  A close examination of performance and power characteristics of 4G LTE networks , 2012, MobiSys '12.

[5]  Wim Lamotte,et al.  Objective and subjective evaluation of the influence of small amounts of delay and jitter on a recent first person shooter game , 2004, NetGames '04.

[6]  Mark Claypool,et al.  Thin to win? Network performance analysis of the OnLive thin client game system , 2012, 2012 11th Annual Workshop on Network and Systems Support for Games (NetGames).

[7]  Jon Howell,et al.  Crom: Faster Web Browsing Using Speculative Execution , 2010, NSDI.

[8]  Srinivasan Seshan,et al.  Donnybrook: enabling large-scale, high-speed, peer-to-peer games , 2008, SIGCOMM '08.

[9]  Srinivasan Seshan,et al.  Colyseus: A Distributed Architecture for Online Multiplayer Games , 2006, NSDI.

[10]  Brian Beckman,et al.  Time warp operating system , 1987, SOSP '87.

[11]  Eduardo Cuervo,et al.  Enhancing mobile devices through code offload , 2012 .

[12]  Jon Howell,et al.  Leveraging Legacy Code to Deploy Desktop Applications on the Web , 2008, OSDI.

[13]  Michael J. Griffin,et al.  Compensating Lags in Head-Coupled Displays Using Head Position Prediction and Image Deflection , 1992 .

[14]  Lars C. Wolf,et al.  Analysis of factors affecting players' performance and perception in multiplayer games , 2005, NetGames '05.

[15]  Richard Szeliski,et al.  Computer Vision - Algorithms and Applications , 2011, Texts in Computer Science.

[16]  Eduardo Cuervo Laffaye,et al.  Enhancing Mobile Devices through Code Offload , 2012 .

[17]  Leonard McMillan,et al.  Post-rendering 3D warping , 1997, SI3D.

[18]  Nick Feamster,et al.  Broadband internet performance: a view from the gateway , 2011, SIGCOMM.

[19]  Mark Allman,et al.  Comments on bufferbloat , 2013, CCRV.

[20]  Randima Fernando,et al.  GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics , 2004 .

[21]  Jason Flinn,et al.  Operating system support for application-specific speculation , 2011, EuroSys '11.

[22]  Feng Qian,et al.  An in-depth study of LTE: effect of network protocol and application behavior on performance , 2013, SIGCOMM.

[23]  Alec Wolman,et al.  Demo: DeLorean: using speculation to enable low-latency continuous interaction for mobile cloud gaming , 2014, MobiSys.

[24]  Chin-Laung Lei,et al.  How sensitive are online gamers to network quality? , 2006, CACM.

[25]  Mark Claypool,et al.  The effects of loss and latency on user performance in unreal tournament 2003® , 2004, NetGames '04.

[26]  Hari Balakrishnan,et al.  Mosh: An Interactive Remote Shell for Mobile Clients , 2012, USENIX Annual Technical Conference.

[27]  T. Başar,et al.  A New Approach to Linear Filtering and Prediction Problems , 2001 .

[28]  Paul Barford,et al.  Cell vs. WiFi: on the performance of metro area mobile connections , 2012, Internet Measurement Conference.

[29]  Peter A. Dinda,et al.  Experiences with Client-based Speculative Remote Display , 2008, USENIX Annual Technical Conference.