Profiling Unit for Non-Intrusive Thread Execution Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Monitoring the performance of processing units as they execute multiple threads is challenging due to the need for efficient profiling methods that can detect anomalies in thread execution patterns without interrupting the execution process.

Innovation Solution

An apparatus and method that utilize a profiling unit to generate an activity profile of thread execution over time, analyzing it against baseline signatures using data or image processing algorithms to identify deviations and output alert signals for anomalous behavior.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional profiling methods are used to monitor thread execution, then performance information can be obtained, but the execution process is interrupted causing performance loss

Engineering Contradiction:
Improvethread execution monitoring accuracyVSAvoidprocessing unit execution efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system segments the monitoring function into a separate profiling unit that operates independently from the processing unit. The profiling unit divides thread execution monitoring into discrete sampling points, capturing thread identifiers at specific intervals without requiring interruption of the overall execution flow. This segmentation allows monitoring to occur in a non-intrusive manner.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The profiling unit acts as an intermediary component between the processing unit and the monitoring system. It receives thread execution information through sideband signals or interconnect circuitry transactions, processes this information to generate activity profiles, and outputs results without the processing unit needing to pause or expose internal state directly. This intermediary role enables monitoring while preserving execution continuity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If detailed thread execution information is collected, then accurate performance profiling is achieved, but system complexity increases

Engineering Contradiction:
Improveactivity profile accuracyVSAvoidprofiling system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system extracts only the essential information needed for profiling - specifically thread identifiers - from the complex stream of processing unit operations. By focusing solely on capturing thread ID values at sampling points rather than monitoring all processor activities, the system achieves accurate activity profiling while keeping the profiling unit's complexity manageable.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system changes the parameter being monitored from comprehensive processor state to simplified thread identifier values. This parameter transformation allows the complex execution behavior to be represented through simple, discrete thread ID samples that can be easily stored in activity profiles and analyzed for performance patterns without requiring complex monitoring infrastructure.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If continuous monitoring is performed to detect anomalies, then security threats are identified timely, but energy consumption increases

Engineering Contradiction:
Improveanomaly detection capabilityVSAvoidprofiling unit energy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The profiling unit performs monitoring at periodic intervals by sampling thread identifiers at specific time points or instruction counts rather than continuously. This periodic sampling approach maintains the ability to detect anomalies and thread execution pattern changes while significantly reducing the energy consumption compared to continuous monitoring of all processor activities.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentEP3722957A1Performance profiling
Publication Date: 2020.10.14 SIEMENS INDUSTRY SOFTWARE INC
  • EP3722957A1 patent drawingFigure 1
  • EP3722957A1 patent drawingFigure 2
  • EP3722957A1 patent drawingFigure 3

AI summary

An apparatus comprising: a processing unit configured to execute a plurality of threads; a profiling unit configured to: profile the operation of the processing unit over a time period to generate an activity profile indicating when each of the plurality of threads is executed by the processing unit over the time period; analyse the generated activity profile to determine whether a signature of the processing unit's thread execution for the time period matches a signature indicating a baseline of thread execution for the processing unit; output an alert signal if the signature of the processing unit's thread execution for the time period does not match the signature indicating a baseline of thread execution for the processing unit.