Interrupt Dispatching in Multi-Processor Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-processor systems, the unpredictable arrival of interrupts disrupts processor workflow, and existing methods for dispatching interrupts do not effectively balance power consumption and performance, leading to suboptimal response times and energy efficiency.

Innovation Solution

An interrupt controller that receives and weighs power and performance status factors of multiple processors to select the most suitable processor for handling interrupts based on specific usage scenarios, dispatching interrupts accordingly to optimize response time and energy usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single processor is designated as interrupt-handling processor, then interrupt handling is simplified, but system performance and responsiveness deteriorate

Engineering Contradiction:
Improveinterrupt handling complexityVSAvoidsystem responsiveness
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system segments interrupt handling by dividing processors into clusters, with each cluster capable of handling interrupts independently. This allows multiple clusters to service interrupts simultaneously, improving system responsiveness while maintaining manageable complexity through modular organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The interrupt handling architecture is made dynamic by allowing any processor within a cluster to handle interrupts based on current system state and workload. The system can adaptively select which processor handles which interrupt, optimizing performance while maintaining flexibility.

Inventive Principle:
Principle #15Dynamics

2Productivity

If multiple processors service interrupts, then system performance improves, but interrupt dispatch complexity increases

Engineering Contradiction:
Improveinterrupt handling performanceVSAvoidinterrupt dispatch complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Each processor cluster is given local autonomy to handle interrupts independently. The interrupt dispatch complexity is localized to each cluster rather than being centralized, allowing parallel processing while maintaining manageable complexity at each node.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system pre-configures processor clusters and establishes interrupt routing rules beforehand. When interrupts arrive, the dispatching decision is made quickly based on pre-established criteria rather than requiring complex real-time analysis, reducing dispatch complexity.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If round-robin scheme is used for interrupt distribution, then load balancing is achieved, but response time increases due to processor wake-up overhead

Engineering Contradiction:
Improveload balancingVSAvoidinterrupt response time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system incorporates feedback mechanisms that monitor processor states, workload, and power consumption. This feedback enables intelligent selection of which processor should handle which interrupt, achieving load balancing without requiring processors to wake from low-power states unnecessarily.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically changes operational parameters such as processor power states and interrupt routing based on system conditions. By adjusting these parameters adaptively, the system achieves load balancing while minimizing wake-up overhead and response time.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If processor wakes from low-power state to handle interrupt, then interrupt can be serviced, but power consumption increases

Engineering Contradiction:
Improveinterrupt service capabilityVSAvoidprocessor power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system pre-positions interrupts to processors that are already awake or in appropriate power states. By anticipating interrupt arrival patterns and processor availability, the system routes interrupts to ready processors, avoiding unnecessary wake-ups and reducing power consumption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The interrupt controller autonomously selects appropriate processors based on their current state, enabling processors to remain in low-power states longer. The system self-manages the balance between interrupt service capability and power consumption without requiring processors to frequently wake from low-power states.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11113216B2Dispatching interrupts in a multi-processor system based on power and performance factors
Publication Date: 2021.09.07 MEDIATEK INC
  • US11113216B2 patent drawing
  • US11113216B2 patent drawing
  • US11113216B2 patent drawing

AI summary

A multi-processor system handles interrupts using a power and performance status of each processor and a usage scenario of each processor. The power and performance status is indicated by factors that affect power consumption and processor performance. The system identifies one of the processors for handling an interrupt based on a weighted combination of the factors. Each factor is weighted based on a usage scenario for which the interrupt was generated. The system then dispatches the interrupt to the identified one of the processors.