Remote Graphics Rendering Command Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current remote graphics rendering solutions fail to simultaneously achieve high visual quality and low bandwidth constraints, particularly in demanding applications like gaming, due to limitations in data transfer and CPU utilization, especially on limited broadband networks.
Innovation Solution
A remote graphics rendering system that optimizes graphics command data by eliminating unnecessary information, applying precision changes, and performing data type compression algorithms, allowing for efficient transmission and rendering of images between a server and client, utilizing server-side processing to reduce data transfer and enhance client GPU performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If Frame Buffer Remoting is used to separate GPU from CPU, then physical separation is achieved, but visual quality deteriorates due to lossy compression
Solution Approach 1:
The patent extracts only the essential graphics command data needed for rendering from the complete frame buffer data, transmitting only this optimized subset over the network. This eliminates the need for compression of entire frame buffers while maintaining visual quality, as only necessary rendering instructions are transmitted remotely.
Solution Approach 2:
The patent changes the data transmission parameter from transmitting complete frame buffer pixels to transmitting optimized graphics command data with modified precision levels. By adjusting which data elements are transmitted and at what precision, the system maintains visual quality while reducing bandwidth requirements for remote rendering.
2Manufacturing precision
If complete graphics command data is transmitted remotely, then rendering accuracy is maintained, but bandwidth consumption increases
Solution Approach 1:
The system extracts and transmits only the essential graphics command data required for rendering, eliminating unnecessary data elements. This extraction process reduces the quantity of transmitted data while preserving the core rendering information needed to maintain accuracy.
Solution Approach 2:
The patent applies partial action by transmitting only the necessary portion of graphics data rather than complete data sets. By sending optimized command data with selective precision levels, the system achieves sufficient rendering accuracy with reduced bandwidth consumption.
3Device complexity
If server CPU processes all graphics work, then client CPU utilization is reduced, but client GPU performance is wasted
Solution Approach 1:
The patent segments the graphics processing workload between server and client components. The server CPU generates and optimizes graphics command data, while the client GPU executes these commands locally. This segmentation allows both server and client resources to be utilized effectively, preventing waste of client GPU performance.
Solution Approach 2:
The optimized graphics command data acts as an intermediary between the server CPU and client GPU. Rather than the server CPU directly controlling the client GPU or the client CPU processing all graphics work, this intermediate data structure enables efficient coordination that utilizes both server processing capabilities and client GPU performance.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An improved approach for a remote graphics rendering system that can utilize both server-side processing and client-side processing for the same display frame. Some techniques for optimizing a set of graphics command data to be sent from the server to the client include: eliminating some or all data, that is not needed by a client GPU to render one or more images, from the set of graphics command data to be transmitted to the client; applying precision changes to the set of graphics command data to be transmitted to the client; and performing one or more data type compression algorithms on the set of graphics command data.