NVIDIA JetPack™

The latest NVIDIA JetPack bundles all of the developer tools required to develop for the Jetson platform, including system profiler, graphics debugger, and the CUDA Toolkit.

Nsight Systems

Nsight Systems is a low overhead system-wide profiling tool, providing the insights developers need to analyze and optimize software performance. It uses GPU tracing, CPU sampling and tracing, and OS thread state tracing to visualize an application’s algorithms, helping developers identify the largest opportunities to optimize their code.

Nsight Graphics

Nsight Graphics is a console-grade tool that allows you to debug and optimize your OpenGL and OpenGL ES applications, enabling you to get the latest, most advanced GPU features with the Jetson platform.

CUDA Toolkit

CUDA Toolkit provides a development environment for creating high-performance GPU-accelerated applications, and includes all the necessary debugging, correctness and optimization tools, including

  • Debuggers
      cuda-gdb: command line debugger
      Nsight Eclipse Edition: Eclipse IDE editor & debugger
  • Profiling
      Nsight Compute: GUI+CLI profiler and API debugger.
  • Code Correctness
      Compute Sanitizer: Suite of code correctness tools.
  • API Libraries
      CUPTI: Profiling and Trace API Library.
      Compute Sanitizer API: Code Correctness API Library.
      Debugger API: CUDA Debugging APIs
For more information, see the Tools and API sections below with 'Source: CUDA Toolkit'.

Externally Available:

Some CUDA tools are available from non NVIDIA sites or from within IDEs:

  • Debuggers
      Nsight Visual Studio Code Edition: Visual Studio Code extension for CUDA development & debugging.
For more information, see the Tools section below, with Source other than CUDA Toolkit.

Development Tools:

NVIDIA Nsight Eclipse Edition

Source: CUDA Toolkit (included with JetPack)
Type: Debugger

Nsight Eclipse Edition is a full-featured IDE powered by the Eclipse platform. It provides an all-in-one integrated environment to edit, cross-compile, and debug CUDA-C applications. Nsight Eclipse Edition supports a rich set of commercial and free plugins.

CUDA GDB

Source: CUDA Toolkit (included with JetPack)
Type: Debugger

CUDA-GDB is a command line tool that delivers a seamless debugging experience allowing you to debug both the CPU and GPU portions of your application simultaneously.

Compute Santizer

Source: CUDA Toolkit (included with JetPack)
Type: Code Correctness

Compute Sanitizer is a functional correctness checking suite. This suite contains multiple tools for detecting hazardous conditions in CUDA applications, including:

  • Memcheck: Detects out of bounds and misaligned memory accesses.
  • Racecheck: Identifies memory access race conditions.
  • Initcheck: Reveals uninitialized device global memory accesses.
  • Synccheck: Reports on incorrect usage of synchronization primitives.

Nsight Compute

Source: CUDA Toolkit (included with JetPack)
Type: Profiler

Nsight Compute is the new interactive kernel profiler for CUDA applications. It runs on your Linux host computer and provides detailed performance metrics for analysis and enables results comparison between baselines and the current run. Nsight Compute can be extended with analysis scripts for post-processing results. Guided Analysis points to hotspots and GPU usage imbalances. Also included is a command line tool that can be run on your Jetson system or on your Linux host computer.

Nsight Visual Studio Code Edition

Source: Microsoft Visual Studio Code Marketplace
Type: Debugger

Nsight Visual Studio Code Edition is an extension for Visual Studio Code that brings CUDA® development for GPUs into Microsoft Visual Studio Code, including features such as Intellisense, debugger views, and productivity enhancements. Debugging in 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.

API Libraries:

CUDA Profiling Tools Interface (CUPTI)

Source: CUDA Toolkit (included with JetPack)
Type: Profiling and Event Trace

A dynamic library that enables the creation of profiling and tracing tools that target CUDA applications. CUPTI provides a set of APIs targeted at ISVs creating profilers and other performance optimization tools.

Using these CUPTI APIs, independent software developers can create profiling tools that provide low and deterministic profiling overhead on the target system, while giving insight into the CPU and GPU behavior of CUDA applications.

Debugger API

Source: CUDA Toolkit (included with JetPack)
Type: Debugging

The Debugger API is a set routines and data structures available in the CUDA library for development of 3rd party debuggers.

Using the Debugger APIs, independent software developers can create debugging tools that allow application attach & detach, execution control, state inspection, and exception reporting on the target system, while giving insight into the CPU and GPU behavior of CUDA applications.

Compute Sanitizer API

Source: CUDA Toolkit (included with JetPack)
Type: Code Correctness

This API enables the creation of code correctness tools for use on CUDA applications. Examples of such tools are memory and race condition checkers. The Compute Sanitizer API is composed of three APIs:

  • The Callback API.
  • The Patching API.
  • The Memory API.
It is delivered as a dynamic library on supported platforms.

Using these Compute Sanitizer APIs, independent software developers can create sanitizing and tracing tools that target CUDA applications.



JetPack, L4T, and SDK Information

The L4T BSP and other software libraries are available under Develop → Software.