Graphics profiling

This page aims to give an overview of the various tools available for profiling graphics part of the game (i.e. measuring speed and resource usage), and some details on how to use them.

Frame profiling


  1. Install apitrace from (analyzing scripts require Python 3)
  2. Capture a trace. Currently apitrace can't capture an interval, it starts capturing from the beginning. So it makes sense to repeat the needed frame as fast as possible using a window size as small as possible (a minute capture might use few GBs).
    path/to/apitrace trace --api gl --output 0ad.trace path/to/pyrogenesis [pyrogenesis arguments...]
  1. Analyze the capture.
    path/to/apitrace replay --headless --pframe-times --pgpu --pcpu --ppd 0ad.trace > 0ad.trace.profiling.txt
    • --pframe-times record frames times, waiting for presentation to finish before starting next frame.
    • --pgpu record GPU times for frames and draw calls.
    • --pcpu record CPU times for frames and draw calls.
    • --ppd record pixels drawn for each draw call.
    • --headless don't show windows.

Graphics profiling and debugging tools

A list of tested tools that work or partly work for Pyrogenesis (A24).

Other lists of graphics tools (not tested or tested a long time ago):

Last modified 21 months ago Last modified on Jan 22, 2021, 1:13:29 PM
Note: See TracWiki for help on using the wiki.