Intel® GPA Tip: Maximizing metrics accuracy when running Intel® Graphics Performance Analyzers

Published:02/15/2012   Last Updated:02/15/2012


When analyzing the graphics performance of your game with Intel® Graphics Performance Analyzers (Intel® GPA), you'll want to collect accurate metrics data. With accurate data, you'll minimize the likelihood of optimizing code that doesn't require tuning. This article provides various tips and tricks to help eliminate items that can cause less accurate metrics data.

Note that Intel GPA analyzes not just the game itself, but indirectly the environment the game runs in. Therefore, we provide these tips in order to minimize the effects of these non-essential tasks and processes that can mask the true performance characteristics of the game (both CPU and GPU).

Application Notes:

The items listed here were observed by Intel GPA engineers when working with real customers. Therefore, while this list may seem intuitively obvious to many of you, hopefully you'll learn a trick or two and incorporate these into your testing environment:
  • Use a 64-bit OS and ensure you have sufficient RAM / VRAM.
    A good rule of thumb is the more memory the better: use a 64-bit OS with at least 4 GB of physical memory when analyzing frame capture files or trace capture files. Likewise more VRAM is helpful, and 512MB is the bare minimum. Bottom line: the more complex your game data, the more physical memory and VRAM is needed.
  • Use the Intel GPA client/server configuration when analyzing netbooks.
    When targeting lower performance computers (such as netbooks), or analyzing complex games, you should run in client/server configuration with the Intel GPA Frame Analyzer or Intel GPA Platform Analyzer running on a non-netbook system with sufficient memory (4GB or more). Also, starting with Intel GPA 4.3, you can now run Intel GPA System Analyzer in a client/server mode as well.
  • Reboot prior to analyzing your game.
    Note that some applications, even after quitting, leave processes running in the background, some of which may utilize non-trivial cpu and/or memory resources. Therefore, if you have any doubts about the environment, or you're trying to perform detailed analysis of a certain portion of your game, reboot your system just prior to starting up Intel GPA.
  • Run the game in full-screen mode.
    Eliminate the overhead of the operating system's window manager (though small, "every little bit helps"). This means more than just optimizing the window, but using "full-screen" mode without an window borders.
  • Ensure your configuration reflects a real-world scenario for your user.
    Don't waste time optimizing for configurations that won't be seen by your users. On many systems you can change the amount of memory allocated to the graphics device; setting this number too high or too low may impact game performance (especially if this memory is used for texture maps). Also, some power schemes on laptops decrease processor speed to increase battery life.
  • Disable as many other non-essential processes as possible.
    In order to ensure good performance and accurate metrics, be sure that you disable screen savers and other tools. This will also help you optimize your game and not the impact of other processes.
  • Exit your game before starting the Intel® GPA Frame Analyzer or Intel® GPA Platform Analyzer.
    These tools will benefit from having the maximum resources available while running.
Obviously not all of the above items have a major impact on Intel GPA metrics. But if you have unexpected variations in the consistency of your measurements, or you find yourself optimizing some code and not seeing the improvements you expect, give one or more of the above tips a try and let us know if they've helped.

Last but not least, if you've got more ideas or suggestions that have helped you out, the community would appreciate hearing about them. Therefore, please add your own thoughts in the "comments" section of this article.

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

Product and Performance Information


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