Jump to content

  • Log In with Google      Sign In   
  • Create Account


#ActualRavyne

Posted 27 August 2012 - 12:28 PM

Like other's have said, running on the host OS will give you the highest performance and thinnest margin for latency and throughput variance, but the biggest problem for your initial contact with VMs is probably that your VM provider was over-subscribing their host machines (say, putting 20 VMs on hardware that only *really* could support 12) on the assumption that not everyone is going to be doing heavy-lifting at once. The other issue, also mentioned, is that VMs are "usually" optimized for "bursty" workloads -- Ones that go through brief periods of intense work, rather than a constant load of moderate to heavy work -- often times they're only guarantee you the equivalent of a few-hundred megahertz, but allow you to burst to several times that when resources are available to make up for it. It's a perfectly acceptable strategy for latency-tolerant activities, but bad for things that need a latency guarantee.

I don't think it would be a wasted effort to experiment with hosting the game on a VM on a platform that you have direct control over, it might work out better and if the management benefits are worthwhile it might be worth taking a small performance hit. I'd imagine there must be a way to do it, because there are hosts that are optimized for gaming, and I can't imagine that's a manageable/profitable business without virtualization.

For what its worth, most bigger games separate out a lot of the sub-systems involved in getting into an online game -- login, match-making, load-balancing, purchases and persistent storage are the typical candidates. These all serve as the front and back-end to instances of the game server running on real hardware. Note also that you can run several *game instances* on one physical machine, just make sure to insulate them from one another so that if one goes down, they don't all go down (assuming the one that goes down doesn't take out the kernel itself).

#1Ravyne

Posted 27 August 2012 - 12:26 PM

Like other's have said, running on the host OS will give you the highest performance and thinnest margin for latency and throughput variance, but the biggest problem for your initial contact with VMs is probably that your VM provider was over-subscribing their host machines (say, putting 20 VMs on hardware that only *really* could support 12) on the assumption that not everyone is going to be doing heavy-lifting at once. The other issue, also mentioned, is that VMs are "usually" optimized for "bursty" workloads -- Ones that go through brief periods of intense work, rather than a constant load of moderate to heavy work -- often times they're only grantee you the equipment of a few-hundred megahertz, but allow you to burst to several times that when resources are available.

I don't think it would be a wasted effort to experiment with hosting the game on a VM on a platform that you have direct control over, it might work out better and if the management benefits are worthwhile it might be worth taking a small performance hit. I'd imagine there must be a way to do it, because there are hosts that are optimized for gaming, and I can't imagine that's a manageable/profitable business without virtualization.

For what its worth, most bigger games separate out a lot of the sub-systems involved in getting into an online game -- login, match-making, load-balancing, purchases and persistent storage are the typical candidates. These all serve as the front and back-end to instances of the game server running on real hardware. Note also that you can run several *game instances* on one physical machine, just make sure to insulate them from one another so that if one goes down, they don't all go down (assuming the one that goes down doesn't take out the kernel itself).

PARTNERS