So you want to self-test your game, and collect some basic performance data. You’re going to use Intel GPA to analyze your game on Windows, but you’re not quite sure how to get started. Here are some simple steps to get you running quickly.
You’ll be collecting some real-time data as you play your game (watching and then capturing it with the GPA System Analyzer), and you’ll then capture one or more game frames to study more deepy with GPA Frame Analyzer. This will give you data files you can analyze, or to share with somebody else if you wish to review your performance with them.
Pick some part of your game that represents typical gameplay. Be ready to play it while you capture data. If you have very different parts of gameplay, plan to study each. You’ll want to profile every aspect of your game (loading screens, menus, etc.) but the single most important part is typical gameplay, so start there.
There are a few problem cases to sort out first. At the moment, you won’t be able to use GPA if:
- This is an OpenGL game – GPA doesn’t support OpenGL on Windows. Are you an OpenGL developer? Head to the GPA Forum and let us know what you think.
- You’re running DX 10.x on Windows 8. Switch to DX11 if you can, otherwise you’ll need to collect data on Windows 7.
- More details on what works and doesn’t are listed in the GPA release notes.
Install GPA on your test system (sometimes called the test target), and also on another system (the analysis platform). You may find it convenient to have the install set up desktop icons for you. The configuration of the analysis system doesn’t matter much, but it needs to be running Windows 7 or Windows 8.
Launch and connect
Start the GPA Monitor on both systems. You’ll see it in the taskbar.
On the test system, hover your mouse over the GPA Monitor icon, and you’ll see the IP address of that system. Make a note of this address; you’ll be using it soon. At this point, you don’t need anything else running on the test system.
On the analysis system, click on the GPA Monitor, and pick “System Analyzer”. System Analyzer will start up, and ask where to connect. The first time you use it, it’ll say <This Machine>.
Clear that text, enter the IP address of your test system, and click Connect. After System Analyzer connects, you’ll see a summary of the different ways you might study what’s happening on your test target system.
NOTE: If you can’t connect from the analysis system, please don’t simply run System Analyzer on the test machine to collect your data. It has a feature-rich GUI which can slow down your game if it’s running on the same system. When you must run on a single system, use the GPA System Analyzer Heads Up Display (HUD).
In the System Profiling category, you’ll see System View. That’s not quite the view you want for studying your game, since it shows only the generic behavior of everything running on your system. To study your game directly, you’ll want to pick something else.
Now, you can start your game on the test system. When you look at System Analyzer, you’ll see a new category for User Applications, along with your game. It doesn’t matter exactly what you’re doing in your game yet, it just needs to be running.
In this case, we’re running the sample game CityRacer. You should see your game show up in the User Applications, like CityRacer does here.
If your game doesn’t show up, check the GPA Monitor’s Preferences setting, and enable Auto-detect launched applications. If it still doesn’t show up, go to the GPA Forum to discuss.
Collect data and study
Now that your game is running, click on its name to get ready to study it in real time.
You’ll see a long list of metrics on the left, some strip charts on the right, and some State Overrides you can use to study the behavior of your game. At the top, there are several command buttons and some summary stats.
Now, set up the metrics you want to watch in real time. Find a metric on the left, and drag it into one of the charts on the right. You can view more metrics by dragging a new metric in between the others, or you can display multiple metrics in one chart with <ctrl>-Click.
To start, show these metrics:
- Target App CPU Load (in the CPU section) – your game’s CPU use
- FPS (in the DirectX section) – the game’s instantaneous frame rate, as well as averages over time
- GPU Busy (in the GPU section) – how heavily your game is using the GPU
- GPU Frequency (in the GPU section) – shows whether the GPU is running at its maximum frequency or is throttled back