Get Started

  • 2022.1
  • 03/17/2022
  • Public Content

Trace Analysis: Analyze Application Execution on the CPU and GPU

Use Intel® GPA Graphics Trace Analyzer to:
  • Evaluate CPU and GPU workload to identify whether the bottleneck on the CPU or GPU side.
  • Identify problem areas in graphics application execution: analyze calls to graphics APIs, review user-defined debug markers, threads, queued GPU commands.
  • Perform a high-level analysis of synchronization and parallelism efficiency.
To start trace analysis:
  1. Run Graphics Monitor by double-clicking the Graphics Monitor icon in the taskbar notification area or on the desktop.
  2. Specify the application for analysis by clicking the
    button on the lower right and browsing to your application ().
    On Windows, you can use the sample application
  3. Select the
    startup mode from the drop-down menu on the lower right ().
  4. Run the application by clicking the
    button ().
    The application launches in a separate window.
  5. Capture a trace by pressing
    in the window with the target app running ().
    When the capture is complete, a message with the file name displays.
    Hotkeys may interfere with game keyboard usage. In this case, you can customize shortcuts.
  6. Open the trace by double-clicking its thumbnail in the right pane of the Graphics Monitor window ().
    Platform View
    of Trace Analyzer opens.
  7. Perform a high-level analysis to identify whether the bottleneck is on the GPU side.
    You can identify a GPU-bound game by the following criteria:
    • All frames are longer than expected. Expected frame duration depends on performance goals. For example, if your goal is 60 FPS, frame duration should be approximately 16 milliseconds.
      The frame duration is measured in milliseconds and shown in curly braces for each frame in the
      CPU Frames
    • The GPU is busy the entire time and the GPU queue (
      track) has no visible gaps.
    • The Driver queue (
      Device Context
      track) continuously accumulates command buffers waiting for execution on the GPU.
    • CPU threads are inactive most of the time.
      The thread activity zone above the
      CPU thread
      track contains green or grey intervals. Colors indicate whether the thread was active or inactive during a particular period.
  8. Once step 7 is done, close Graphics Trace Analyzer window.
As a result, you can identify whether your application is "bottlenecked" by the GPU. In this case, you need to analyze the graphics pipeline in detail to find optimization possibilities.

Next Steps

If the game is GPU-bound, analyze the graphics pipeline with Graphics Frame Analyzer.
If the game is not GPU-bound:

Product and Performance Information


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