Perf Marker 'Message' not displaying correctly when using nvtxPushMarkerEx with Nsight 2.2

If I set up some draw markers in my application using nvtxPushMarkerEx like so:

void beginDrawEvent(const DWORDColor& Color,const char* Text)
 	nvtxEventAttributes_t eventAttrib = {0};
 	eventAttrib.version = NVTX_VERSION;
 	eventAttrib.colorType = NVTX_COLOR_ARGB;
 	eventAttrib.color = Color.GetARGB();
 	eventAttrib.messageType = NVTX_MESSAGE_TYPE_ASCII;
 	eventAttrib.message.ascii = Text;


void endDrawEvent()

Then after doing a Tools Extension Trace Activity, every marker’s message is either completely blank or “Unknown” (rarely). If I instead use ‘nvtxRangePush(Text)’ and ingore all the extra settings, then it works just fine, though I’d like to use the color/category stuff. I was wondering if this was a known issue, or potentially fixed in 3.0?

On a related note, I noticed that nvtx markers seem to not be supported by the graphics debugger, where it would be very useful to have. My application has a minimum spec of DX11, so using the DX9 style of perf markers referred to by the [ User Guide -> Graphics Debugger -> Frame Debugger -> Performance Markers ] page is not an option for me. Are there any plans to include this functionality at any point?

Win 7 64bit
Visual Studio 2010
Nsight 2.2 Remote Debugging Setup
DX11 app
GTX 480 Target
314.22 Drivers

Thanks in advance,

  • Mark

Mark, I am not aware of any failures in the nvToolsExt* libraries for Nsight VSE 2.2 or 3.0. I will file a bug to investigate the issue.

Many D3D10 and D3D11 titles dynamically load d3d9.dll in debug/develop versions of the application in order to use just the D3DPERF_* functions. Microsoft did not carry the D3DPERF_* functions into d3d10 and d3d11 dlls. The DXUT library dynamically loads d3d9.dll for these functions in the D3D10 and D3D11 samples.

Ok, I was hoping to avoid the extra dynamic load, but if I need to, I need to. Thanks for the quick reply!