Get Started with Intel® GPA for macOS* Host

Intel® Graphics Performance Analyzers (Intel® GPA) provide a solution for graphics analysis and optimization that can help you improve the performance of games and other graphics-intensive Microsoft DirectX*, Apple Metal*, and OpenGL*, and Android OpenGL ES* applications.

Intel® GPA is available on Windows*, macOS*, and Ubuntu* hosts. To analyze DirectX* and Vulkan* applications, you can only use Intel® GPA on Windows* hosts. OpenGL* desktop targets are supported on Ubuntu* and macOS* hosts. Metal* desktop applications are only supported on macOS hosts.

Choose your target application type:

 

Analyzing Metal* Desktop Applications on macOS* Host

Prerequisites

You have the following software installed on your analysis system:

  • Intel® GPA tools

For detailed system requirements and installation instructions, see the Release Notes.  

Step 1: Launch a Metal* application for analysis

  1. Launch Graphics Monitor on your macOS target system
  2. Select an application to run analysis on by selecting . This will open a Finder window, to browse for the application you would like to analyze.

Note

If your application requires a launcher to run, such as Blizzard or Steam, you will have to select the launcher not the standalone application. You will also have to select Pause Frame (Launcher) from the drop-down menu next to Start:

  1. After navigating to the appropriate application (and selecting the correct mode from the drop-down menu), press Start to begin application analysis. If the correct API was chosen, you will be injected into the game and see the Heads-Up Display (HUD). You can now perform live analysis on your application.

Learn more about starting application analysis.

Step 2: Run high-level system analysis

  1. Use the HUD to examine various CPU, GPU, graphics API, or system metrics.

    Note

    To change the viewable metrics in the HUD press F12 > Edit > Options and select the metrics you would like to view. You can only select metrics from the same group at one time.

  2. To view and analyze a frame during game play, press F12; this pauses and resumes the application, allowing you to pause on any frame of interest.

Step 3: Perform frame analysis for applications

  1. To save a stream file - multiple frames captured back-to-back - select Save Stream from the drop-down menu before launching an application.
  2. To open a stream file for analysis: open Graphics Frame Analyzer, select a stream file, and press Open.

    Note

    Frames show still images that are screenshots of the actual application, while streams are shown as an image of a video icon with a grey background:

  3. Enter Pause/Play mode by pressing F12, where you can:
  • Use Fast Scrub Mode to visually the output of every drawcall, as your frame is being rendered out
  • Use the Metric Analysis tab to see which part of the rendering pipeline is experiencing a bottleneck for a specific erg (or multiple ergs)
  • Disable/enable ergs to see how the removal of an erg will affect a scene, as well as performance

Note

You can pause on any frame during live analysis and during stream playback.

 

Analyzing OpenGL Desktop Applications on macOS Host

To profile an OpenGL Desktop application, you need to have the tools installed on the system where your application runs (target system). If you want to profile an application remotely, install the tools on both host and target systems.

Prerequisites

Make sure you have the following software installed:

  • Intel® GPA tools

For detailed system requirements, see the Release Notes.

Step 1. Launch your OpenGL Desktop application for analysis

  1. Launch Graphics Monitor on your macOS target system.
  2. Select an application for analysis and click Start.
    The application opens for real-time analysis with the Heads-Up Display (HUD) overlay. Click CTRL+F1 to toggle between different HUD display modes that show frame rate, real-time performance metrics, and HUD controls.

Learn more about modifying analysis settings.

Step 2. Run high-level system analysis

  1. Using the HUD, examine various CPU, GPU, graphics API, or system metrics while your application is running. You can select the metrics for analysis in the Options screen accessible through the Graphics Monitor Launcher Screen.
  2. Modify render states and observe performance changes in frame rate and in metrics charts to identify performance bottlenecks. Click Ctrl+F1 to view the list of the available overrides and the respective keyboard shortcuts.
  3. Capture frame files for further in-depth analysis with Graphics Frame Analyzer.

Learn more about system analysis.

Step 3. Perform frame analysis for GPU-bound applications

  1. Find the most expensive draw calls in the frame and analyze their optimization opportunities.
  2. Experiment with state overrides to correlate performance issues with specific stages of the graphics pipeline.
  3. Depending on the results of your experiments, explore the following optimization opportunities:  

    • analyze texture bandwidth
    • optimize complex geometry
    • experiment with states and shaders
    • minimize overdraw

Learn more about frame analysis.

Analyzing Android OpenGL ES Applications on macOS Host

Prerequisites

Make sure you have the following software installed on your analysis system:

  • The latest version of Android* SDK

  • Intel® GPA tools

For detailed system requirements, see the Release Notes.

Step 1: Set up your Android* device for analysis

  1. Run the System Analyzer on your host system.
  2. Set up adb connection between the host system and your Android* device.

Learn more about setting up your host and target systems.

Step 2: Launch the application for analysis

  1. Connect the System Analyzer to your Android* device.
    You can see the list of applications running on your target device.
  2. Click your application in the Analyzable applications list to open the application in System Analyzer.

Note

If your target application appears in the Non-Analyzable Applications list, modify application permissions and restart the System Analyzer.

Step 3: Run high-level system analysis

  1. Analyze real-time metrics data for your application. To analyze a specific metric, drag and drop this metric from the Metrics pane onto the chart area.

  2. Simulate various CPU settings in the Platform Settings pane to determine whether your application performance depends on CPU frequency of the device.

  3. Perform "what if" experiments to identify various bottlenecks by modifying render states in the State Overrides pane and observing performance changes in the charts. You do not need to change the application source code or recompile the application to see the effect of a particular render state on the rendering process.

  4. Capture frame files for further in-depth analysis with Graphics Frame Analyzer.

Step 4: Perform frame analysis for GPU-bound applications

  1. Find the most expensive draw calls in the frame and analyze their optimization opportunities.

  2. Experiment with state overrides to correlate performance issues with specific stages of the graphics pipeline.
  3. Depending on the results of your experiments, explore the following optimization opportunities:

    • analyze texture bandwidth
    • optimize complex geometry
    • experiment with states and shaders
    • minimize overdraw

 

Training and Documentation

To learn more about the product, see the following resources:

Online Training

Get access to Intel® GPA videos and tutorials.

Release Notes

Learn about Intel® GPA new features and supported system configurations.

User Guide

View documentation for all the Intel® GPA features.

Support Forum

Ask your questions about Intel® GPA and get help and support.

Intel® Software Documentation Library

View full documentation library for this and other Intel® software products.

Legal Information

Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or other countries.

* Other names and brands may be claimed as the property of others.

Microsoft, Windows, and the Windows logo are trademarks, or registered trademarks of Microsoft Corporation in the United States and/or other countries.

Copyright © 2007-2019, Intel Corporation.

This software and the related documents are Intel copyrighted materials, and your use of them is governed by the express license under which they were provided to you (License). Unless the License provides otherwise, you may not use, modify, copy, publish, distribute, disclose or transmit this software or the related documents without Intel's prior written permission.

This software and the related documents are provided as is, with no express or implied warranties, other than those that are expressly stated in the License.

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