WE GOT A hands on look at the beta for AMD's Perfstudio 2.0 yesterday, and there is a lot to like. It fills a huge hole in AMD's software stack, and does so very well.
The idea behind the studio is to allow developers to debug code running on a GPU, something that is very complex now. Instead of debugging things on the PC you are running the game on, something PerfStudio 2.0 (PS2) can do, the recommended way is to dump the data to a remote PC. Doing things like this adds very little overhead to the running game.
Perfstudio 2.0 looking at layers
One of the more interesting things you can do is breakpoint any running game and slice through the rendering layers. You stop the game and say 'show me wireframes', or 'show the third shader pass results', and it does. In the screen above, you can see some of the wireframe passes from the ATI Froblins demo. You can do this to almost any current game DX10.x without modifications to the code.
Once you have something frozen, you can drag or copy the image to PS2 and analyse the results in a deeper way. You don't just get the pretty pictures, you also get the code behind it.
PS2 is the only tool we know of that will let you freeze, view and debug running shaders. You can't currently edit the code in place, but we suspect this will come in very short order, 2.0 is far from the last rev.
More interestingly, the tool is not ATI card specific, it will work on DX10.1 GPUs from both ATI and S3, along with older DX10 only cards. PS2's remote console will run on XP or Me II, but the debugger itself will only work on Me II because it needs DX10.x. Another nice touch is that it is bit-agnostic. You can debug a 32-bit executable on a 64-bit machine, and the other way around because PS2 is not magic driver based.
If you have an ATI chip, you will get access to almost all the chip's internal counters, with the few remaining coming in the next few revs. Other DX10.x GPUs will have reduced functionality, but there is no reason you can't script the counters back in.
Another very handy feature is profiling, and what performance tool wouldn't have that? It does have overhead, they all do, but the data is worth it. As you can see, you get a ton of information, and can step through things however you want. You can drag and drop, capture and save until you get bored. With a little more tweaking, it could be the ultimate benchmarking tool.
The best part is the price, free. It is a closed beta, but before you turn away, this means you just have to ask them for it. Email the good trolls that make AMD's tools in deepest, darkest Boxborough caves using the address PerfStudio.Beta@amd.com, and you will get a copy. Hack away, there should be a lot of good yet mischievous things you can do with this tool. µ