Tools
Explore new features and tools within Intel® products, communities, and platforms
93 Discussions

Game Dev: Exporting Analysis Data From Intel® GPA

Pamela_H_Intel
Moderator
0 0 1,251

Exporting Analysis Data From Intel® GPA

Authors

Philipp Gerasimov, GPU Software Development Engineer, Intel® GPA Product Owner

Pamela Harrison, Software Technical Consulting Engineer

Introduction

The Intel® Graphics Performance Analyzers tool suite (Intel® GPA) has awesome tools that help with performance analysis of 3D applications. With System Analyzer view real time analysis of your running application. Graphics Frame Analyzer and Graphics Trace Analyzer will help you analyze 3D frames, streams and CPU traces that you have captured. Each tool has extensive instrumentation to analyze applications, inspecting API calls and GPU resources. You can expect a wide variety of GPU and CPU metric values that will help you understand the performance of your application as well as helping you find bottlenecks and areas for potential improvements.

In some cases, it is helpful to export some of the collected data for further processing or analysis using other applications. For example, after exporting the data, you can use Microsoft* Excel for creating comprehensive graphs and generating reports.

For such cases, Intel® GPA tools have capabilities to export some important data. This article will help you learn about these capabilities.

System Analyzer

System Analyzer is a visual dashboard which allows you to see the “heartbeat” of the running application -- live data, displaying telemetry from various available CPU and GPU metrics.

Image 1. System Analyzer window during the running of a 3D application.Image 1. System Analyzer window during the running of a 3D application.

 

 

The Export Metrics to CSV button Pamela_H_Intel_1-1706306101432.png

allows you to save currently active metrics to a .csv file. To enable required metrics, drag-and-drop the metrics you need into the left side of the window from the list on the right side, as shown in Image 2. Then press the export button. Allow System Analyzer collect metrics for required time, then to stop exporting, either press the button again or close System Analyzer. The exported metrics will be saved in a file in the GPA/ folder (the default location for GPA/ is in Documents/). The generated filename for the exported metrics file will be <name of the analyzed application>-<timestamp of the capture>. Metrics are listed with per-frame frequency.

Image 2: Hover over the 3 dots on the left of any metric in the list on the right to grab it. As you drag it into the timeline, the main panel, space opens up in the timeline -- here you see two spaces begin to open up to show where the new metric can be dropped in. Drop it where you would like it.Image 2: Hover over the 3 dots on the left of any metric in the list on the right to grab it. As you drag it into the timeline, the main panel, space opens up in the timeline -- here you see two spaces begin to open up to show where the new metric can be dropped in. Drop it where you would like it.

 

The Information button

Pamela_H_Intel_3-1706306101454.png

which opens the information panel also allows you to save the displayed information for your current system, including OS, CPU, GPU, BIOS and machine configurations as well as GPA version. Use the Copy button at the bottom of the panel to copy the information to the clipboard, or use the Save to File button to save to a file.

Graphics Frame Analyzer

Graphis Frame Analyzer allows you to do a deep GPU analysis of saved GPU frames, down to the draw call level. Inspect API calls, GPU resources and shaders, and GPU and 3D API metrics. Find GPU bottlenecks and run performance experiments.

Image 3: Graphics Frame Analyzer, Frame View.Image 3: Graphics Frame Analyzer, Frame View.

 

In addition to its many profiling capabilities, Graphics Frame Analyzer allows you to export various data sets:

  • Selected metrics for full frame and for a selected range
  • API log
  • Render Targets
  • Textures
  • 3D Geometry
  • Shaders
  • 3D Buffers

For exporting required resources or metrics, note that there are multiple Export buttons

Pamela_H_Intel_5-1706306101478.png

available in various GUI sections of this tool – see Image 4. Press the button in the appropriate section, give the file a name, and save it.. The file type will depend on the type of saved data. Multiple formats will be available for some types of resources, for example, textures can be saved in multiple formats (dds, ktx, png).

 

Image 4: Note the 4 export buttons. You have the option to export different types of data: API Call Log, Bar Chart, Resource, and Metrics Values.Image 4: Note the 4 export buttons. You have the option to export different types of data: API Call Log, Bar Chart, Resource, and Metrics Values.

 

Export Options in Graphics Frame Analyzer

API Call Log Export

The API Call Log export will store the region for each call along with the call type and the number of parameters associated with that call to a file.

Image 5: View of the data saved when using the API Call Log export button.Image 5: View of the data saved when using the API Call Log export button.

 

Bar Chart Export

The Bar Chart export will save each call and it’s associated values to a file.

Image 6: View of the data saved when using the Bar Chart export button.Image 6: View of the data saved when using the Bar Chart export button.

 

Resource Export Example

As stated above, depending on the resource, you will have different options for file type. The following texture was saved as dds, so it can be opened  in Microsoft* Visual Studio (if available) or your default dds editor

Image 7: View of an example of the data saved when using the Resource export button. Note that not all resources are images, so file types vary. The image here was exported from a frame from Soma Games' The Lost Legends of Redwall™Image 7: View of an example of the data saved when using the Resource export button. Note that not all resources are images, so file types vary. The image here was exported from a frame from Soma Games' The Lost Legends of Redwall™

 

Metrics Pane Export

The Metrics Pane export will store each metric value for the current selection to a file. Current selection refers to whether you have selected a particular call, or multiple calls and the metric values associated with that selection.

Image 8: View of the data saved when using the Metrics Pane export button.Image 8: View of the data saved when using the Metrics Pane export button.

 

 

 

The Information button Pamela_H_Intel_11-1706306101531.png

here works the same as the Information button in Graphics Monitor (see above).

Graphics Trace Analyzer

Graphis Trace Analyzer allows you to analyze captured traces, inspecting system events across CPU and GPU to find CPU and GPU utilization and parallel execution of CPU and GPU workloads.

Image 9: Graphics Trace Analyzer displays many timeline tracks in the main panel and the list of all metrics on the right.Image 9: Graphics Trace Analyzer displays many timeline tracks in the main panel and the list of all metrics on the right.

 

 

To save the system information press information button 

Pamela_H_Intel_13-1706306101544.png

works the same as the Information button in Graphics Monitor and Graphics Frame Analyzer (see above).

Summary

The visualizations of the Intel® GPA tools make profiling your applications easier. And the ability to export the collected data extends your capabilities for analyzing 3D applications even further.

 

 

 

About the Author
Software engineer for 20+ years. Excels in all things software, plus connecting people and teams for optimal synergy.