Graphics Frame Pre-Rendering for VSYNC Stutter Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Devices often experience dropped frames due to insufficient rendering time between vertical synchronization signals, leading to visual stuttering and poor user experience, particularly in complex graphics operations.

Innovation Solution

A method and device that pre-render subsequent frames during the vertical synchronization period when a current frame is rendered, adjusting for frequency changes or dropped frames to ensure smooth animation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system renders frames in real-time between VSYNC signals, then the rendering process is simple and timely, but complex rendering operations cannot be completed in time leading to dropped frames

Engineering Contradiction:
Improveframe completion reliabilityVSAvoidrendering time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-rendering the next frame (N+1) during the VSYNC period while the current frame (N) is being displayed. This allows the rendering process to start before the frame is actually needed for display, ensuring that complex rendering operations are completed in advance and preventing dropped frames due to insufficient rendering time.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If the system allocates more time for complex rendering operations, then rendering quality improves, but the frame rate decreases and stuttering occurs

Engineering Contradiction:
Improverendering qualityVSAvoidframe rate
Core Design Contradiction:
Manufacturing precisionVSSpeed

Solution Approach 1:

By pre-rendering frames during VSYNC periods, the system prepares high-quality rendered frames in advance without interrupting the display timeline. This maintains the original frame rate while ensuring rendering quality, as the rendering work is performed during periods when the display is not actively showing new content.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent ensures continuous useful action by keeping the GPU engaged in rendering operations during VSYNC periods. Instead of leaving the GPU idle during these periods, the system continuously prepares the next frame, eliminating wasted time and maintaining a steady stream of high-quality frames ready for display.

Inventive Principle:
Principle #20Continuity of useful action

3Stability of the object's composition

If the system waits for VSYNC signals to render frames, then synchronization with display is maintained, but rendering operations are delayed causing visual stuttering

Engineering Contradiction:
Improvedisplay synchronizationVSAvoidrendering delay
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system performs preliminary rendering actions during VSYNC periods by pre-rendering the next frame while the current frame is being displayed. This maintains display synchronization because frames are still presented in order according to VSYNC signals, but eliminates rendering delays by having frames ready in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent utilizes the periodic nature of VSYNC signals to schedule pre-rendering operations. During each VSYNC period, the system periodically prepares the next frame, creating a rhythmic workflow that maintains synchronization while continuously advancing the rendering pipeline.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12367541B2Method and device for improving graphics performance
Publication Date: 2025.07.22 MEDIATEK SINGAPORE PTE LTD
  • US12367541B2 patent drawing
  • US12367541B2 patent drawing
  • US12367541B2 patent drawing

AI summary

A method for improving graphics performance is provided. The method includes: determining whether a current frame rendered into a frame buffer is a first frame in a first vertical synchronization (VSYNC) period defined by a first VSYNC signal; and pre-rendering a first next frame into the frame buffer in the first VSYNC period when the current frame is the first frame, wherein the first next frame is a frame that is next to the first frame.