NVIDIA® Nsight™ Application Development Environment for Heterogeneous Platforms, Visual Studio Edition 5.2 User Guide
Send Feedback
Visual Studio's local and global variable tool windows only support viewing a variable in a single thread at a time. The NVIDIA Nsight CUDA Debugger uses the current focus thread and stack frame to evaluate these expressions.
NVIDIA Nsight introduces the CUDA Warp Watch tool window, which shows information about evaluated expressions in a single focused warp in the NVIDIA Nsight CUDA Debugger within Visual Studio.
Expressions will be evaluated when the CUDA Debugger stops in a kernel by hitting a breakpoint or exception (for example, from the CUDA memory checker).
The features shown here include the following:
The view updates when the current CUDA focus changes, and always shows the warp that contains the current focus thread.
In this scenario, the lane is at a different PC than the focus lane. Lanes diverged from focus have a gray background.
![]() |
Note this is NOT the same as inactive lanes. You can change to an inactive lane, and the other lanes will show diverged. |
![]()
Example 1. An example of a successful evaluation, diverged at lane 16. In this figure, the focus is lane 16.
![]()
Example 2. Changing to a different focus shows the other lanes as diverged from focus. (This is represented by reversing the white and gray backgrounds.) In this instance, the lane was changed to 0, so lanes 16-31 are now gray; the PC is at line 54.
![]()
Example 3. Here, you can see that it is possible to have a variable that is valid in some lanes, but not in others.
Errors can occur for various reasons within the warp watch. For example:
![]()
Example 4. This illustrates a shadow variable error. Here, the focus variable's type isfloat
, but it is shadowing anint
.
Another common cause for error is when the lane has diverged from the focus lane and is in a different stack frame. The CUDA Warp Watch feature does not evaluate in other stack frames.
![]()
Example 5. This illustrates a stack frame error. Here, the frame "SubFrame" does not exist in the even lanes, hence it cannot evaluate.
NVIDIA® Nsight™ Application Development Environment for Heterogeneous Platforms, Visual Studio Edition User Guide Rev. 5.2.161206 ©2009-2016. NVIDIA Corporation. All Rights Reserved.