Performance Counter Sampling via Nyquist Reconstruction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The limited number of performance counter registers (PCRs) in microprocessors restricts the simultaneous measurement of performance counter events (PCEs), leading to cyclical data collection, increased processing burden, and potential self-biasing of performance monitoring, which limits the accuracy and completeness of performance data.

Innovation Solution

Determining the Nyquist sampling frequency for each PCE and scheduling measurements to ensure sampling rates meet or exceed this frequency, combined with signal reconstruction algorithms like the Voronoi-Allebach, Marvasti, or adaptive weights algorithms to reconstruct essentially complete signals from sampled data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If the number of performance counter registers is increased to measure more events simultaneously, then measurement completeness is improved, but device complexity and cost increase

Engineering Contradiction:
Improveperformance data completenessVSAvoidnumber of performance counter registers
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system implements periodic sampling of performance counter events at Nyquist rates, cycling through available registers in a systematic pattern. This periodic measurement approach allows complete reconstruction of event signals over time without requiring all counters to operate simultaneously, thus maintaining data completeness while using limited hardware resources.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system changes the temporal sampling parameters (sampling rate, cycle duration) to match the frequency characteristics of different performance events. By adjusting sampling parameters according to event frequencies and applying reconstruction algorithms, the system recovers complete event information from subsampled data, effectively increasing measurement capacity without adding physical counters.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If performance counter events are measured at high sampling rates to capture complete signals, then measurement precision is improved, but processing burden and self-biasing increase

Engineering Contradiction:
Improvesignal reconstruction accuracyVSAvoidprocessing throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system measures only a subset of performance events at any given time, cycling through different event subsets in successive periods. By measuring fewer events simultaneously at Nyquist rates rather than all events continuously, the processing burden per sample is reduced while complete signal reconstruction is achieved through temporal multiplexing and reconstruction algorithms.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If multiple performance counter events are measured simultaneously using available registers, then data collection speed is improved, but measurement accuracy deteriorates due to self-biasing

Engineering Contradiction:
Improvedata collection rateVSAvoidperformance monitoring accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system pre-determines optimal sampling schedules and register allocation patterns before measurement begins. By planning the measurement sequence in advance to ensure Nyquist-rate sampling of each event, the system achieves accurate reconstruction without the need for high simultaneous measurement rates, thereby avoiding self-biasing effects.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7958342B1Methods for optimizing computer system performance counter utilization
Publication Date: 2011.06.07 ORACLE AMERICAN INC
  • US7958342B1 patent drawing
  • US7958342B1 patent drawing
  • US7958342B1 patent drawing

AI summary

A Nyquist sampling frequency is determined for performance counter events to be measured. Based on the Nyquist sampling frequencies, a schedule for measuring the performance counter events is determined. The performance counter event measurements are then conducted in accordance with the schedule, whereby the measurements yield a set of sample data for each performance counter event. A signal reconstruction algorithm is applied to the set of sample data for each performance counter event to reconstruct an essentially complete signal for each performance counter event. The essentially complete signal for each performance counter event is then used to improve either a design or a utilization of either a microprocessor or an application to be executed on the microprocessor.