When the pros first setup their Jetsons, one of the first tools they install is jtop. jtop is a command line tool written by Raffaello Bonghi, one of the original Jetson Champs. He’s also responsible for nanosaur, the smallest NVIDIA Jetson dinosaur robot. You can make a nanosaur yourself, it’s open source! Raffaello is so good that NVIDIA coaxed him into joining their company!
The jtop tool is user-friendly and easy to install. Looky here:
The NVIDIA Jetsons are small computing modules intended for integration into embedded systems. There are many uses, such as artificial intelligence and robotics. The Jetsons all feature a System on a Chip (SoC) architecture. On the chip, there is a Graphics Processing Unit (GPU). Depending on the Jetson model, there may be other compute complexes. For example, new Jetsons have Deep Learning Accelerators (DLAs).
Monitoring resource usage, temperature and power draw is important on these devices. Enter jtop, a user-friendly command line tool for monitoring and controlling your Jetson.
Features and Benefits for Real-Time Jetson Performance Monitoring
jtop is a system monitoring tool providing real-time Jetson performance information. It displays information about the usage of the CPU, GPU, memory and other system resources. jtop displays the output from the Jetson power monitors and temperature sensors.
Another useful feature is the information page. This page describes the version of Jetson Linux and Jetson libraries in use. There is a section describing the Jetson hardware in detail. This is beyond useful when trying to figure out which version of the Jetson software is installed. jtop works on all Jetson models, from the Jetson TX1/Nano to the Jetson Orin.
jtop API: Unlocking the Power of Jetson Secrets with Python
The jetson-stats repository on Github contains the jtop tool. The jtop tool was recently rewritten as a Python library with an API. This allows developers to include jtop functions in their applications. The jtop Python library contains a treasure trove of Jetson secrets. It is well worth reading through the code when you want to access low level hardware information.
The jtop tool supports both Docker and Python virtual environments.
Installing and Running on NVIDIA Jetson Devices
There are a couple of ways to install jtop. The easiest way is to use the Python Install Package (pip) to install jetson-stats from PyPi.
$ sudo apt update
$ sudo apt install python3-pip
After pip installs:
$ sudo pip3 install -U jetson-stats
Once pip installs the jetson-stats package, you will need to logout/login or reboot the Jetson.
After rebooting, to run jtop open a Terminal and execute:
The interface will appear in the Terminal.
There are several different tabs. It’s time for you to go exploring! There’s good documentation available on the jtop project page.
As an alternative, you can install from source. The source is in the Raffaello Bonghi Github jetson-stats repository.
Comparing Jtop and Jetson Power GUI for NVIDIA Jetson Performance Monitoring
There are other tools out there that provide some of the information that jtop does. The NVIDIA Tegrastats Utility reports memory and processor usage for Jetsons. There is also thermal information available. This command line utility simply prints out a string of values at a user definable interval. While you can’t consider it user-friendly, it has it’s use.
The Jetson Power GUI is a GUI tool for monitoring the power and thermal status of Jetson platforms. This utility is a GUI application which displays much of the same information as jtop. There is real time graphing available for a wide variety of features. One of the major features of the Jetson Power GUI is the ability to log the information that is being displayed. There are a couple of downsides. First, the program only runs on Jetson Xaviers and Orins. The second is that the program is more technical than jtop. If you are very familiar with the Jetson and have a in depth knowledge of what the program displays you’re fine. A casual observer? Not so much. The documentation is well done, the UI of the program needs a little polish.
Most folks that have been around the Jetson community for any length of time use jtop. It takes the guess work out of what’s going on under the hood. Recommended.
The demo in the video is running on a NVIDIA Jetson Nano Development Kit, and a NVIDIA Jetson AGX Orin Development Kit. The Jetson Nano is available again after an absence from the market.
PS: If you happen to be using Putty on Windows, and happen to have broken line characters (displayed as bunch of qqqqqwqqqq and xxxx), make sure to check the setting “Enable VT100 line drawing even in UTF-8 mode” under Window -> Translation
May this save someone some troubles 🙂
Thank you for sharing this! And thanks for reading.