GPU Shared-Function Cache with DSAT for 3D Pipeline State

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The inefficient management of state information fetching in shared functions of a 3D pipeline in graphics processing units (GPUs) leads to high fetch latency and multiple memory accesses due to binding tables and frequent state changes, resulting in increased cost and performance degradation.

Innovation Solution

Implementing a local cache structure within the GPU's shared function pipeline that includes a binding table cache (BTC), state cache (SC), and direct state access table (DSAT) to facilitate efficient caching and retrieval of resource state, using a content-addressable memory (CAM) for direct mapping from binding table offsets to state information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If state information is fetched using binding tables in the conventional manner, then the system can access resource state, but the fetch latency increases and multiple memory accesses are required

Engineering Contradiction:
Improvefetch latencyVSAvoidmemory access structure
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments the state information storage into multiple cache levels (L1 cache with binding table cache and L2 cache with state cache), dividing the monolithic memory access structure into hierarchical segments that can be accessed with different latencies, thereby reducing overall fetch latency while managing complexity through structured organization

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-fetching and caching binding table entries and state information in the L1 and L2 caches before they are actually needed for texture sampling operations, so that when state information is required, it is already available in fast cache memory rather than requiring slow main memory access

Inventive Principle:
Principle #10Preliminary action

2Productivity

If binding tables are used to manage resource state, then resource binding can be tracked, but the number of memory accesses increases

Engineering Contradiction:
Improvestate retrieval efficiencyVSAvoidmemory access time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent introduces cache memory structures (binding table cache in L1 and state cache in L2) as intermediary layers between the texture sampler and main memory, allowing state information to be retrieved from fast cache memory instead of slow main memory, thereby improving productivity while reducing memory access time

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical system of direct main memory access with a cache-based memory hierarchy, substituting the slow but simple main memory access mechanism with a faster but more complex cache system that uses associative memory and tag matching to accelerate state information retrieval

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If state information is cached with duplicate entries, then all state variations are available, but caching efficiency decreases and memory bandwidth is wasted

Engineering Contradiction:
Improvestate information coverageVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent uses the direct state access table to perform preliminary action by pre-computing and storing the correct index into the state cache before the texture sampling operation, so that the cache can directly retrieve the needed state information without generating duplicate entries or requiring broad memory coverage

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through the direct state access table that provides information about which state entries are actually needed, allowing the cache system to adjust its behavior and only cache the specific state information that will be used, thereby maintaining adaptability while reducing memory bandwidth consumption by avoiding caching of unnecessary duplicate entries

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20250299416A1Efficient caching of resource state for a shared function of a three-dimensional pipeline of a graphics processing unit
Publication Date: 2025.09.25 INTEL CORP
  • US20250299416A1 patent drawing
  • US20250299416A1 patent drawing
  • US20250299416A1 patent drawing

AI summary

Embodiments described herein are generally directed to a local cache structure within a shared function of a 3D pipeline that facilitates efficient caching of resource state. In an example, the cache structure is maintained within a sub-core of a GPU. The local cache structure includes (i) an SC having entries each containing a state of a binded resource, and (ii) a DSAT having entries each containing an index into the SC. The DSAT is tagged by SBTO values representing addresses of entries of a binding table. A request, including information indicative of an SBTO pointing to an entry within the binding table, is received for a state of a particular binded resource being accessed by a shared function of the 3D pipeline. Based on the SBTO and during a single access to the cache structure, a determination is made regarding whether the state of the particular binded resource is present.