Incremental Draw Command Conversion to Reduce GPU Idle Time

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing OpenGL-to-Vulkan drawing command conversion technologies result in inefficient GPU utilization due to the CPU completing the conversion of an entire render pass before submitting commands to the GPU, leading to wasted resources and reduced frame rates.

Innovation Solution

A method where the CPU converts and submits Vulkan-based drawing commands to the GPU incrementally, determining the number of commands based on GPU load and frame rate, allowing for dynamic control of command submission to maximize GPU utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the CPU completes the conversion of an entire render pass before submitting commands to the GPU, then the conversion process is simple and straightforward, but the GPU utilization becomes inefficient and frame rates are reduced

Engineering Contradiction:
ImproveGPU utilizationVSAvoidCPU conversion time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the render pass into multiple batches of drawing commands. Instead of converting the entire render pass at once, the CPU converts and submits commands in incremental batches to the GPU. This allows the GPU to start executing commands earlier while the CPU continues converting remaining commands, thereby improving GPU utilization without excessively increasing CPU conversion time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary conversion and submission of drawing command batches before the entire render pass conversion is complete. By submitting batches to the GPU in advance, the GPU can begin processing earlier, reducing idle time and improving overall productivity while the CPU continues converting subsequent batches.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the CPU converts and submits all drawing commands before GPU execution, then command conversion is complete and accurate, but the GPU remains idle during the conversion process

Engineering Contradiction:
Improvecommand conversion accuracyVSAvoidGPU idle time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the drawing commands into multiple batches and submits them incrementally to the GPU. This segmentation allows the GPU to receive and execute commands continuously rather than remaining idle, while the CPU maintains conversion accuracy by processing each batch systematically before submission.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent ensures continuous useful action for the GPU by maintaining a steady stream of command batches being submitted during the conversion process. The GPU remains actively processing commands throughout the render pass conversion, eliminating idle time while the CPU continues converting subsequent batches in the background.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If incremental command submission is implemented, then GPU utilization is improved, but the complexity of the command processing system increases

Engineering Contradiction:
ImproveGPU utilizationVSAvoidcommand processing system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the rendering process into discrete batches that can be independently converted and submitted. This modular approach improves GPU utilization through incremental submission while managing system complexity by breaking down the processing into manageable, standardized units that can be handled by existing graphics pipeline components.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP4231147B1Drawing command processing method and related device therefor
Publication Date: 2026.03.25 HUAWEI TECH CO LTD
  • EP4231147B1 patent drawingFigure 1
  • EP4231147B1 patent drawingFigure 2
  • EP4231147B1 patent drawingFigure 3~4

AI summary

A drawing command processing method is disclosed. Vulkan-based instructions are submitted to a GPU after some OpenGL-based instructions rather than all OpenGL-based instructions in one render pass are converted into the Vulkan-based instructions, to avoid low GPU utilization caused because a CPU does not submit the Vulkan-based commands to the GPU in time in a process of converting the OpenGL-based commands into the Vulkan-based commands. This can maximize GPU utilization in some game scenarios, and improve a frame rate.