Release Notes

This section details the newest features and any known issues for NVIDIA Nsight Graphics.

New Features and Capabilities

New features and capabilities in the NVIDIA Nsight Graphics 2019.5 release.

  • Frame Debugging UI
    • The Description column in the Events List is now resizable
    • Significantly improved UI performance for fast scrubbing on the host
    • Added the ability to copy the path and open the containing folder for items in the Project Explorer
  • Feature Enhancement: Tool Windows
    • Added the ability to maximize undocked windows
  • Feature Enhancement: Mixed DPI Monitor Scaling
    • Enhanced mitigation is enabled to address scaling issues for mixed-monitor configurations
  • Feature Enhancement: Shaders View
    • Added support for viewing specialization constants for OpenGL shaders
    • Added syntax highlighting for binary asm shaders
  • New Support: Vulkan Extensions
    • Support for 18 new extensions:
      VK_EXT_astc_decode_mode
      VK_EXT_calibrated_timestamps
      VK_EXT_display_surface_counter
      VK_EXT_filter_cubic
      VK_EXT_fragment_density_map
      VK_EXT_fragment_shader_interlock
      VK_EXT_headless_surface
      VK_EXT_host_query_reset
      VK_EXT_pipeline_creation_feedback
      VK_EXT_separate_stencil_usage
      VK_EXT_shader_demote_to_helper_invocation
      VK_EXT_texel_buffer_alignment
      VK_EXT_validation_features
      VK_EXT_ycbcr_image_arrays
      VK_NV_shader_sm_builtins
      VK_KHR_uniform_buffer_standard_layout
      VK_KHR_surface_protected_capabilities
      VK_KHR_get_display_properties2

Required Display Driver

You must install the NVIDIA display driver that supports the NVIDIA Nsight Graphics tools. If you have an NVIDIA graphics card installed on your target machine, you likely already have an NVIDIA display driver; however, NVIDIA Nsight Graphics requires a specific version of the driver in order to function properly. From the NVIDIA web site, download and install the following display driver:

Windows: Release 436.02 or newer

Linux: Release 430.40 or newer

Deprecations

Deprecated features or operating system support that will be removed in a future release

  • Support for NVIDIA Kepler architecture GPUs will be removed in a future release.
  • Support for the Windows 7 operating system will be removed in a future release

Known Issues

General Known Issues

  1. Profiling of systems in an SLI configuration is not supported.

  2. NVIDIA Nsight Graphics requires a network connection to debug applications. This limitation will be addressed in a future release.

  3. Linux users: Applications that launch child processes are not fully supported in NVIDIA Nsight Graphics. This will be improved in a future version.

  4. Serialized projects can fail to compile if range names contain newline characters. This will be handled in a future release. (54263)

  5. The draw call count in the Range Profiler may be larger than the number of draw calls submitted at the API level. This can be caused by the driver optimizing the submitted workload. This will be updated in a future version. (51956)

  6. Under certain conditions, the Range Profiler pane may be disabled and display one of the following messages.

    Hardware signals are not supported in this configuration

    This message could be due to one of the following reasons:

    1. You are running NVIDIA Nsight Graphics with a Kepler or lower GPU.

    2. You are using a defunct or non-NVIDIA GPU.

    3. You are attempting to profile a debug build of the project.

    No hardware signals found for this API/GPU combination

    This message is likely to occur when you are running NVIDIA Nsight Graphics on a non-MSHybrid laptop. (55730)

  7. NVIDIA Nsight Graphics C++ serialization attempts to pick a reasonable default Windows SDK given the content of the capture. On Visual Studio 2015 and later, the SDK may be easily selected as the Target Platform Version property. (53984)

  8. When calculating the histogram for array or cube map resources, the tool only takes into account face 0. As a work around, if you click on a different face, the histogram will be recalculated for that face. In a future version, this will be fixed to take into account all faces. (34403)

  9. If you experience a TDR on either your host or target system, it is recommended that you reboot your machine before trying to restart the debugging session. (22986)

  10. Since the frame scrubber only allows navigation to actions, there may be times when you select a revision for a resource that is not on or near an action. In this case, an earlier revision is selected that is on/near the selected action. This limitation will be addressed in a future version, when the scrubber allows for navigating to any event, not just actions. (26229)

  11. The Frame Scrubber view does not support the nvtxRangeBegin and nvtxRangeEnd functions, only nvtxRangePush and nvtxRangePop. (21499)

  12. Forcing the target application to close through the task manager while in the Frame Debugger may crash the target application.

  13. Windows DPI scaling is not respected in mixed-DPI scenarios with multiple monitors (always keys off main monitor).

  14. Paths with non-UTF8 characters are not supported as a document save location.

  15. With the initial release of 410 and 411 drivers on Turing GPUs, profiling while running background GPU processes may lead to occasional crashes in the background process. A fix to alleviate this condition is expected in an upcoming driver release. If you experience this symptom, please refrain from running any other GPU processes in the background when running profiling tools like Nsight Compute, Nsight Graphics, Nsight VSE compute or graphics profilers, CUPTI or nvvp.

  16. Some metrics in the Range Profiler (Preview) are blank when a section is expanded. This will be fixed in an upcoming release.

