Intel® Graphics Performance Analyzers (Intel® GPA)
Improve your game's performance by quickly specifying problem areas

GPA 4.0: some feedback

Benoit_Miller
Beginner
612 Views
Hello,

Congrats on the new GPA release, I've only just started using it and it is already working much better than PIX for Windows. However there are a few minor issues that prevent me from using GPA to debug my day-to-day problems:

1) Floating-point textures are displayed using RGB by default. You can change this to something more appropriate like greyscale in the histogram tab, but the viewer should pick the correct default based on the format. In my case I was troubleshooting an R32F texture.

2) The numeric texel value at the bottom right corner of the texture viewer is always shown in RGB, even for floating-point textures. It should be shown in the same format as the texture (i.e. float values for float textures).

3) It is not possible to save a texture to disk (preferably in .DDS format using the native pixelformat).

4) GPA4 does not seem to like DX9Ex, I cannot see the runtime GPA HUD or capture frames from a DX9Ex device. If I create a standard DX9 device, it works fine. This may be something specific to our app...

5) I wish it was easier to setup a frame capture. Our app is "special" in that the usual keyboard capture methods won't work, so I have to resort to some kind of automatic capture based on the frame number (e.g. auto-capture frame #1000). I would love for the Intel GPA Monitor to expose a "Capture" command, either as a button on the main form or from the context menu of the tray icon, which would do the same thing and avoid the various complications of keyboard hooks.

6) Application profiles (in the Intel GPA Monitor) are a bit clunky. It eventually works after messing around, but the process is extremely unintuitive. I think something like the NVIDIA Application Profile UI would work much better.

I have yet to configure GPA to show the HLSL source or use the pixel history, I'll post more feedback once I have a chance to try it out.

Thanks,
Ben.

--

Windows 7, 64-bit DEP enabled
Num Processors: 8
Memory: 12271MB
System BIOS: Hewlett-Packard 786G3 v01.17 (08/19/2009)
Video BIOS: Version 62.00.4C.00.08 (03/12/09)
Driver 0:
Device: NVIDIA GeForce GTX 260
Provider: NVIDIA
Date: 10-16-2010
Version: 8.17.12.6099
VendorId: 10de
ProductId: 5e2
Stepping: a1
No support for GPA Instrumentation
GPA install directory: C:\\Program Files\\Intel\\GPA v4.0\\
GPA version: 4.0.144237
Current user is in Administrators group: YES
0 Kudos
1 Solution
Neal_Pierman
Valued Contributor I
612 Views
Hello,

Congrats on the new GPA release, I've only just started using it and it is already working much better than PIX for Windows. However there are a few minor issues that prevent me from using GPA to debug my day-to-day problems:

1) Floating-point textures are displayed using RGB by default. You can change this to something more appropriate like greyscale in the histogram tab, but the viewer should pick the correct default based on the format. In my case I was troubleshooting an R32F texture.

2) The numeric texel value at the bottom right corner of the texture viewer is always shown in RGB, even for floating-point textures. It should be shown in the same format as the texture (i.e. float values for float textures).

3) It is not possible to save a texture to disk (preferably in .DDS format using the native pixelformat).

4) GPA4 does not seem to like DX9Ex, I cannot see the runtime GPA HUD or capture frames from a DX9Ex device. If I create a standard DX9 device, it works fine. This may be something specific to our app...

5) I wish it was easier to setup a frame capture. Our app is "special" in that the usual keyboard capture methods won't work, so I have to resort to some kind of automatic capture based on the frame number (e.g. auto-capture frame #1000). I would love for the Intel GPA Monitor to expose a "Capture" command, either as a button on the main form or from the context menu of the tray icon, which would do the same thing and avoid the various complications of keyboard hooks.

6) Application profiles (in the Intel GPA Monitor) are a bit clunky. It eventually works after messing around, but the process is extremely unintuitive. I think something like the NVIDIA Application Profile UI would work much better.

I have yet to configure GPA to show the HLSL source or use the pixel history, I'll post more feedback once I have a chance to try it out.

Thanks,
Ben.

Hello,

For the first three items (textures displayed in RGB, saving textures), I have submitted an enhancement request to the development team. These seem to make sense, as the native mode is what you're using for debugging.

For DX9Ex, GPA doesn't support this API at this time. You are not the first to ask for this, and I'll add your input as another request for supporting DX9Ex.

For frame captures, let's look at this in another way... is there something that GPA could do so that keyboard shortcuts would work alongside your game? If this is not possible, it would probably be hard to add a button to the HUD, so I'm guessing a "capture frame now" command in GPA Monitor would be best? [Note: In older versions of GPA we had a way of doing frame captures via a separate utility, but we eliminated this in favor of triggers and the HUD.]

