Multiprocessor Interrupt Distribution via Transaction Completion Time Estimation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-processor systems, interrupt requests often interfere with nearly completed tasks, leading to cache overwriting and systematic latencies, as existing policies lack refined prioritization and transaction completion time estimation.

Innovation Solution

A method where transaction handlers estimate transaction completion times for each processor, redirecting interrupt requests to processors with the shortest estimated completion time, ensuring optimal distribution and minimizing interference with ongoing tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If interrupt requests are directed to the first processor using existing policies, then interrupt handling is performed, but transaction completion time increases and system performance deteriorates due to interference with nearly completed tasks

Engineering Contradiction:
Improvesystem performanceVSAvoidtransaction completion time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary estimation of transaction completion times before directing interrupt requests. The transaction completion time estimation mechanism predicts how long current transactions will take to complete on each processor, allowing the system to proactively select the optimal processor for interrupt handling before the interrupt actually interferes with task completion. This preliminary action prevents the time loss that would otherwise occur from interrupting nearly completed transactions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The interrupt distribution policy dynamically adapts based on real-time transaction completion time estimates rather than using static load balancing rules. The system continuously monitors and updates completion time predictions for each processor's current transactions, allowing the interrupt distribution mechanism to flexibly redirect interrupts to processors that will complete their current work fastest. This dynamic approach optimizes system performance by preventing interrupts from extending overall transaction completion times.

Inventive Principle:
Principle #15Dynamics

2Productivity

If interrupt requests are redirected to another processor, then interference with ongoing tasks is reduced, but system complexity increases due to transaction completion time estimation requirements

Engineering Contradiction:
Improvesystem throughputVSAvoidtransaction completion time estimation mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Each processor's transaction handler independently estimates its own transaction completion times without requiring complex centralized arbitration or communication overhead. The completion time estimation is performed locally by the processor that will execute the transaction, using its own knowledge of current workload and transaction characteristics. This self-service approach minimizes system complexity while enabling intelligent interrupt distribution that improves throughput.

Inventive Principle:
Principle #25Self-service

3Reliability

If rigid interrupt schedule policy is used, then high-priority tasks are handled immediately, but system performance deteriorates due to cache overwriting and systematic latencies

Engineering Contradiction:
Improvehigh-priority task handlingVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system changes the parameter used for interrupt distribution from static processor load metrics to dynamic transaction completion time estimates. Instead of always directing interrupts to the least loaded processor or using fixed priority schemes, the system evaluates the completion time parameter for each processor's current transactions and directs interrupts to processors with the shortest estimated completion times. This parameter change ensures high-priority tasks are handled reliably while avoiding cache overwriting and systematic latencies that reduce throughput.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP1971924B1Methods and system for interrupt distribution in a multiprocessor system
Publication Date: 2011.08.03 NXP BV
  • EP1971924B1 patent drawingFigure 1
  • EP1971924B1 patent drawingFigure 2
  • EP1971924B1 patent drawingFigure 3

AI summary

A method for distributing interrupt load to processors in a multiprocessor system. The method includes executing current transactions with multiple processors (104,106,108) where each transaction is associated with one of the processors, generating an interrupt request, estimating a transaction completion time for each processor and directing the interrupt request (102) to the processor having the least estimated transaction completion time. Estimating a transaction completion time occurs periodically so that information pertaining to transaction times is stored and continually updated. According to one aspect of the invention, the step of estimating a transaction completion time for each processor occurs when the interrupt request is generated. According to another aspect of the invention, the step of communicating the interrupt request includes communicating the interrupt request to an intermediary processor prior to estimating the transaction completion time.