Version 7 (modified by 6 years ago) (diff) | ,
---|
OpenGL Debugging using Apitrace
See also: wiki/ClientRendering and OpenGL client rendering
Whenever you encounter problems with client-side OpenGL
rendering, for example with OpenGL
error messages, crashes, or visual artifacts, there are some specific steps to take to investigate. The *Apitrace
* tool will get a dump of the OpenGL
command stream, allowing it to be sent to the developers for replaying and investigation.
Installation
- On Linux:
Download Apitrace, build it according to the documentation: https://github.com/apitrace/apitrace/blob/master/INSTALL.markdown
- On Windows:
You can use pre-built binaries found at http://people.freedesktop.org/~jrfonseca/apitrace/ Try to always use the latest version and fallback to an older one if it doesn't work.
Trace generation
This trace will enable you to replay the actions of the client without having to re-run it; giving you additional error tracing, ability to send the trace to another person, and ability to replay the exact same steps every time.
Use as follows:
$ apitrace trace xpra attach <your regular commandline>
- Do whatever is needed to reproduce the issue you are experiencing. Beware: Apitrace is keeping a copy of everything you do in RAM, it's going to be huge, so don't run the session for too long, and focus on reproducing one issue at a time.
- Exit Xpra when done
$ qapitrace
File
-> load the trace
Then go to Trace
-> Replay
and check both boxes
Apitrace will replay your trace and report in the bottom panel any errors it found, with additional explanation as compared to what the GL driver typically gives.
Be ready to send the .trace
file to the developers for further investigation.