Capsule: Efficient Player Isolation for Datacenters
Zhouheng Du, Nima Davari, Li Li, Wei Sen Loi, Nodir Kodirov
TL;DR
Capsule addresses cloud gaming datacenter inefficiency by multiplexing GPU and other resources across multiple players inside a single game engine instance. It introduces Capsule Storage and an ECS-based architecture to provide per-player isolation and cross-player sharing without requiring application changes, demonstrating up to 2.25x more players with sublinear resource growth. Implemented in the O3DE engine, Capsule reduces GPU, VRAM, CPU, and RAM footprints while maintaining player experience, and shows generalizability to other engines and cloud providers. This approach offers a practical path to higher datacenter utilization for diverse graphics workloads in cloud gaming scenarios.
Abstract
Cloud gaming is increasingly popular. A challenge for cloud provider is to keep datacenter utilization high: a non-trivial task due to application variety. These applications come in different shapes and sizes. So do cloud datacenter resources, e.g., CPUs, GPUs, NPUs. Part of the challenge stems from game engines being predominantly designed to run only one player. For example, one player in a lightweight game might utilize only a fraction of the cloud server GPU. The remaining GPU capacity will be left underutilized, an undesired outcome for the cloud provider. We introduce Capsule, a mechanism to seamlessly share one GPU, and other cloud servers resources, across multiple players. Sharing makes the cost of multiple players sublinear. We implemented Capsule in O3DE, a popular open source game engine. Our evaluations show that Capsule increases datacenter resource utilization by accommodating up to 2.25x more players, without degrading player gaming experience. This is the product of Capsule using up to 1.43x less GPU, 3.11x less VRAM, 3.7x less CPU, and 3.87x less RAM compared to the baseline. Capsule is also application agnostic. We ran four applications on Capsule-based O3DE with no application changes. Our experiences with four applications, three servers with different hardware specifications, including the one with four GPUs, and multi-server cluster show that Capsule design can be adopted by other game engines to increase datacenter utilization across cloud providers.
