Graphics Processor Configuration Mapper for Resilient Interface Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The inefficiency of GPU/CPU interfaces in modern graphics processing units (GPUs) due to significant data movement and CPU cycles required for constructing command buffers, especially when dealing with mismatches between graphics APIs and hardware configurations, leading to increased CPU engagement and driver overhead.

Innovation Solution

A graphics processor interface that uses a configuration mapper to map a logical view of configuration memory to a physical view, allowing updates to be submitted via a command buffer with logical addresses and masks, reducing the need for direct updates and minimizing CPU overhead by using indirect updates and a master bitmask to handle unused hardware stages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If GPU commands are placed directly into command buffers, then the interface is simple, but significant data movement is required and CPU cycles are consumed

Engineering Contradiction:
Improveinterface complexityVSAvoiddata movement efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent introduces an indirect update mechanism as an intermediary between the CPU and GPU configuration memory. Instead of directly writing configuration data to GPU memory, the system uses a command buffer with logical addresses and masks that indirectly update only the necessary hardware stages. This mediator reduces the amount of data movement required while maintaining interface simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If references to GPU commands are placed in command buffers, then data movement is reduced, but the construction of command buffers requires significant CPU cycles

Engineering Contradiction:
Improvedata movement efficiencyVSAvoidCPU cycle consumption
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies local quality by using logical addresses and masks to selectively update only the specific hardware stages that need configuration changes. Instead of constructing complete command buffers with all possible configuration data, the system locally updates only the necessary portions using bitmask operations. This reduces CPU cycle consumption by avoiding the construction of unnecessary command buffer data while maintaining the benefits of indirect updates.

Inventive Principle:
Principle #3Local quality

3Ease of operation

If direct updates are used for configuration memory, then updates are straightforward, but CPU overhead increases due to mismatches between graphics APIs and hardware configurations

Engineering Contradiction:
Improveupdate simplicityVSAvoiddriver overhead
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent creates a universal interface mechanism that works across different graphics APIs and hardware configurations. The command buffer with logical addresses and masks serves as a universal update mechanism that can handle various API-to-hardware mismatches without requiring API-specific or hardware-specific driver code. This multi-functional approach reduces driver overhead by providing a single, unified method for configuration updates that adapts to different scenarios.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Reliability

If all hardware stages are updated, then configuration is complete, but unused hardware stages increase CPU overhead and data movement

Engineering Contradiction:
Improveconfiguration completenessVSAvoidupdate efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses parameter changes through bitmask operations to dynamically control which hardware stages are updated. The mask parameter acts as a filter that enables or disables updates to specific hardware stages based on their usage status. This allows the system to maintain configuration completeness for used stages while excluding unused stages from updates, thereby improving update efficiency without sacrificing reliability.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10733692B2Interface apparatus and method resilient to graphics hardware changes
Publication Date: 2020.08.04 INTEL CORP
  • US10733692B2 patent drawing
  • US10733692B2 patent drawing
  • US10733692B2 patent drawing

AI summary

Apparatus and method for resilient interface for updating a graphics processor. For example, one embodiment of an apparatus comprises a graphics processor; and a configuration memory of the graphics processor to be subdivided into a plurality of configuration regions associated with a corresponding plurality of graphics pipeline stages and/or functional units, wherein a host processor executing a graphics driver is to submit a graphics processor configuration update to a command buffer, the graphics processor configuration update including at least one logical memory address associated with a logical view of the configuration memory and configuration data to be used to modify at least one configuration region associated with the at least one logical memory address, and wherein the logical memory address is to be used to identify a corresponding physical memory address for at least one configuration region corresponding to at least one of the graphics pipeline stages and/or functional units, the at least one configuration region to be responsively updated.