Video Server GPU Parallel Rendering for Game Streaming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current server-side rendering of game video technologies face challenges in efficiently delivering high-quality video streams to multiple clients over a network, particularly in ensuring minimal display latency and adapting to varying client capabilities and network conditions.

Innovation Solution

A video server system that utilizes a single graphics processing unit (GPU) to render multiple video streams in parallel, with dynamic encoding pipelines and shared memory, allowing for adaptive encoding and quality adjustment based on client needs, and includes a client qualifier to assess client capabilities for optimized video delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single GPU is used to render multiple video streams in parallel, then resource utilization and productivity are improved, but the complexity of coordinating multiple encoding pipelines increases

Engineering Contradiction:
Improvevideo stream rendering throughputVSAvoidencoding pipeline coordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system divides the video rendering process into separate encoding pipelines, each handling specific video streams independently. This segmentation allows parallel processing of multiple video streams while maintaining manageable complexity through modular pipeline design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A shared memory buffer acts as an intermediary between the GPU rendering stage and multiple encoding pipelines. This mediator coordinates data flow between renderers and encoders, enabling parallel operation while simplifying synchronization complexity through a centralized buffer management interface.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If dynamic encoding pipelines are used to adapt to client needs, then adaptability and video quality are improved, but the complexity of managing multiple encoding configurations increases

Engineering Contradiction:
Improveclient-specific video delivery adaptationVSAvoidencoding configuration management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The encoding pipelines are designed to be dynamically configurable, allowing parameters such as resolution, bitrate, and codec selection to be adjusted based on client capabilities and network conditions. This dynamic adaptation enables optimal video delivery without requiring separate static pipelines for each configuration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes encoding parameters (resolution, bitrate, codec type) based on client qualification results and network conditions. By dynamically adjusting these parameters rather than maintaining separate pipelines, the system achieves adaptability while controlling complexity through parameter-based configuration.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If client qualification is performed to ensure minimum video quality, then video playback reliability is improved, but the time required for video delivery increases

Engineering Contradiction:
Improvevideo quality guaranteeVSAvoidclient qualification processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs client qualification in advance of actual video delivery, assessing client capabilities and network conditions before committing to a video stream configuration. This preliminary action ensures quality reliability is established upfront, allowing faster delivery once qualification is complete.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9940647B2Qualified video delivery advertisement
Publication Date: 2018.04.10 SONY INTERACTIVE ENTERTAINMENT LLC
  • US9940647B2 patent drawing
  • US9940647B2 patent drawing
  • US9940647B2 patent drawing

AI summary

A video server is configured to provide streaming video to players of computer games over a computing network. The video server can provided video of different games to different players simultaneously. This is accomplished by rendering several video streams in parallel using a single GPU. The output of the GPU is provided to graphics processing pipelines that are each associated with a specific client/player and are dynamically allocated as needed. A client qualifier may be used to assure that only clients capable of presenting the streaming video to a player at a minimum level of quality receive the video stream.