GPU Asynchronous Triple Buffering Without Interrupts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In safety-critical environments, traditional triple buffering techniques that rely on hardware or software interrupts are not feasible, leading to difficulties in ensuring reliable and artifact-free display data, particularly in systems where interrupts are not supported or desirable.

Innovation Solution

Implementing a method that uses two command processors within a GPU to asynchronously manage frame buffers, where one processor writes frame data to multiple buffers in a round-robin fashion and the other processor signals the display controller to show the contents of a selected frame buffer during display synchronization intervals, eliminating the need for interrupts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional triple buffering with interrupts is used, then display data reliability and artifact-free rendering are improved, but system complexity and certification difficulty increase in safety-critical environments

Engineering Contradiction:
Improvedisplay data reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the interrupt mechanism from the buffering system, removing the source of complexity and certification difficulty while preserving the essential triple buffering functionality. The display controller operates autonomously using ring buffer pointers and status flags instead of interrupts, eliminating race conditions and simplifying safety-critical system certification.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces ring buffer pointers and status flags as intermediary mechanisms between the CPU and display controller. These intermediaries enable asynchronous communication and buffer management without requiring interrupts, allowing the display controller to independently select and display frames from multiple buffers while maintaining system reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If asynchronous buffer writing and reading is implemented, then performance and latency are improved, but ensuring artifact-free display becomes difficult without interrupts

Engineering Contradiction:
Improveframe data throughputVSAvoidartifact-free display
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms through status flags (e.g., VSYNC flags, frame complete flags) that provide synchronization information between the CPU and display controller. These flags enable the display controller to determine when buffers are ready for display and when to switch between buffers, ensuring artifact-free rendering while maintaining asynchronous operation and high frame data throughput.

Inventive Principle:
Principle #23Feedback

3Stability of the object's composition

If VSYNC forcing is used to synchronize writes, then display synchronization is improved, but performance decreases and system implementation becomes more difficult

Engineering Contradiction:
Improvedisplay synchronizationVSAvoidframe generation performance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent implements dynamic buffer management where the display controller can independently select which buffer to display based on real-time buffer availability and synchronization status. The system dynamically switches between buffers using ring buffer pointers and VSYNC flags, allowing asynchronous frame generation at high performance while maintaining display synchronization without forcing VSYNC on the CPU.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11049211B2Methods and system for asynchronously buffering rendering by a graphics processing unit
Publication Date: 2021.06.29 CHANNEL ONE HOLDINGS INC
  • US11049211B2 patent drawing
  • US11049211B2 patent drawing
  • US11049211B2 patent drawing

AI summary

Systems and method for triple buffering of a graphics display without use of interrupts using at least two command buffers that are capable of operating asynchronously. A first command buffer generally contains commands, which, when executed, write frame data to a plurality of frame buffers in round-robin fashion. A second command buffer, which is executed asynchronously to the first command buffer, contains commands to handle waiting for frames to be completed, handle display timing (e.g., display synchronization interval, such vertical sync or vertical blanking intervals), and to cause the display controller to display the correct frames.