D3D Known Issues

  1. If Direct3D compute shaders are not compiled with reflection, the thread count and related values in the Range Profiler will be incorrect. (48252)

  2. Because of driver restrictions, NVIDIA Nsight Graphics does not support creating a Direct3D 11 device with the Direct3D 9 feature set. This configuration may cause instability and application crashes. (32185)

  3. The Direct3D runtime documentation states that, "the return values of AddRef & Release may be unstable and should not be relied upon." The NVIDIA Nsight Graphics Frame Debugger will also take additional references on objects so any code that relies on an exact reference count at a particular time may fail. In general, users should not expect an exact reference count to be returned from the Direct3D runtime. For more information, see Microsoft's Rules for Managing Reference Counts. (30826)

  4. If you are passing the D3D11_MAP_FLAG_DO_NOT_WAIT to a Map call on a Direct3D 11 Device Context, it is possible that the operation hasn't finished, and that you will see a return code of 0x887A000A or DXGI_ERROR_WAS_STILL_DRAWING. This can happen when the capture is trying to restore a buffer to the frame start state and it is mapped early in the frame. Simply remove the D3D11_MAP_FLAG_DO_NOT_WAIT, and it should function properly. (24846)

  5. If a pipeline stage does not have an object bound, the related state will not be displayed on the host. For example, if there is no pixel shader bound, no Shader Resource Views will be shown in the Pixel Shader page. (15394)

  6. HLSL code cannot contain any non-ASCII characters. Any character with a character code >= 128 is not supported. (14760)

  7. Applications that intercept DirectX devices or objects by use of a shim object are not supported. This interferes with an internal mechanism and therefore cannot be handled properly. (14470)

  8. NVIDIA Nsight Graphics is incompatible with the debug runtime in all versions of Direct3D. While it may sometimes work, there are known incompatibilities that we are unable to support at this time.

  9. Occasionally, synchronization information collected by GPU Trace through ETW will fail, causing synchronization markers to fail to be displayed. This will be addressed in a future release. (DG-3543)

OpenGL Known Issues

  1. Using names that are generated by glGen* is advised for performance and correctness. Under normal operation, if an application uses a mix of generated and non-generated names (e.g. via a middleware product), there is the possibility of conflicts/aliases between names. When running an application under Nsight, Nsight will create its own resources that use names generated by the driver, further increasing the likelihood of conflicts. The recommended approach is to always use names that are generated by the driver via glGen*. (30578)

  2. The Pixel value in the tables for the OpenGL profiler represent shaded pixels (i.e., fragments that ran the fragment shader). If color writes are disabled and the fragment shader doesn't write Z, this value may be 0, even though the depth value for a fragment may be written. (22061)

  3. If you are connected to your target using VNC and attempting to debug an OpenGL program, make sure to disable any "Hook" or "Mirror" driver option in the VNC server settings. (20686)

  4. NVIDIA Nsight Graphics may not work correctly unless double buffering is enabled by the application, since GLUT or other toolkits may skip the SwapBuffer calls for a single buffered window. (24590)

