Cloud Gaming Save Data Caching for Load Time Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud gaming systems face significant load time delays due to the remote storage of game save data, leading to a poor user experience as data needs to be retrieved from distant data centers over the internet, which can result in longer wait times for game access and potential user disengagement.
Innovation Solution
Implementing a dynamic caching system that prioritizes and pre-retrieves game save data based on user access patterns, caching it in a local data center where the game code is executed, thereby reducing the need for internet-based data retrieval during game loading.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If save data is stored in remote data centers, then storage capacity and data management are improved, but data retrieval time and user wait time increase
Solution Approach 1:
The system performs preliminary actions by predicting which save data the user is likely to access next and pre-retrieving it to the local data center before the user actually needs it. This is achieved by analyzing user access patterns, game state information, and save data metadata to proactively cache data in advance, thereby eliminating wait time when the user requests the save data.
Solution Approach 2:
The system segments save data retrieval operations by prioritizing and selectively caching only the most likely-to-be-accessed save data files, rather than retrieving all save data. This segmentation allows the system to focus resources on high-priority data while maintaining the benefits of remote storage for less frequently accessed data.
2Speed
If all save data is retrieved to local data center, then access speed is improved, but network bandwidth consumption and system complexity increase
Solution Approach 1:
The system applies partial action by retrieving only a subset of save data to the local data center - specifically, the save data that is predicted to be most likely accessed by the user. This selective approach provides sufficient access speed improvement while avoiding the excessive network bandwidth consumption that would result from retrieving all save data locally.
Solution Approach 2:
The system changes the parameter of data location from always remote to dynamically determined (local or remote) based on predicted access likelihood. This parameter change allows the system to optimize between access speed and network bandwidth consumption by placing data in the most appropriate location for each specific case.
3Ease of operation
If save data is cached locally, then user experience and game load time are improved, but local storage requirements and caching system complexity increase
Solution Approach 1:
The system applies self-service by automatically analyzing user access patterns, predicting which save data will be needed, and autonomously making caching decisions without requiring manual intervention. The system monitors its own performance and dynamically adjusts caching strategies based on observed user behavior, thereby improving user experience while managing complexity through automation rather than manual configuration.
4Loss of time
If save data retrieval is triggered on game session initiation, then save data access time is reduced, but game code loading time increases
Solution Approach 1:
The system performs preliminary save data retrieval during game session initiation, but uses intelligent prediction to determine which specific save data to retrieve. By analyzing user patterns and game state, the system pre-loads only the most likely-to-be-accessed save data during the game code loading phase, thereby reducing save data access time without significantly extending the overall game code loading time.
Data Source
AI summary
A cloud gaming system is disclosed. One example includes a game server that is configured to execute video games. The game server provides an interface for a remote client device to interface with the game server and request that games be played by streaming video frames to the remote client device. The game server is located in a first data center. A storage server connected to the game server over a network connection in the first data center. A save data server located in a second data center. Data selection logic of the game server is configured to retrieve save data from the save data server and cache the save data to a save data disk of the game server. The data selection logic is configured to automatically retrieve the save data from the second data center to the first data center upon detecting a session initiation for a user account used via the remote client device. The save data including a current state of game play that represents activity performed during play of a game. The save data is used to render the current state of game play after game logic of the game is loaded for the session initiation.


