Multiframe Analysis

Graphics Frame Analyzer uses a stream capture file to play back multiple frames, where you can easily play and pause on any frame within your stream to visualize exactly what is happening within your game on a frame-by-frame basis.

A typical framework analysis workflow is as follows:

1.

Create a stream capture file for analysis

To capture a specific stream, you can:

  • Use the Save Stream option in the drop-down menu (right next to the Start button) to save a stream (a collection of frames – like a video – where each frame can be analyzed).
  • Use the Add button within the Graphics Frame Analyzer to add a stream to the Graphics Frame Analyzer collection.

You can share streams with others, to easily recreate areas of interest in an application and isolate frames that highly affect your application.

2.

Load the stream capture file

Launch the Graphics Frame Analyzer to the select the stream capture you want to analyze, or to capture another stream. Once selected, there will be a command line-type icon that shows up in your dock. There is no loading indicator, however, and the application may take a minute to launch.  From here, pause and play your stream file to pinpoint relevant frames and isolate performance improvement opportunities.

NOTE

Playback of the stream files captured with earlier Intel® GPA versions is not supported. Old stream files can be converted to the new stream format at the command line:

  1. Open Terminal and change the directory to: /Applications/Intel/FrameAnalyzer.app/Contents/Resources/metal.
  2. Capture a new stream of the old player running the .gpa_stream file that you want to convert using the command:

./gen2/gpa-capture ./gpa-playback --layer capture -- <path-to-old-.gpa_stream-file>
  1. The newly converted stream is automatically added to ~/Documents/GPA/ and is displayed in the Graphics Frame Analyzer open file dialog.

3.

Analyze the captured stream

Explore the performance impact of specific API calls in any frame within the stream, at different stages of the rendering pipeline:

  • Analyze metrics data for individual ergs and erg groups
  • Delete ergs to find potential bottlenecks in your application and how those bottlenecks affect your application
  • Use 2x2 Texture experiment and Clamp to MIP expreriment, to determine whether texture bandwidth is an issue

See Also

System Analysis for Metal Applications

For more complete information about compiler optimizations, see our Optimization Notice.