Features

Intel® GPA Framework provides a varying level of feature support based on the used graphics APIs and platforms. This table describes major functionalities.

Vulkan*

DirectX 11*

DirectX 12*

Capture and playback

Basic Capture and Playback

Keyframing Capture

Range Repeat

Deferred Capture

Stream Analysis

Metric Collection

Experiments

Metadata Extraction

Resource Extraction

API Call Inspection

Layers

Custom (User) Layers

Heads-Up Display(HUD) Layer

Screenshot Layer

Logging Layer

Api Debug Layer

Device Override Layer

Capture and Playback

Basic Capture and Playback

Capture a stream with gpa-injector, and play it back with gpa-player. Streams are captured through the duration of the application’s lifetime. Basic stream capture requires playback from the beginning of the stream.

Keyframing Capture

Capture a stream with gpa-injector, and play it back with gpa-player having the ability to insert keyframes. Streams are captured through the duration of the application’s lifetime. Keyframed stream capture can be played back from the beginning of the stream or from a given keyframe.

Deferred Capture

Deferred Capture, as the name suggests allows stream capture to begin at any point time after a workload is launched via gpa-injector with a keypress (default is L key). The same keybinding can start and stop capture while a workload is injected.

Range Repeat

Select a range in stream and replay continuously (loop N times).

Stream Analysis

Features exposed through the programmatic interfaces.

Metric Collection

Collect hardware metrics for a given range within a stream. Metric collection is requested at playback time through the C++ and Python interfaces.

Experiments

Apply experiments and replay a range with the experiment applied within a stream. Experiments are applied at playback time through the C++ and Python interfaces.

Metadata Extraction

Access metadata information associated with resources. For example, textures can expose format, dimensions, etc.

Resource Extraction

Extract resources from C++ and Python interfaces, including:

  • Buffers

  • Textures

  • Shaders

  • among other resource types

API Call Inspection

Analyze a stream with the C++ and Python interfaces without requiring playback.

Layers

Heads-Up Display(HUD) Layer

Displays HUD with FPS

Screenshot Layer

Grabs screenshots from the injected application

Logging Layer

Logs API commands from the injected application

Api Debug Layer

Print the output of the current graphics api’s debug layer

Device Override Layer

Override the default graphics device and choose another inslalled device

Custom (User) Layers

Creates custom layers and intercepts API calls