Graphics Command Compression via Palette Arrays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face inefficiencies in data transmission and processing due to the large size of graphics processing commands, particularly in distributed rendering scenarios, where reducing command data size is crucial to minimize network latency and maximize bandwidth utilization.

Innovation Solution

A method for compressing graphics processing commands, including vertex and texture data, using techniques such as constructing data arrays from command operations like glGenBuffers, glBindBuffer, glBufferData, and glBufferSubData, and determining specific data types like integers and float points to identify compressible data elements, thereby reducing the data size transmitted over networks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If graphics processing commands are transmitted in uncompressed form, then processing accuracy and completeness are maintained, but network bandwidth utilization deteriorates and transmission latency increases

Engineering Contradiction:
Improveprocessing accuracyVSAvoidbandwidth utilization
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies parameter changes by transforming the data representation format from uncompressed to compressed form. Specifically, it converts vertex data from full-precision floating-point format to compressed formats such as 16-bit or 8-bit representations, and transforms command buffers into compact instruction sequences. This parameter transformation maintains processing accuracy while significantly reducing data size for transmission.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent uses copying by creating compressed representations of the original graphics data. It generates compact copies of vertex buffers, index buffers, and command buffers that can be transmitted efficiently over the network. These compressed copies are then decompressed at the receiving end to reconstruct the original data for processing, enabling efficient bandwidth utilization without loss of processing fidelity.

Inventive Principle:
Principle #26Copying

2Loss of energy

If data compression is applied to graphics processing commands, then network bandwidth utilization is improved and latency is reduced, but processing complexity increases

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidprocessing complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing compression of graphics processing commands before transmission. The sending system pre-compresses vertex buffers, index buffers, and command buffers into compact formats, and pre-prepares decompression routines at the receiving end. This advance preparation eliminates the need for complex real-time compression during transmission, reducing processing complexity while maintaining bandwidth efficiency.

Inventive Principle:
Principle #10Preliminary action

3Speed

If compressed data formats are used for graphics commands, then transmission speed is improved, but data integrity and precision may deteriorate

Engineering Contradiction:
Improvetransmission speedVSAvoiddata precision
Core Design Contradiction:
SpeedVSManufacturing precision

Solution Approach 1:

The patent applies dynamics by implementing adaptive precision handling in the compression scheme. It dynamically adjusts the compression level and precision based on the specific data type and requirements. For example, it uses higher precision for critical geometric data while applying more aggressive compression to less sensitive attributes. The decompression process dynamically restores precision to match the original data requirements, ensuring data integrity is maintained throughout transmission.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12051130B2Method and apparatus for compression of graphics processing commands
Publication Date: 2024.07.30 INTEL CORP
  • US12051130B2 patent drawing
  • US12051130B2 patent drawing
  • US12051130B2 patent drawing

AI summary

Embodiments are generally directed to methods and apparatuses for compression of graphics processing commands. An embodiment of a method for data processing comprising: capturing a first graphics processing command including vertex data; constructing a data array having a plurality of data vectors from the vertex data; determining whether the data array is of a specific data type; in response to the data array being of the specific data type, determining whether a semantic property of the data array is color; and in response to the semantic property being color, determining a plurality of representative data vectors that are different from each other in the plurality of data vectors; constructing a palette array having a plurality of palette vectors each containing data elements of a corresponding one of the plurality of representative data vectors and a palette vector identifier; and generating a modified first graphics processing command by replacing the data array with the palette array and a sequence of palette vector identifiers.