Multi-GPU Slice Encoding Using Predicated Reference Frames

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The division of encoding tasks between multiple GPUs in video processing systems can negatively impact the quality and performance of the encoded images, particularly in video codecs, due to synchronization challenges in motion estimation, which existing technologies have not adequately addressed.

Innovation Solution

The use of sets of predicated values to indicate when reconstructed slices of frames are available for encoding operations, allowing each GPU to independently encode frames without synchronization, thereby maintaining encoding quality and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple GPUs encode different slices of each frame concurrently, then encoding productivity is improved, but encoding precision deteriorates due to motion estimation quality loss

Engineering Contradiction:
Improveencoding speedVSAvoidmotion estimation quality
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent divides the frame into multiple slices that can be encoded independently by different GPUs. Each slice is processed separately with its own motion estimation, allowing concurrent encoding while maintaining reasonable quality within each slice boundary. The slice structure enables parallel processing without requiring complex inter-GPU synchronization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different encoding strategies to different regions of the frame. Motion estimation is performed independently for each slice, allowing local optimization of motion vectors and reference frame selection. This local approach maintains motion estimation quality within slices while enabling overall parallel processing across multiple GPUs.

Inventive Principle:
Principle #3Local quality

2Productivity

If multiple GPUs encode slices independently without synchronization, then encoding productivity is improved, but reliability deteriorates due to reference frame availability issues

Engineering Contradiction:
Improveencoding throughputVSAvoidreference frame consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs motion estimation and selects reference frames before the actual encoding process. By determining which reference frames to use in advance, each GPU can independently proceed with encoding without waiting for other GPUs to complete their reference frame processing. This preliminary action eliminates synchronization bottlenecks while maintaining reference frame consistency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates independent copies of reference frame data for each GPU. Each GPU receives its own copy of the necessary reference frames, allowing independent processing without requiring real-time synchronization or shared memory access. This copying approach ensures reliability by giving each GPU the reference data it needs without dependency on other GPUs.

Inventive Principle:
Principle #26Copying

3Manufacturing precision

If GPUs synchronize reference frame availability, then encoding precision is maintained, but productivity decreases due to waiting time

Engineering Contradiction:
Improvemotion estimation accuracyVSAvoidencoding efficiency
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent performs motion estimation and reference frame selection in advance, before the actual encoding begins. This preliminary preparation ensures that all necessary reference frames are ready and identified, allowing GPUs to proceed with encoding immediately without synchronization waiting. The motion estimation accuracy is maintained because reference frames are selected based on complete frame data, while productivity is improved by eliminating synchronization delays.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20260006221A1Parallel slice encoding across gpus with predicated multi-reference image
Publication Date: 2026.01.01 ATI TECHNOLOGIES ULC
  • US20260006221A1 patent drawing
  • US20260006221A1 patent drawing
  • US20260006221A1 patent drawing

AI summary

A processing system employs at least two graphics processing units (GPUs) to encode video. The GPUs employ sets of predicated values that indicate when reconstructed slices have been transferred between the GPUs. Furthermore, each GPU maintains a set of previous reference images, and encodes video slices based on the previous reference images having an expected predicated value. This allows each GPU to identify which reference images to use for encoding. This in turn allows the processing system to encode video frames without synchronization of the GPUs, while maintaining the quality of the encoded video.