Yes, the UI for application profiles is difficult and unintuitive. This is already a high priority item for the development team -- as you mention, a complete revamp is needed to improve the usefulness of this powerful feature.

Thanks again for your use of GPA! Your feedback has been very helpful!

Regards,

Neal

PS -> You've got a lot of great suggestions here! We're always trying to improve the usefullness of GPA for game developers, so your insight into the things that are most beneficial is exactly what we're looking for!

View solution in original post

0 Kudos
4 Replies
Neal_Pierman
Valued Contributor I
612 Views
Hello,

Thanks for the valuable feedback!

I'm in the process of looking over your comments, and will post my thoughts on these within the next day.

Regards,

Neal
0 Kudos
Neal_Pierman
Valued Contributor I
613 Views
Hello,

Congrats on the new GPA release, I've only just started using it and it is already working much better than PIX for Windows. However there are a few minor issues that prevent me from using GPA to debug my day-to-day problems:

1) Floating-point textures are displayed using RGB by default. You can change this to something more appropriate like greyscale in the histogram tab, but the viewer should pick the correct default based on the format. In my case I was troubleshooting an R32F texture.

2) The numeric texel value at the bottom right corner of the texture viewer is always shown in RGB, even for floating-point textures. It should be shown in the same format as the texture (i.e. float values for float textures).

3) It is not possible to save a texture to disk (preferably in .DDS format using the native pixelformat).

4) GPA4 does not seem to like DX9Ex, I cannot see the runtime GPA HUD or capture frames from a DX9Ex device. If I create a standard DX9 device, it works fine. This may be something specific to our app...

5) I wish it was easier to setup a frame capture. Our app is "special" in that the usual keyboard capture methods won't work, so I have to resort to some kind of automatic capture based on the frame number (e.g. auto-capture frame #1000). I would love for the Intel GPA Monitor to expose a "Capture" command, either as a button on the main form or from the context menu of the tray icon, which would do the same thing and avoid the various complications of keyboard hooks.

6) Application profiles (in the Intel GPA Monitor) are a bit clunky. It eventually works after messing around, but the process is extremely unintuitive. I think something like the NVIDIA Application Profile UI would work much better.

I have yet to configure GPA to show the HLSL source or use the pixel history, I'll post more feedback once I have a chance to try it out.

Thanks,
Ben.

Hello,

For the first three items (textures displayed in RGB, saving textures), I have submitted an enhancement request to the development team. These seem to make sense, as the native mode is what you're using for debugging.

For DX9Ex, GPA doesn't support this API at this time. You are not the first to ask for this, and I'll add your input as another request for supporting DX9Ex.

For frame captures, let's look at this in another way... is there something that GPA could do so that keyboard shortcuts would work alongside your game? If this is not possible, it would probably be hard to add a button to the HUD, so I'm guessing a "capture frame now" command in GPA Monitor would be best? [Note: In older versions of GPA we had a way of doing frame captures via a separate utility, but we eliminated this in favor of triggers and the HUD.]

Yes, the UI for application profiles is difficult and unintuitive. This is already a high priority item for the development team -- as you mention, a complete revamp is needed to improve the usefulness of this powerful feature.

Thanks again for your use of GPA! Your feedback has been very helpful!

Regards,

Neal

PS -> You've got a lot of great suggestions here! We're always trying to improve the usefullness of GPA for game developers, so your insight into the things that are most beneficial is exactly what we're looking for!
0 Kudos
Benoit_Miller
Beginner
612 Views
Hello Neal,

Manual triggering of a capture via the GPA Monitor is exactly what I meant, not capturing through the HUD (when I said "main form" in #5, I meant "main form of the GPA monitor"). A separate utility to trigger captures (or even an externally-accessible API) would be fine as well.

The exact problem is that our problematic application is split in two processes. The entire UI is made in C#, but the actual D3D rendering is done in a separate C++ process. This means that the focus window is NOT the one that D3D is running on (and in fact that window does not even belong to the rendering process!), so traditional keyboard capture tricks don't work (intercepting window messages, application-centric keyboard hooks). This has been a problem with PIX for Windows and NVPerfHUD as well.

I believe using global keyboard hooks might work, but this is behavior that is often associated with malware so it might be flagged (or disabled) by anti-malware runtime scanners.

Thanks,
Ben.
0 Kudos
Neal_Pierman
Valued Contributor I
612 Views
Ben,

Thanks for the quick response... I'll include your detailed info back to the development team to see if they have any "tricks" that they can think of that will get this to work for you.

Regards,

Neal

PS-> even if we get something to work short-term for you, I can see the need for this and I'll still add this to our list of future enhancement requests
0 Kudos
Reply