PEBS Handler Circuit for Function Performance Differentiation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for monitoring processor performance, such as instrumentation-based tracing and traditional sampling-based statistical analysis, are either impractical or costly, and fail to accurately differentiate performance variations of the same function based on its input parameters, especially when interrupts are masked.

Innovation Solution

A hardware-assisted method using Precise and Non-Precise Event Based Sampling (PEBS and NPEBS) architecture that tracks function performance by storing stack memory contents and architectural metadata, allowing precise sampling of retired function calls and decomposing performance data per function call, even when interrupts are masked.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If instrumentation-based tracing is used to monitor processor performance, then performance data can be collected, but the method becomes impractical and costly

Engineering Contradiction:
Improveperformance data accuracyVSAvoidmonitoring system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts only the necessary performance monitoring functionality from the complex instrumentation-based tracing system. By using hardware performance counters and event-based sampling to capture specific metrics (instruction retirement, cache misses, branch predictions) at predetermined intervals, the system achieves accurate performance measurement without the impractical complexity of full instrumentation tracing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the software-based instrumentation tracing mechanism with a hardware-based performance monitoring system. The processor includes dedicated performance monitoring circuits, event counters, and sampling mechanisms that automatically collect performance data in hardware, eliminating the need for complex software instrumentation and reducing overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Device complexity

If traditional sampling-based statistical analysis is used, then performance monitoring is simplified, but it fails to accurately differentiate performance variations based on input parameters

Engineering Contradiction:
Improvemonitoring system simplicityVSAvoidperformance differentiation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent segments performance analysis by function and input parameters. The performance monitoring system captures data organized by function identifiers and parameter values, allowing differentiated analysis of performance variations across different function invocations. This segmentation enables precise measurement of how specific input parameters affect performance without requiring complex monitoring infrastructure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by capturing function argument values and performance metrics simultaneously at the point of function invocation. The performance monitoring system records input parameters along with performance data in a structured format, enabling later analysis of performance variations based on specific input conditions without requiring additional complex processing.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If performance monitoring is performed with traditional methods, then implementation is straightforward, but overhead and latency increase

Engineering Contradiction:
Improveimplementation easeVSAvoidmonitoring overhead and latency
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The performance monitoring system operates as a self-service mechanism integrated into the processor architecture. Hardware performance counters automatically increment and event-based sampling mechanisms automatically capture performance data at predetermined intervals without requiring external intervention or complex software management. This self-service approach reduces implementation complexity and minimizes overhead.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent uses periodic event-based sampling to capture performance data at predetermined intervals based on processor events (e.g., every N instruction retirements, cache misses, or branch predictions). This periodic sampling approach provides regular performance measurements with minimal overhead compared to continuous monitoring, while still capturing sufficient data for accurate performance analysis.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10969995B2Systems and methods for differentiating function performance by input parameters
Publication Date: 2021.04.06 INTEL CORP
  • US10969995B2 patent drawing
  • US10969995B2 patent drawing
  • US10969995B2 patent drawing

AI summary

Systems and method are disclosed for monitoring processor performance. Embodiments described relate to differentiating function performance by input parameters. In one embodiment, a method includes configuring a counter contained in a processor to count occurrences of an event in the processor and to overflow upon the count of occurrences reaching a specified value, configuring a precise event based sampling (PEBS) handler circuit to generate and store a PEBS record into a PEBS memory buffer after at least one overflow, the PEBS record containing at least one stack entry read from a stack after the at least one overflow, enabling the PEBS handler circuit to generate and store the PEBS record after the at least one overflow, generating and storing the PEBS record into the PEBS memory buffer after the at least one overflow; and storing contents of the PEBS memory buffer to a PEBS trace file in a memory.