• Intel® Graphics Performance Analyzers 2019 R4
  • 12/20/2019
  • Public Content
Contents

System Analysis

To efficiently optimize an application, you first need to determine whether performance bottlenecks live in the CPU or the GPU. Diving head-first into optimization, without this knowledge, can waste precious time and energy in areas that may not need attention.
TIP
Using Xcode*, Intel® VTune™ Amplifier XE, or your preferred tool, determine where the hardware bottleneck exists.

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.
In general, System Analyzer offers the following advantage over the System Analyzer HUD:
  • Uses host/target (network) mode, enabling you to monitor performance on a remote system and 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.
If you connect the System Analyzer to the application with the System Analyzer HUD enabled, the HUD is switched to the lightweight mode that will initially only show FPS. You can toggle the metrics shown in the HUD by pausing live analysis (F12), navigating to Edit > Options and selecting up to five metrics that you would like to actively see in the System Analyzer HUD, where you can only select metrics from the same group.

System Analysis Workflow

To view pertinent metrics for your application and capture a stream follow these steps:
1.
Start your game from within the Graphics Monitor
Launch the Graphics Monitor application, by locating and selecting it in the “Applications” folder: Applications > Intel > Graphics Monitor. Choose the application you want to analyze by selecting the
button and navigating to the desired executable. Select the Metal tab from the top-left corner. From the drop-down box, in the bottom-right corner, select the appropriate option for your executable:
Default
– does not save a stream and is for a game with no launcher
Save stream
– saves a stream for later use during offline analysis and is for a game with no launcher
Launcher
– does not save a stream and is for a game that requires a launcher (Steam, Blizzard, etc.)
2.
(Optional) Launch the System Analyzer
Launch the System Analyzer and connect it to the running application to analyze limited metric sets. You can choose between local and network usage modes.
3.
Analyze metrics data
Intel® GPA supports a wide variety of metrics. The metrics available for display might differ depending on your specific graphics device. You can analyze these metrics by entering Pause/Play mode (F12) and navigating to the
Options
menu. As well, by pausing the application, you can view resources and bottlenecks within the rendering pipeline.
4.
Disable erg
Disabling an erg will help identify various bottlenecks within your application and how those bottlenecks affect your performance. From here, you can perform further analysis to determine the cause within the erg.

Next Steps

If all went well, you met your performance and playability goals by using the System Analyzer HUD and Live Pause/Play mode 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 a stream file and use the Graphics Multiframe Analyzer (by using Pause/Play mode during offline playback) to perform a deeper analysis into exactly what is happening within any specific frames in the stream – see where in the rendering pipeline your game is spending its time, down to the render target or draw call level of detail.
  • 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™ Amplifier XE. 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

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804