Tuesday, September 27, 2011

ApiTrace 2.0

ApiTrace 2.0 is out. ApiTrace is by far the best graphics debugging tool out there.

We have implemented so many new features since 1.0 that we have decided to bump the version number to 2.0.

Some of the new features include:
  • About 10x faster tracing and 2x faster retracing
  • Mac OS X support
  • OpenGL 4.2 support
  • Support for multi-gigabyte traces in the GUI
  • Ability to display all of the uniforms
  • Showing number of calls per frame, marking large frames and ability to indent shaders
  • Support for `GL_GREMEDY_string_marker` and `GL_GREMEDY_frame_terminator` extensions, so you can mark frames and important pieces of code in your applications.
  • Incredible amount of bug fixes, making sure that everything we throw at it just works

The huge improvements in the performance of tracing came from both flushing/syncing the trace files only if there's an uncaught signal/exception and switching to Snappy compression from zlib.
We also did some magic to seek and load on demand from a compressed file on the disk which means that we don't load all of the data at once. That allows us to load huge files in the GUI while using very little memory. For example loading a 1GB file takes only ~20MB of RAM.

All of those improvements mean that it's possible to trace and debug huge applications with little to no costs. It's quite amazing. In fact working with graphics and not using ApiTrace starting now is going to be classified as abuse.
Read the instructions and start living the life of a computer graphics superstar, which differs from the life of an average computer graphics hacker by about 10 keyboard headbutts and half a bucket of tears a week! And that's a change we can all believe in!


Anonymous said...

Awesome!! Great welcome for OpenGL developers! More tools the better!

Anonymous said...

Can we please have a windows version. This seems to be a great piece of software.

Anonymous said...

For Windows you have:


Zack said...

What do you mean? Of course it works on Windows. In fact Jose uploaded binaries. Read the README.

Aaron Watry said...

Just curious if this would be something that can be easily extended to trace the OpenCL API usage in the future.

Anonymous said...

A really valuable work.


Anonymous said...

Well the gDEBugger thing does not support 4.2 and your software seems a lot better. Why not provide a windows version?

Zack said...

We do. Jose even uploaded binaries. You really should click on the first link in the blog.

Исламов Денис said...

Good day! Can't you say, maybe you know any plugins to save a frame from *.trace file in *.obj file? For GLIntercept it's OGLE but it works incorrectly for my GL scene. You tracer displays everything good! Thanx:)

Anonymous said...

There have been a couple of replies here stating that Jose uploaded pre-built Windows binaries. (Unless I misunderstood, which is possible.) I actually don't believe it! I clicked every link in this blog post, downloaded the tarball, cloned the git repository, etc., but have yet to find these binaries, I'm afraid. They seem to be elusive, actually. I'm not angry, just anxious and seeking clarity!

Zack said...

There's a huge "Downloads" button on that page. If you click on it, it will show a popup and among others

paul said...

Easy to setup. Quick to use. Nice gui. Thanks so much. Keep up the great work.

Christophe R. said...

It looks like an amazing tool and I need to give it a try as soon as I can!

Emanem said...

Zach, apparently the benchmark mode doesn't work... I'd like to have a mode which will just try to draw all the frames as quickest as possible.
is this available?


Anonymous said...

Is it possible to edit shaders and state without using the gui? For example, I can dump state using the -D command line argument, but if I want to change any of that state and replay, I don't see a way without the use of the GUI...

Seb.f said...

Hi Zack,
No news since a while dude. How is doing everything?

Simon said...

Sadly the Windows Binary Link is 404 :( Is there any mirror?