December 5, 2012

Brewing storm on cloud gaming. Are CDNs the saviors?

Cloud gaming has the potential to become a revolution in the way games are developed and distributed. Instead of requiring end-users to buy powerful computers to play modern games, cloud gaming performs the game computation remotely with the resulting output streamed as a video back to the end-users. Cloud gaming is thus expected to meet the demand of both gamers (who want platform independence), and game developers (who want to reduce their development cost and to gain flexibility in game updating). The enthusiasm has however been severely chilled when the main actor in the area, namely OnLive, ran out of money.

This debacle is not surprising. Many of cloud computing’s core design tenets conflict with cloud gaming. Cloud providers only offer general purpose computing resources that are located in a relatively small number of large data-centers. Unfortunately, these architectural decisions are in conflict with the needs of cloud gaming, which are interactive (hence highly latency-sensitive), and require specialized hardware resources, such as GPU and fast memory. Furthermore, many cloud data-center locations are chosen to minimize cooling and electricity costs, rather than to minimize latency to end-users.

Despite these drawbacks, many analysts still believe in cloud gaming. In a near future, the number of users served by physical machines should grow, data-centers should include GPUs, game engine should be re-designed… OnLive may just have been too early.

Still, the question of the number and the location of data-centers remains. Past studies have found that players begin to notice a delay of 100 ms. However, at least 60 ms of this latency should be attributed to playout and processing delay. Therefore, 40 ms is the threshold network latency that begins to appreciably affect user experience. 

In a recent academic paper, which was presented during the ACM Netgames conference, we have performed a large-scale measurement study to determine :
  • the percentage of population that can be served with today's cloud infrastructure. With EC2 infrastructure, less than 40% of population can play highly interactive games (network response time 40 ms), and only two third of population can play the least demanding games (network response time 80 ms). See Figure below.
Population covered by EC2 cloud infrastructure
  • the number of data-centers that are required to have a decent population coverage. Unfortunately even if 20 data-centers are deployed, less than half of population would have a network response time of 40 ms.
  • the gain of using a CDN infrastructure. They are significant. Today's CDN servers do not host GPU, and they are not designed to serve a very small number of users (only 8 users per server with state-of-the-art technologies). But who knows what will be CDN next strategical moves? Our study shows that embracing cloud gaming is a very good idea for CDNs, isn't it?
Population covered if EC2 is augmented with CDN smart edges