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 |
|||
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
✓ |
✓ |
||
✓ |
|||
Stream Analysis |
|||
✓ |
✓ |
✓ |
|
✓ |
✓ |
||
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
Layers |
|||
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
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.
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).
Subcapture
Use gpa-subcapture-recorder to capture a portion of an exsisting stream and create a new stream.
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