Graphics Processor Blocking Circuit for Overlapping Memory Deallocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processors experience latency due to memory recycling at the end of a fragment kick and require time for housekeeping functions, limiting the ability to overlap memory deallocation with fragment processing of the next task.

Innovation Solution

A graphics processor is designed with geometry and fragment processing logic that allows for overlapping of memory deallocation with the processing of subsequent tasks, using a memory management circuit to track memory regions and a blocking circuit to prevent premature deallocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory deallocation is performed at the end of a fragment kick, then memory management correctness is ensured, but processing latency increases and productivity decreases

Engineering Contradiction:
Improvememory management correctnessVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by allowing the fragment processing pipeline to begin processing the next task before the memory deallocation of the previous task is complete. The blocking circuit prevents premature access to memory regions that are still being deallocated, ensuring correctness while enabling overlapping operations. This resolves the contradiction by performing memory deallocation in advance of when it would traditionally block subsequent processing.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If memory deallocation is overlapped with fragment processing, then productivity improves, but the risk of accessing deallocated memory increases

Engineering Contradiction:
Improveprocessing throughputVSAvoidmemory access safety
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The blocking circuit serves as an intermediary mechanism that mediates between the fragment processing logic and the memory management circuit. It receives indicators from the memory management circuit about ongoing deallocation operations and uses these to control access by the fragment processing logic. This intermediary ensures that processing can overlap with deallocation while preventing unsafe access to memory regions that are still being freed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If a blocking circuit is implemented to prevent premature deallocation, then memory access safety is ensured, but device complexity increases

Engineering Contradiction:
Improvememory access safetyVSAvoidcircuit complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The blocking circuit is implemented as a segmented, modular component that integrates into the existing graphics processor architecture. It is divided into distinct functional units: a first blocking circuit for geometry processing logic and a second blocking circuit for fragment processing logic. Each blocking circuit receives specific indicators from the memory management circuit and controls access for specific processing logic, reducing overall complexity through functional segmentation.

Inventive Principle:
Principle #1Segmentation

4Reliability

If memory deallocation waits for all spatial units to be processed, then memory management correctness is ensured, but loss of time increases

Engineering Contradiction:
Improvememory management correctnessVSAvoiddeallocation latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by initiating memory deallocation operations before the fragment processing of all spatial units is complete. The memory management circuit begins deallocating memory regions as soon as the associated spatial units have been processed, rather than waiting for all spatial units across all tasks to be processed. This reduces deallocation latency while maintaining correctness through the blocking circuit's safety mechanisms.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250182235A1Processor having first and second pipelines and blocking circuit enabling second pipeline to process tasks during deallocation of memory allocated to first pipeline
Publication Date: 2025.06.05 IMAGINATION TECH LTD
  • US20250182235A1 patent drawing
  • US20250182235A1 patent drawing
  • US20250182235A1 patent drawing

AI summary

A processor includes a first processing pipeline, a second processing pipeline and a memory management that allocates memory regions from memory for the first processing pipeline to write the data of each of a first of a sequence of tasks, and deallocates each of the memory regions after the data therein has been processed by the second processing pipeline. A blocking circuit enables the second processing pipeline to start processing a second sequence of tasks while the memory management circuit is still deallocating some of the memory regions allocated to the data portions of the first of said sequence of tasks, the blocking circuit preventing identifiers of the data portions of the second task being passed to the memory management circuit until the memory management circuit indicates that it has completed deallocating the memory regions allocated to all the data portions of the first task.