NVIDIA Tegra
NVIDIA Jetson Linux Developer Guide
32.4.3 Release

 

Architecture

 
Jetson Board Support Package
Artificial Intelligence
Computer Vision
Camera
Display
CUDA Toolkit
Graphics
Multimedia
Developer Tools
JetPack SDK
The following diagram shows the NVIDIA® Jetson™ Board Support Package (BSP) architecture.
A screenshot of a cell phone Description automatically generated
The following sections describe the components of each module.

Jetson Board Support Package

Linux Kernel: A UNIX-like computer operating system kernel mostly used for mobile devices.
Sample Root Filesystem derived from Ubuntu: A sample root filesystem of the Ubuntu distribution. Helps you create root filesystems for different configurations.
Toolchain: A set of development tools chained together by stages that runs on various architectures.
Bootloader: Boot software boot for initializing the system on the chip.
Sources: Source code for kernel and multimedia applications.
NVIDIA® Jetson™ User Space Drivers: Provides the NVIDIA drivers that run in the userspace.
Flashing Support Scripts and Tools: A set of scripts and associated tools to assist in flashing your system.
Sample Source Code and Applications: Sample source code for developing embedded applications for the Jetson platform.

Artificial Intelligence

NVIDIA® TensorRT™: Provides a high-performance neural network inference engine for production deployment of deep learning applications. It can be used to optimize, validate and deploy trained neural networks for inference to the Jetson platform. The Multimedia API provides samples that use this engine.
NVIDIA® SDK Manager installs this component as part of the Low-Level Multimedia API.
cuDNN: NVIDIA® CUDA® Deep Neural Network library.

Computer Vision

VisionWorks: NVIDIA® VisionWorks™ software development package for computer vision (CV) and image processing.
OpenCV: Provides OpenCV that NVIDIA optimized specifically for the Jetson platform. It contains Jetson-specific optimizations that enable it to run faster than the OpenCV implementation.

Camera

libArgus: A low-level API based on the camera core stack.
SDK Manager installs this component as part of the Multimedia API which provides a collection of APIs that supports flexible application development with better control over the underlying hardware blocks.

Display

NVDC-DRM: NVIDIA userspace and driver for display.
X Driver: NVIDIA accelerated X driver.
Weston: NVIDIA accelerated Weston (compositor based on Wayland protocol).

CUDA Toolkit

Toolkit for Ubuntu host with cross deployment support: CUDA toolkit for the host.
Toolkit for Jetson Developer Kit running Jetson BSP: CUDA toolkit for use with the Jetson Developer Kit.

Graphics

OpenGL: Open Graphics Library API for rendering vector graphics.
OpenGL ES: Cross-platform API for full-function 2D and 3D graphics on embedded systems
EGL: Interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system.
Vulkan: A low level API that gives direct access of the GPU to developers.

Multimedia

Multimedia API (MMAPI): A collection of lower-level APIs that support flexible application development. Multimedia API includes:
Libargus for imaging applications
Buffer utility for buffer allocation, management, and sharing
NVOSD for On-Screen display
V4l2 API extensions with a video converter, decoder, and encoder.
Application framework (optional)
MMAPI also includes samples that demonstrate image processing with CUDA, and object detection and classification with cuDNN, TensorRT and OpenCV4Tegra usage.
MMAPI is for developers who use a custom framework or wish to avoid a framework like GStreamer.
MMAPI must be separately downloaded from the NVIDIA Jetson Download Center. It is not included in the download for the Jetson Driver.
GStreamer: Provides a higher-level multimedia API. This framework provides a parallel capability to the collection of APIs in the lower-level Multimedia API.
The GStreamer framework is installed with the download for the Jetson Driver. It is also installed by SDK Manager.
This framework is an alternative to Multimedia API.

Developer Tools

Nsight Systems: Profiles application execution across multiple CPU cores. Helps you improve application performance by identifying slow parts of code.
Runs on the Linux host computer. Supports all Jetson products.
NVIDIA® Nsight™ Compute: Interactively profiles kernel operations for CUDA applications. Provides detailed performance metrics and API debugging via a user interface and command line tool.
Nsight Graphics: Debugs and profiles OpenGL and OpenGL ES graphics programs through a console interface.
Runs on the Linux host computer. Supports all Jetson products.

JetPack SDK

Documentation: Provides details for your development on the Jetson platform.
Samples: Designed to give you hands-on, practical examples for using the Jetson development platform,