User Guide

  • 2021.1
  • 03/24/2021
  • Public Content

Monitor Real Time Performance with System Analyzer

Use System Analyzer to locate problematic areas and to determine if your application is CPU- or GPU- bound.
A top-down approach to analysis and optimization suggests that first you have to determine whether your performance issues are with the CPU or the GPU. Understanding your performance issues at this highest level is extremely important. Otherwise, you could spend a lot of time optimizing parts of your game that end up being secondary to much larger performance issues.
A good rule is to have a balance between the utilization of the CPU and the GPU resources - do not have the CPU running at 100% while the GPU is only 20% utilized, and vice versa.
To find out whether your application is CPU-bound or GPU-bound, you can use System Analyzer HUD or System Analyzer running in a host/target mode.

System Analyzer vs System Analyzer Heads-up Display (HUD)

System Analyzer HUD works in the background while your game is running and displays its results as an overlay on your game, quickly allowing you to see the performance overview of your game and experiment with your game using keyboard shortcuts.
In general, System Analyzer offers the following advantages over the System Analyzer HUD:
  • Uses host/target (network) mode, enabling you to monitor performance on a remote system. This reduces performance impact on the application. You are recommended to use System Analyzer in the network mode to analyze graphics applications on Ultrabook™ devices, tablets, netbooks, or other devices with limited resources.
  • Provides more detailed metrics resolution and the possibility to view more than four metrics at the same time, while also providing counter set selection and multiple other options. Using System Analyzer, you can compare an unlimited number of metrics with same measurement units by displaying them in the same chart, easily switch between metrics, and resize metrics charts for better analysis.
If you connect the System Analyzer to the application with the System Analyzer HUD enabled, the HUD is switched to the lightweight mode that only shows FPS rate.
Some games and applications trap all keystrokes, so keyboard shortcuts within the
Intel® GPA
might not work. In this case, to create frame/trace capture files you can:
  • Use Capture Frame/Capture Trace buttons of the System Analyzer.
  • Set up a trigger in Graphics Monitor to automatically create frame/trace capture files when certain conditions occur, for example when FPS is 20.

System Analysis Workflow

Open the Graphics Monitor window and select the application to run in the Graphics Monitor Launcher screen. This runs your game with the System Analyzer HUD, quickly allowing you to analyze the performance data, experiment with override modes, and capture frame and trace files.
(Optional) Launch System Analyzer
By default, System Analyzer starts in System View mode, which displays general system metrics. Once you launch your application form the Graphics Monitor, you can click the
Connect System Analyzer
button to quickly open system analyzer and attach it to your application.
Intel GPA supports a wide variety of metrics. The metrics available for display might differ depending on your specific graphics device.
Perform "what if" experiments (also known as overrides) to identify various bottlenecks without changing the code
Override modes operate behind the scenes within the graphics driver to modify one or more of the render states of the graphics pipeline to show the effect of that phase on the rendering process, without requiring any code changes in your game.
If using a certain override mode improves performance significantly, then that overridden mode might be a performance bottleneck, and warrants further analysis.
For example, use the
Null Hardware override
(only available on devices with Intel® Processor Graphics) to simulate an infinitely fast GPU to see whether your game is GPU-bound.
If all went well, you met your performance and playability goals by using the System Analyzer HUD/System Analyzer to identify and resolve issues with your game.
If you still have not met your overall objectives, you can try the following:
  • If you suspect that your game is GPU-bound, capture frame files and use the Graphics Frame Analyzer to perform a deeper analysis into exactly what is happening within a specific frame – see where in the rendering pipeline your game is spending its time, down to the render target or draw call level of detail. Check Frame Analysis for Desktop API Graphics Applications.
  • If you suspect that there are issues in balancing your workloads across the CPU and GPU, capture and analyze trace files to get a task-based overview of your game across both the CPU and GPU domains.
  • If you know that your game is CPU-bound, you might try using some CPU-specific tools to help improve your performance on the CPU, such as Intel® VTune™ Profiler. In particular, with multiple cores now being the rule rather than the exception, parallelizing your code can have a big impact on overall CPU performance.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at