Graphics Pipeline Vertex Packet Assembly for Lower Processing Waste

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphics processing systems inefficiently manage vertex attribute processing and primitive assembly, leading to unnecessary resource consumption and processing delays.

Innovation Solution

Organize vertices into vertex packets and trigger vertex attribute processing after primitive assembly, managing packets rather than individual vertices, and optimize primitive assembly to eliminate incomplete or degenerate primitives.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If vertex attribute processing is performed before primitive assembly, then vertices are ready for processing, but unnecessary computations and resource wastage occur

Engineering Contradiction:
Improvecomputational resource wastageVSAvoidprocessing efficiency
Core Design Contradiction:
Loss of energyVSProductivity

Solution Approach 1:

The patent applies preliminary action by performing primitive assembly before vertex attribute processing. The system first assembles primitives from vertex indices, then triggers vertex attribute processing only for primitives that are actually assembled and need processing. This reverses the traditional order and avoids processing vertices that won't be used, eliminating computational waste while maintaining processing readiness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the processing parameter order by switching from pre-processing all vertices to on-demand processing after assembly. Vertex attribute processing is triggered conditionally based on whether primitives are assembled, changing the state from proactive processing to reactive processing based on actual need.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If all vertices are processed individually, then each vertex can be managed separately, but tracking and management complexity increases

Engineering Contradiction:
Improvevertex tracking complexityVSAvoidvertex management
Core Design Contradiction:
Device complexityVSEase of operation

Solution Approach 1:

The patent merges individual vertex tracking into packet-based batch tracking. Instead of managing each vertex separately, the system groups vertices into packets and tracks packets as units. This reduces tracking complexity by consolidating multiple vertex management operations into single packet-level operations, making the system easier to manage while maintaining individual vertex processing capability.

Inventive Principle:
Principle #5Merging (Combining)

3Loss of time

If vertex attribute processing is performed early, then vertices are prepared in advance, but processing time and latency increase

Engineering Contradiction:
Improveprocessing latencyVSAvoidrendering performance
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies preliminary action in reverse by performing primitive assembly first, then triggering vertex attribute processing only when needed. This eliminates unnecessary preliminary processing of vertices that won't be used, reducing wasted time and latency while maintaining readiness for actual processing through on-demand execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12626324B2Graphics processing systems
Publication Date: 2026.05.12 ARM LTD
  • US12626324B2 patent drawing
  • US12626324B2 patent drawing
  • US12626324B2 patent drawing

AI summary

When generating a graphics processing output by assembling a sequence of one or more of primitives to be processed from a set of vertex indices provided for the output based on primitive configuration information provided for the output, one or more vertex packets are generated using the vertex indices for the assembled primitives, each vertex packet comprising a plurality of vertices of the assembled primitives. After a threshold number of vertices have been allocated to a vertex packet, vertex attribute processing for the vertices of the vertex packet is triggered, to thereby generate a vertex packet comprising processed vertex attributes for the vertices of the vertex packet. The assembled primitives and the generated vertex packets are then provided to later stages of the graphics processing pipeline for processing.