Debug Bus Performance Data Streaming Without Interrupts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Performance monitoring in computing systems inherently disrupts the operations being measured, known as the 'observer effect, due to the need for interrupts to retrieve performance counter data, which impacts system performance.

Innovation Solution

A method and apparatus that stream performance data to a parallel port without generating interrupts, allowing continuous execution of processor instructions while monitoring and outputting performance data, using a debug bus and a parallel port to transfer data in a continuous stream, thereby minimizing the observer effect.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If performance data is retrieved using interrupts, then performance counter data can be output and stored, but the current processor execution is interrupted and performance is impacted

Engineering Contradiction:
Improveperformance data retrievalVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements continuous streaming of performance data from the Performance Monitor Unit (PMU) to the External World without interrupting processor execution. The PMU continuously outputs performance data packets via a debug bus to a capture device, eliminating the interrupt-based retrieval mechanism that previously caused performance degradation. This ensures the useful action of performance monitoring continues without stopping the processor's useful work.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent introduces a debug bus as an intermediary channel between the PMU and the external world. Instead of directly interrupting the processor to retrieve data, the PMU streams data through the debug bus to a capture device (such as a logic analyzer). This intermediary pathway allows performance data to be transferred without disrupting the processor's execution flow, resolving the contradiction between reliable data retrieval and maintaining system performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If performance monitoring is implemented, then performance data can be collected, but the observer effect disrupts the operations being measured

Engineering Contradiction:
Improveperformance data collectionVSAvoidobserver effect
Core Design Contradiction:
Loss of informationVSObject-affected harmful factors

Solution Approach 1:

The continuous streaming mechanism ensures that performance monitoring operates continuously without interrupting the processor. By maintaining continuous data flow through the debug bus, the system minimizes the time window in which the monitoring itself could affect the measured operations, thereby reducing the observer effect while maintaining complete performance data collection.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent extracts the performance data collection function from the processor's execution flow by using a separate debug bus channel. The PMU continuously outputs data packets through this dedicated channel to external capture devices, separating the monitoring function from the executed code. This extraction eliminates the need for interrupts that would disrupt the measured operations, thereby reducing the observer effect.

Inventive Principle:
Principle #2Taking out (Extraction)

3Quantity of substance

If interrupts are used to retrieve performance data, then data can be stored in memory, but time is lost during interrupt handling

Engineering Contradiction:
Improveperformance data storageVSAvoidinterrupt handling time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent eliminates interrupt handling time by implementing continuous streaming of performance data. The PMU continuously outputs data packets through the debug bus to external capture devices without requiring processor intervention. This continuous operation removes the stop-start nature of interrupt-based retrieval, ensuring no time is lost to interrupt handling while maintaining complete data collection for storage.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The debug bus serves as an intermediary that directly transfers performance data from the PMU to external storage devices without requiring processor involvement. This intermediary channel handles the data transfer autonomously, eliminating the time the processor would otherwise spend in interrupt handling routines while still achieving complete data storage.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10534743B2Method and apparatus for providing performance data over a debug bus
Publication Date: 2020.01.14 ADVANCED MICRO DEVICES INC
  • US10534743B2 patent drawing
  • US10534743B2 patent drawing
  • US10534743B2 patent drawing

AI summary

A device and method for providing performance information about a processing device. A stream of performance data is generated by one or more devices whose performance is reflected in the performance data. This performance data stream is then provided to a parallel port for outputting thereof.