Configurable GPU Event Filter for Concurrent Workload Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processors face limitations in performance monitoring due to fixed event filtering capabilities, which restrict the flexibility in handling multiple concurrent workloads and do not allow for dynamic configuration based on instruction set, opcode, destination data type, or processing resource configuration.

Innovation Solution

A configurable event filter system is introduced that enables flexible configuration of events received from processing resources during execution of multiple concurrent workloads, allowing filtering based on instruction set architecture, opcode, destination data type, and processing resource configuration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If fixed event filtering capabilities are used, then device complexity is reduced, but adaptability to different workloads and instruction sets deteriorates

Engineering Contradiction:
Improveadaptability to different workloadsVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The event filter transitions from a fixed, static configuration to a dynamic, programmable structure. The filter can be reconfigured through software to adapt to different workloads, instruction sets, and monitoring requirements without hardware changes, enabling flexible performance monitoring across diverse scenarios

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The filter's configuration parameters (event types, filtering criteria, monitoring metrics) can be dynamically changed through software control. This allows the same hardware to monitor different events and adjust its behavior based on workload requirements, achieving adaptability without proportional hardware complexity increase

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If fixed event filtering is used, then ease of operation is improved, but measurement precision for specific performance metrics deteriorates

Engineering Contradiction:
Improvemeasurement precisionVSAvoidease of operation
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system provides feedback mechanisms that allow operators to configure the filter based on actual performance monitoring needs. The programmable filter can be adjusted based on feedback from performance metrics, enabling precise measurement of specific workload characteristics while maintaining ease of operation through automated configuration options

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If configurable event filtering is implemented, then adaptability to concurrent workloads is improved, but device complexity increases

Engineering Contradiction:
Improveflexibility in handling multiple concurrent workloadsVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The event filter is designed as a universal component that can handle multiple concurrent workloads through software configuration. A single filter structure supports diverse event types, filtering criteria, and monitoring scenarios, eliminating the need for separate dedicated filter hardware for each workload type and achieving multi-functionality

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20240419447A1Configurable processing resource event filter for GPU hardware-based performance monitoring
Publication Date: 2024.12.19 INTEL CORP
  • US20240419447A1 patent drawing
  • US20240419447A1 patent drawing
  • US20240419447A1 patent drawing

AI summary

Described herein is a graphics processor comprising a plurality of processing elements associated with performance monitoring circuitry. The performance monitoring circuitry is configurable to generate performance data for multiple concurrently executed workloads via flexible event filtering hardware that can isolate a data stream of performance events and display performance monitoring data that is specific to each of the multiple concurrently executed workloads. In one embodiment, performance monitoring for the separate workloads can be configured, for example, by filtering based on the respective contexts used to execute the workloads, the specific instructions executed respectively by the workloads, or the datatypes used respectively by the workloads.