Vulkan Known Issues

  1. When running Vulkan applications, you need to leave some memory available for NVIDIA Nsight Graphics to use as staging areas on the GPU. If you get an out of memory warning on the host, this is a hint that you are hitting this problem.

  2. Vulkan support known limitations include:

    • OpenGL interop is not supported (e.g., glDrawVulkanImageNV).

    • There is no HUD.

    • Shader editing is not yet supported.

    • Native shaders are unavailable, and therefore shader performance statistics are unavailable.

  3. When running a C++ Capture of some large Vulkan applications on Linux, an error may be reported of "Too many resident pages". This can be worked around by adjusting the MAX_RESIDENT_PAGES constant in Helpers.cpp.

Notices

Notice

THE INFORMATION IN THIS GUIDE AND ALL OTHER INFORMATION CONTAINED IN NVIDIA DOCUMENTATION REFERENCED IN THIS GUIDE IS PROVIDED “AS IS.” NVIDIA MAKES NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO THE INFORMATION FOR THE PRODUCT, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. Notwithstanding any damages that customer might incur for any reason whatsoever, NVIDIA’s aggregate and cumulative liability towards customer for the product described in this guide shall be limited in accordance with the NVIDIA terms and conditions of sale for the product.

THE NVIDIA PRODUCT DESCRIBED IN THIS GUIDE IS NOT FAULT TOLERANT AND IS NOT DESIGNED, MANUFACTURED OR INTENDED FOR USE IN CONNECTION WITH THE DESIGN, CONSTRUCTION, MAINTENANCE, AND/OR OPERATION OF ANY SYSTEM WHERE THE USE OR A FAILURE OF SUCH SYSTEM COULD RESULT IN A SITUATION THAT THREATENS THE SAFETY OF HUMAN LIFE OR SEVERE PHYSICAL HARM OR PROPERTY DAMAGE (INCLUDING, FOR EXAMPLE, USE IN CONNECTION WITH ANY NUCLEAR, AVIONICS, LIFE SUPPORT OR OTHER LIFE CRITICAL APPLICATION). NVIDIA EXPRESSLY DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR SUCH HIGH RISK USES. NVIDIA SHALL NOT BE LIABLE TO CUSTOMER OR ANY THIRD PARTY, IN WHOLE OR IN PART, FOR ANY CLAIMS OR DAMAGES ARISING FROM SUCH HIGH RISK USES.

NVIDIA makes no representation or warranty that the product described in this guide will be suitable for any specified use without further testing or modification. Testing of all parameters of each product is not necessarily performed by NVIDIA. It is customer’s sole responsibility to ensure the product is suitable and fit for the application planned by customer and to do the necessary testing for the application in order to avoid a default of the application or the product. Weaknesses in customer’s product designs may affect the quality and reliability of the NVIDIA product and may result in additional or different conditions and/or requirements beyond those contained in this guide. NVIDIA does not accept any liability related to any default, damage, costs or problem which may be based on or attributable to: (i) the use of the NVIDIA product in any manner that is contrary to this guide, or (ii) customer product designs.

Other than the right for customer to use the information in this guide with the product, no other license, either expressed or implied, is hereby granted by NVIDIA under this guide. Reproduction of information in this guide is permissible only if reproduction is approved by NVIDIA in writing, is reproduced without alteration, and is accompanied by all associated conditions, limitations, and notices.

Trademarks

NVIDIA, the NVIDIA logo, and cuBLAS, CUDA, CUDA-GDB, CUDA-MEMCHECK, cuDNN, cuFFT, cuSPARSE, DIGITS, DGX, DGX-1, DGX Station, NVIDIA DRIVE, NVIDIA DRIVE AGX, NVIDIA DRIVE Software, NVIDIA DRIVE OS, NVIDIA Developer Zone (aka "DevZone"), GRID, Jetson, NVIDIA Jetson Nano, NVIDIA Jetson AGX Xavier, NVIDIA Jetson TX2, NVIDIA Jetson TX2i, NVIDIA Jetson TX1, NVIDIA Jetson TK1, Kepler, NGX, NVIDIA GPU Cloud, Maxwell, Multimedia API, NCCL, NVIDIA Nsight Compute, NVIDIA Nsight Eclipse Edition, NVIDIA Nsight Graphics, NVIDIA Nsight Systems, NVLink, nvprof, Pascal, NVIDIA SDK Manager, Tegra, TensorRT, Tesla, Visual Profiler, VisionWorks and Volta are trademarks and/or registered trademarks of NVIDIA Corporation in the United States and other countries. Other company and product names may be trademarks of the respective companies with which they are associated.