Sampling Partially Resident Textures via Residency Map

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current texture mapping techniques require all textures and associated mipmaps to be fully resident in video memory before rendering, which can lead to memory constraints and inefficiencies, especially when only partial resolution is needed for complex scenes.

Innovation Solution

A method for sampling partially resident texture data using a residency map descriptor, which includes information on how the residency map is stored and specifies registers for the residency map and mipmap descriptors, allowing for efficient retrieval of texture data from memory based on image samples and mipmap descriptors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If all textures and mipmaps are required to be fully resident in video memory before rendering, then texture quality and detail are improved, but memory usage increases and memory constraints are worsened

Engineering Contradiction:
Improvetexture qualityVSAvoidmemory usage
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent divides the texture residency requirement into segments: instead of requiring all textures and mipmaps to be fully resident, only the currently needed texture level is kept resident in video memory while other levels remain in system memory. This segmentation allows high-quality textures to be used when needed without permanently occupying large video memory space.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic texture residency where texture data is loaded into video memory only when needed for rendering and unloaded when not needed. The system dynamically adjusts which texture levels are resident based on current rendering requirements, allowing texture quality to be maintained when needed while optimizing memory usage at other times.

Inventive Principle:
Principle #15Dynamics

2Speed

If all textures and mipmaps are required to be fully resident in video memory before rendering, then texture access speed is improved, but memory constraints and rendering efficiency are worsened

Engineering Contradiction:
Improvetexture access speedVSAvoidrendering efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent uses preliminary action by pre-loading only the specific texture levels that will be needed for the current rendering operation into video memory before rendering begins. This ensures fast access speed for the needed textures while avoiding the overhead of having all textures permanently resident, thus improving rendering efficiency.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If partial texture residency is allowed, then memory usage is optimized, but additional memory access operations are required

Engineering Contradiction:
Improvememory usageVSAvoidmemory access operations
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism (texture residency management system) that automatically handles the complexity of partial texture residency. This intermediary manages which texture levels are resident in video memory and coordinates loading/unloading operations, making the complexity transparent to the rendering process while optimizing memory usage.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12106418B2Sampling for partially resident textures
Publication Date: 2024.10.01 ADVANCED MICRO DEVICES INC
  • US12106418B2 patent drawing
  • US12106418B2 patent drawing
  • US12106418B2 patent drawing

AI summary

Devices, systems, and methods for sampling partially resident texture data. An instruction which includes a residency map descriptor is received. The instruction is executed to retrieve partially resident texture data from a mipmap stored in a memory based on the residency map descriptor. The residency map descriptor includes a residency map.