Hardware Evaluation Circuit for Parallel Processing Memory Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory allocation and deallocation mechanisms in data-parallel processing environments, such as GPUs, are inefficient and power-consuming due to the need for memory polling to check available space before write operations, leading to suboptimal resource utilization.

Innovation Solution

An evaluation circuit that receives memory access requests, determines available space in memory, and updates the register accordingly, allowing or denying allocation/deallocation requests based on available space, thereby optimizing memory usage and reducing power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory polling is used to check available space before write operations, then memory allocation safety is ensured, but power consumption and bandwidth usage increase

Engineering Contradiction:
Improvememory allocation safetyVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements preliminary action by pre-tracking available memory space in a register before write operations occur. The evaluation circuit continuously maintains an up-to-date count of available memory slots, so when a write operation is requested, the system can immediately check the register rather than polling memory. This advance preparation eliminates the need for repeated memory reads and reduces power consumption while ensuring allocation safety.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary component - a register that stores the count of available memory space - between the memory system and the write operations. This intermediary acts as a buffer that provides information about memory availability without requiring direct memory polling. The evaluation circuit uses this intermediary register to make allocation decisions, reducing direct memory access and associated power consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If memory polling is used to check available space, then allocation correctness is verified, but processing efficiency decreases

Engineering Contradiction:
Improveallocation correctnessVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary tracking of memory availability by maintaining a count in a register that is updated whenever memory space is allocated or freed. This preliminary action ensures that when write operations need to check availability, the information is already prepared and accessible, eliminating the need for time-consuming memory polling and improving processing efficiency while maintaining allocation correctness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The evaluation circuit serves itself by maintaining its own knowledge of available memory space through the register, rather than needing to query external memory structures. This self-service mechanism allows the system to verify allocation correctness independently and rapidly, improving processing efficiency without sacrificing reliability.

Inventive Principle:
Principle #25Self-service

3Reliability

If traditional memory allocation mechanisms are used, then memory access control is maintained, but bandwidth consumption increases

Engineering Contradiction:
Improvememory access controlVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent uses an intermediary register to store information about available memory space, which the evaluation circuit reads to make allocation decisions. This intermediary structure eliminates the need for high-bandwidth memory polling operations, as the register provides the necessary information with minimal bandwidth consumption while maintaining strict memory access control through the evaluation circuit's logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the essential information about memory availability from the memory system itself and places it in a separate, easily accessible register. By taking out only the critical count information rather than polling the entire memory structure, the system maintains access control while dramatically reducing bandwidth consumption associated with memory operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8972693B2Hardware managed allocation and deallocation evaluation circuit
Publication Date: 2015.03.03 ADVANCED MICRO DEVICES INC
  • US8972693B2 patent drawing
  • US8972693B2 patent drawing
  • US8972693B2 patent drawing

AI summary

A system and method is provided for improving efficiency, power, and bandwidth consumption in parallel processing. Rather than using memory polling to ensure that enough space is available in memory locations for, for example, write instructions, the techniques disclosed herein provide a system and method to automate this evaluation mechanism in environments such as data-parallel processing to efficiently check available space in memory locations before instructions such as write threads are allowed. These operations are handled efficiently in hardware, but are flexible enough to be implemented in all manner of programming models.