Selective GPU Data Caching via Cacheability Indicators

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data processing systems face challenges in efficiently managing memory bandwidth for GPU data, particularly in high-resolution graphics rendering, where consistent prefetching can lead to cache thrashing and reduced performance due to limited system level cache memory capacity.

Innovation Solution

A method for selectively caching GPU data in a system level cache memory based on memory attributes of graphics resources, using cacheability indicator information inserted into address translation table descriptors, allowing for controlled prefetching and optimizing cache usage between intra-frame and inter-frame units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If consistent prefetching is used to cache GPU data in system level cache memory, then memory bandwidth utilization is improved, but cache thrashing occurs and performance is reduced due to limited cache capacity

Engineering Contradiction:
Improvememory bandwidth utilizationVSAvoidGPU rendering performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent applies local quality by differentiating cacheability based on graphics resource types. Different memory attributes are assigned to different graphics resources (textures, geometry data, frame buffers) based on their specific access patterns and importance. This allows the system to selectively cache only those resources that benefit from prefetching, rather than uniformly caching all GPU data, thereby avoiding cache thrashing while maintaining high memory bandwidth utilization for critical resources.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter of cacheability by inserting cacheability indicator information into address translation table descriptors. This parameter change allows the system to dynamically control which graphics resources are cached in the system level cache memory. By modifying the cacheability parameter based on memory attributes and resource types, the system optimizes cache utilization to prevent thrashing while maintaining high bandwidth utilization for essential data.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If system level cache memory capacity is increased to reduce cache thrashing, then GPU performance is improved, but power consumption and memory bandwidth requirements increase

Engineering Contradiction:
ImproveGPU rendering performanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent extracts only the essential graphics resources that require caching by using cacheability indicators in address translation table descriptors. Instead of increasing overall cache capacity, the system selectively identifies and caches only those graphics resources with specific memory attributes that benefit from prefetching. This extraction approach maintains high GPU performance by ensuring critical data is cached while avoiding the power consumption penalty of expanding the entire cache system.

Inventive Principle:
Principle #2Taking out (Extraction)

3Quantity of substance

If selective caching based on memory attributes is implemented, then cache efficiency is improved, but device complexity increases due to additional control mechanisms

Engineering Contradiction:
Improvecaching efficiencyVSAvoidcache control mechanism complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements self-service by having the cacheability indicator information automatically inserted into address translation table descriptors during the address allocation process. The device driver or operating system kernel mode automatically determines cacheability based on memory attributes without requiring complex runtime decision-making or additional control hardware. This self-service approach improves caching efficiency while minimizing device complexity by leveraging existing address translation infrastructure.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10043235B2Method for caching GPU data and data processing system therefor
Publication Date: 2018.08.07 SAMSUNG ELECTRONICS CO LTD
  • US10043235B2 patent drawing
  • US10043235B2 patent drawing
  • US10043235B2 patent drawing

AI summary

Provided are a multimedia data processing system and a selective caching method. The selective caching method in the multimedia data processing system includes inserting cacheability indicator information into an address translation table descriptor undergoing memory allocation to a graphics resource when the graphics resource needs to be cached and selectively controlling whether or not to prefetch multimedia data of the graphics resource present in a main memory to a system level cache memory, with reference to cacheability indicator information during an address translation operation of a graphic processing unit (GPU). The inventive concept can be implemented in a wide variety of computer-based systems having a graphical output, such as cell phones, laptops, tablets, and personal computers, as only a few examples.