Virtual Machine Group Reuse for Cloud Game Session Enablement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud game systems face inefficiencies in resource usage due to the time-consuming process of creating and maintaining virtual machines (VMs) for user sessions, leading to delays and increased computing resource consumption, especially when the demand for specific game types is low, resulting in wasted resources and a negative user experience.

Innovation Solution

Implementing a virtual machine group (VMG) where multiple VMs are preloaded with selected game types, allowing for quick allocation and reuse of VMs based on user demand, and dynamically managing the number of active VMs by shutting down excess instances to conserve resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a dedicated physical server is allocated to support user needs, then service reliability is improved, but resource utilization efficiency deteriorates

Engineering Contradiction:
Improveservice reliabilityVSAvoidresource utilization efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

Multiple virtual machines are consolidated onto a single physical server, allowing multiple users to share the same hardware infrastructure. This merging approach maintains service reliability for each user while dramatically improving overall resource utilization efficiency by eliminating the need for dedicated physical servers for each user.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The physical server is designed to host multiple virtual machines that can serve different users and potentially different game types simultaneously. This multi-functionality allows the same hardware resource to be universally utilized across multiple service instances, improving efficiency while maintaining the reliability needed for each individual service.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If a virtual machine is created for each user, then user isolation and security are improved, but system complexity and resource consumption increase

Engineering Contradiction:
Improveuser isolation and securityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the physical server into multiple isolated virtual machines, each providing user-specific isolation and security boundaries. This segmentation maintains the necessary user isolation while managing complexity through virtualization abstraction, where the virtualization layer handles the complexity of managing multiple isolated environments on a single physical platform.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virtualization layer acts as an intermediary between the physical hardware and individual users, managing the complexity of resource allocation, isolation, and security. This intermediary layer simplifies the overall system by providing a standardized interface for creating and managing virtual machines without requiring direct complex hardware management for each user.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If VMs are preloaded with selected game types, then game session enablement speed is improved, but memory and storage resource consumption increase

Engineering Contradiction:
Improvegame session enablement speedVSAvoidmemory and storage resource consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

Virtual machines are preloaded with selected game types before users request them. This preliminary action ensures that when a user requests a game, the VM is already configured and ready, dramatically reducing session enablement time. The system balances this by selectively preloading only the most demanded game types rather than all possible games.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the state of virtual machines between different operational modes (active, idle, suspended, terminated) based on usage patterns. This parameter change allows the system to optimize resource consumption by transitioning VMs to lower-resource states when not in use, while maintaining the ability to quickly activate them when needed, thus balancing speed improvement with resource conservation.

Inventive Principle:
Principle #35Parameter changes

4Loss of energy

If excess active VMs are shut down, then resource conservation is improved, but session restart time increases

Engineering Contradiction:
Improveresource conservationVSAvoidsession restart time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The system dynamically manages the state of virtual machines based on real-time usage patterns and demand. VMs are transitioned between active, idle, suspended, and terminated states depending on whether they are currently in use or have been idle for a certain period. This dynamic approach allows the system to conserve resources by shutting down or suspending excess VMs while maintaining a pool of ready-to-use VMs for quick session resumption, thus balancing resource conservation with minimal restart time.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11169858B2Faster game enablement utilizing virtual machine reuse
Publication Date: 2021.11.09 NVIDIA CORP
  • US11169858B2 patent drawing
  • US11169858B2 patent drawing
  • US11169858B2 patent drawing

AI summary

The disclosure is directed to a method of operating a game system where virtual machines (VM) supporting the game session can be reused by a second user after a first user ends their game session. In another aspect, the VM can be shut down if the number of VMs exceeds a target number of VMs or if an abnormality is detected in the VM. In another aspect, VMs can be instantiated in order to meet a target number of VMs. In another aspect, a software application is disclosed to execute the methods described herein. In another aspect, a game services system is disclosed that can operate a VM group, maintain a status parameter of the instantiated VMs, and service user requests for game sessions.