Sub-Queue Age Matrices for Efficient Queue Vacancy Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing electronic devices that support out-of-order removal of items from queues face challenges in managing vacancies efficiently, leading to high power consumption and complex metadata circuitry, especially in larger queues.

Innovation Solution

The implementation of a hierarchy of sub-queues and the use of age matrices to track the relative ages of items in each sub-queue, allowing for efficient out-of-order removal and shifting of items to fill vacancies without the need for extensive shift operations or complex metadata management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If items are removed out of order from queues, then productivity is improved by making progress when downstream devices are available, but device complexity increases due to mechanisms needed to manage vacancies

Engineering Contradiction:
Improvequeue processing throughputVSAvoidvacancy management mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The queue is divided into multiple sub-queues, each independently managed with its own vacancy handling. This segmentation allows out-of-order removal within each sub-queue while simplifying overall vacancy management, as each sub-queue can be handled independently rather than requiring complex global vacancy tracking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An age matrix is introduced as an intermediary data structure to track the relative ages of items in sub-queues. This matrix serves as a mediator between the out-of-order removal operations and the vacancy management system, enabling efficient tracking without complex metadata operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If shift operations are used to fill vacancies in queues, then reliability of age order is maintained, but use of energy increases due to large number of shift operations

Engineering Contradiction:
Improveage order maintenanceVSAvoidpower consumption for shift operations
Core Design Contradiction:
Stability of the object's compositionVSUse of energy by moving object

Solution Approach 1:

The queue is segmented into sub-queues, which limits the number of items that need to be shifted when a vacancy occurs. Instead of shifting all remaining items in a large queue, only items within the affected sub-queue need to be shifted, dramatically reducing the number of operations and energy consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of performing full queue shifts to maintain age order, the system performs partial shifts only within sub-queues when necessary. The age matrix tracks relative ages efficiently, allowing the system to avoid excessive shift operations while maintaining the necessary age order information.

Inventive Principle:
Principle #16Partial or excessive action

3Ease of operation

If metadata such as pointers and age information is stored to track relative ages, then ease of operation is improved for out-of-order removal, but device complexity increases due to metadata circuitry and lookup requirements

Engineering Contradiction:
Improveout-of-order removal capabilityVSAvoidmetadata circuitry complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The age tracking information is organized in a two-dimensional matrix structure rather than traditional linear metadata storage. This dimensional change allows efficient tracking of relative ages between any two items in the sub-queue through matrix indexing, reducing the complexity of metadata management while enabling out-of-order removal operations.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

Metadata management is segmented by creating separate age matrices for each sub-queue. This division reduces the size and complexity of individual metadata structures compared to a single large metadata system, while still providing comprehensive age tracking information needed for out-of-order removal.

Inventive Principle:
Principle #1Segmentation

4Productivity

If larger queues are implemented, then productivity is improved by handling more transactions, but use of energy increases due to prohibitive metadata circuitry and lookup power

Engineering Contradiction:
Improvequeue capacityVSAvoidpower consumption for metadata operations
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

Large queues are segmented into multiple smaller sub-queues, each with its own age matrix. This segmentation reduces the size of individual metadata structures and their associated circuitry, lowering power consumption for metadata operations while maintaining the ability to handle large total queue capacities through the combined sub-queues.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of maintaining comprehensive metadata for all items in a large queue, the system maintains age information partially through segmented sub-queues with their own matrices. This partial approach reduces the total metadata overhead and power consumption while still providing sufficient information for efficient out-of-order removal within each sub-queue.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP4081896B1Using age matrices for managing entries in sub-queues of a queue
Publication Date: 2025.01.29 ADVANCED MICRO DEVICES INC
  • EP4081896B1 patent drawingFigure 1
  • EP4081896B1 patent drawingFigure 2~4
  • EP4081896B1 patent drawingFigure 5

AI summary

An electronic device includes a queue with multiple sub-queues arranged in a logical hierarchy from a lowest sub-queue to a highest sub-queue, each sub-queue including a separate subset of a set of entries of the queue, and a separate age matrix for each sub-queue. The electronic device also includes a controller that stores items in entries in the lowest sub-queue until the lowest sub-queue is full and then stores items in successively next higher sub-queues in the hierarchy. The controller also removes an item that is ready for removal from an entry in the lowest sub-queue. The controller then shifts items in sub-queues in the hierarchy to fill the vacancy in the lowest sub-queue. For the shifting, the controller uses an age matrix associated with each sub-queue to determine an oldest item in that sub-queue and then moves the oldest item to a next lower sub-queue in the hierarchy.