NVIDIA Nsight Developer Tools#

Note

Prerequisite: Before working with Nsight Systems, see Working with Additional NVIDIA DriveOS Packages to download and install the required Nsight Systems packages.

Nsight Developer Tools is a comprehensive tool suite spanning across desktop and mobile targets which enable developers to build, debug, profile, and develop class-leading and cutting-edge software that utilizes the latest visual computing hardware from NVIDIA.

NVIDIA Nsight Developer Tools#

Tool

Description

Latest Documentation

NVIDIA Nsight™ Visual Studio Code Edition (VSCE)

NVIDIA Nsight™ Visual Studio Code Edition (VSCE) is an application development environment for heterogeneous platforms that brings CUDA® development for GPUs on Linux and QNX target systems into Microsoft Visual Studio Code. NVIDIA Nsight™ VSCE enables you to build and debug GPU kernels and native CPU code as well as inspect the state of the GPU and memory. Read more about VSCE

Nsight Compute

NVIDIA Nsight™ Compute is an interactive profiler for CUDA® and NVIDIA OptiX™ that provides detailed performance metrics and API debugging via a user interface and command-line tool. Users can run guided analysis and compare results with a customizable and data-driven user interface, as well as post-process and analyze results in their own workflows. Read more about Nsight Compute

Nsight Systems

NVIDIA Nsight™ Systems is a system-wide performance analysis tool designed to visualize an application’s algorithms, identify the largest opportunities to optimize, and tune to scale efficiently across any quantity or size of CPUs and GPUs, from large servers to our smallest systems-on-a-chip (SoCs)

NVIDIA Nsight™ Systems is available as a GUI application on host container or as a standalone CLI application on target device with dev_nsr_desktop_rfs layer. Read more about Nsight Systems

Nsight Graphics

NVIDIA Nsight™ Graphics is a standalone developer tool with ray-tracing support that enables you to debug, profile, and export frames built with Vulkan, Vulkan-SC, OpenGL, and OpenGL ES. Read more about Nsight Graphics

Compute Sanitizer

Compute Sanitizer is a functional correctness checking suite that contains multiple tools for different types of checks—including checks for memory access errors, shared memory data access hazards, uninitialized accesses to global memory, and invalid usage of synchronization primitives. Read more about Compute Sanitizer

cuda-gdb

CUDA-GDB is an extension to GDB, the GNU Project debugger. The tool provides you with a mechanism for debugging CUDA applications running on actual hardware, so you can debug applications without the potential variations introduced by simulation and emulation environments. Read more about CUDA-GDB

CUDA Profiling Tools Interface (CUPTI)

CUPTI is a dynamic library that enables the creation of profiling and tracing tools that target CUDA applications. Using the CUPTI APIs, you can create profiling tools that give insight into the CPU and GPU behavior of CUDA applications. Read more about CUPTI

Running GUI Applications in DriveOS Container#

Note

Developers can enable xhost on native host and redirect GUI from the DriveOS container running the graphical application using following arguments as part of DriveOS docker launch:

--env="DISPLAY" --volume="$HOME/.Xauthority:/root/.Xauthority:rw"