Self-Scheduling Processor Thread Priority Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face limitations in computation processing capabilities, particularly in speed, energy consumption, and heat dissipation, and are inadequate for advanced applications like artificial intelligence and compute-intensive tasks such as Fast Fourier Transforms and finite impulse response filters, which require high performance and energy efficiency with tolerance for memory latency.

Innovation Solution

A self-scheduling processor architecture with a multi-threaded, hybrid computing system that allows threads to execute instructions independently of memory responses, featuring a core control circuit for automatic scheduling and thread management, enabling high sustained instruction execution and efficient energy use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional computing systems are used to process compute-intensive tasks, then they can execute instructions, but they suffer from poor cache hit rates and high memory latency that limit performance

Engineering Contradiction:
Improveinstruction execution throughputVSAvoidmemory latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system segments computation into multiple independent threads that can execute in parallel. Each thread is assigned to different processing elements, allowing the system to continue executing other threads while waiting for memory responses, thereby hiding memory latency and improving overall instruction throughput

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-fetching data and pre-positioning threads in ready states before execution. Threads are prepared and queued in advance, allowing the processor to immediately begin execution without waiting for memory operations to complete, thus reducing the impact of memory latency on productivity

Inventive Principle:
Principle #10Preliminary action

2Power

If computing power is increased to handle advanced applications, then processing capability improves, but energy consumption and heat dissipation increase significantly

Engineering Contradiction:
Improvecomputation processing capabilityVSAvoidenergy consumption
Core Design Contradiction:
PowerVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts the activation and deactivation of processing elements based on workload requirements. Instead of continuously operating at high power, processing elements are activated only when needed and placed in low-power states when idle, maintaining high computation capability when required while reducing energy consumption during lighter loads

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system maintains continuous useful computation by keeping multiple threads in various stages of execution simultaneously. While some threads are executing computationally intensive operations, others are being prepared or waiting for memory responses, ensuring that processing elements remain productive without requiring peak power continuously

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If more threads are executed in parallel to improve performance, then computation throughput increases, but thread management complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidthread management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements self-service through automatic thread scheduling and management mechanisms. The processor automatically selects which threads to execute next, manages thread states, and handles resource allocation without requiring complex external control, thereby enabling high parallel processing capability while keeping management complexity manageable through automation

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12182622B2Thread priority management in a multi-threaded, self-scheduling processor
Publication Date: 2024.12.31 MICRON TECHNOLOGY INC
  • US12182622B2 patent drawing
  • US12182622B2 patent drawing
  • US12182622B2 patent drawing

AI summary

Representative apparatus, method, and system embodiments are disclosed for a self-scheduling processor which also provides additional functionality. Representative embodiments include a self-scheduling processor, comprising: a processor core adapted to execute a received instruction; and a core control circuit adapted to automatically schedule an instruction for execution by the processor core in response to a received work descriptor data packet. In another embodiment, the core control circuit is also adapted to schedule a fiber create instruction for execution by the processor core, to reserve a predetermined amount of memory space in a thread control memory to store return arguments, and to generate one or more work descriptor data packets to another processor or hybrid threading fabric circuit for execution of a corresponding plurality of execution threads. Event processing, data path management, system calls, memory requests, and other new instructions are also disclosed.