GPU Shared-Memory Frame Pipelining for Low-Lag Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional graphics processing units (GPUs) in cloud gaming systems render frames and then queue them for encoding, leading to longer processing times and potential lags due to the sequential nature of rendering and encoding processes.
Innovation Solution
Implement a simulated library in shared memory within the GPU to divert media frame generation input events, allowing frames to be queued for encoding before rendering is complete, thereby pipeline the rendering and encoding processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If frames are rendered and then queued for encoding sequentially, then the rendering and encoding processes are simple to implement, but the processing time increases and lags occur
Solution Approach 1:
The patent applies preliminary action by queuing frames for encoding before the rendering process is complete. The system captures frames and queues them for encoding in advance, allowing the encoding process to start before rendering finishes. This overlapping of operations reduces the total processing time and eliminates the sequential bottleneck, directly resolving the contradiction between simple implementation and processing speed.
Solution Approach 2:
The patent implements continuity of useful action by maintaining overlapping rendering and encoding operations. While frames are being rendered, the encoding process continues on previously queued frames, ensuring that both operations are performed continuously without idle waiting time. This continuous pipeline execution maximizes productivity while minimizing the loss of time associated with sequential processing.
2Ease of operation
If frames are queued for encoding after rendering is complete, then the encoding queue is simple to manage, but processing delays and lags increase
Solution Approach 1:
The system performs preliminary action by capturing and queuing frames for encoding before rendering completes. This advance queuing allows the encoding process to proceed in parallel with rendering, reducing the time delay while the queue management remains simplified through automated hardware-assisted coordination between rendering and encoding components.
3Productivity
If rendering and encoding are performed sequentially, then hardware resource usage is low, but processing time and lags increase
Solution Approach 1:
The patent implements continuity of useful action by maintaining overlapping rendering and encoding operations. The system keeps both rendering and encoding processes active simultaneously, maximizing GPU resource utilization and frame processing throughput. This continuous pipeline execution increases productivity and frame rate while efficiently managing hardware resources through coordinated parallel processing.
Data Source
AI summary
The disclosed computer-implemented method includes instantiating a simulated library in a shared memory that is shared between a plurality of hardware components in a graphics processing unit (GPU), diverting media frame generation input events produced as part of a multimedia application to the simulated library in the shared memory, selecting at least one media frame for rendering, according to the media frame generation input events, from within the simulated library in the shared memory, queueing the selected media frame for encoding before rendering of the selected media frame is complete and, upon determining that the selected media frame has been rendered, encoding the rendered media frame according to the queue. Various other methods, systems, and computer-readable media are also disclosed.


