ApiTrace 1.0 Released: A Great Way To Debug Graphics

Posted by Michael Larabel on April 27, 2011

José Fonseca and Zack Rusin have spent the last several months writing ApiTrace, which formerly was known as GLretrace. This is meant to be a powerful utility to debug OpenGL and Direct3D graphics applications and drivers. It allows you to easily capture the graphics API calls, analyze them in a step-by-step manner, and to playback traces at a later point. ApiTrace also allows for real-time editing of shaders and other OpenGL/Direct3D calls to see their impact on the rendering and drivers.

From the ApiTrace 1.0 release announcement, "FYI, over these past months I've been continuing to improve glretrace on my spare time, and lifted several of the previous limitations: added support for DrawArrays/Elements with user pointers; Map/UnmapBuffer; more extensions; several bug fixes. To the point that a great deal of GL apps trace & retrace flawlessly (tested e.g., Quake3, Unigine Heaven, Cinebench R11, Autodesk Maya)."

What makes ApiTrace even more powerful is that Zack Rusin wrote a QT user-interface to ApiTrace that allows exploiting all of these features from a very-easy-to-use interface. "Warning: this GUI is not the cherry on top of the cake, it's the whole sugar coating and it will make you salivate like a rabid dog! It allows to view the traced calls, view the state (parameters, shaders, textures, etc) at any call, and edit the calls, and more. Pretty amazing stuff, useful both for GL users and implementers."

Zack Rusin wrote this blog post where he talks about ApiTrace and his Qt GUI in length. There's also many screenshots of this program. If you're involved at all with graphics drivers or OpenGL/Direct3D programs, it's definitely worth trying out ApiTrace.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. KDE's KWin Made Lots Of Progress In 4.11
  2. Ubuntu Announces Carrier Advisory Group
  3. Qt 5.1 Release Candidate 1 Has Arrived
  4. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  5. Subversion 1.8 Presents New Features
  6. LLVM 3.3 Officially Released
  7. LLVM/Clang Now Uses Loop Vectorizer At New Levels
  8. Intel GPU Driver Tries To Rip Out FBDEV Support
  9. Coreboot Doing AMD USB 3.0, Q35 QEMU Emulation
  10. VP9 Codec Now Enabled By Default In Chrome
  11. openSUSE 13.1 M2 Plays On PulseAudio 4.0
Latest Forum Talk
  1. The Wayland Situation: Facts About X vs. Wayland
  2. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  3. Intel GPU Driver Tries To Rip Out FBDEV Support
  4. Ubuntu Announces Carrier Advisory Group
  5. Intel Haswell HD Graphics 4600 vs. AMD Radeon...
  6. Planetary Annihilation Plans To Come To Linux
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite