Tegrastats Utility#
The tegrastats
utility reports memory usage and processor usage for NVIDIA® Jetson™-based devices.
You can find the utility in your package at <top>/core/utils/tegrastats
.
Reported Statistics#
The following table shows the statistics the tegrastats
utility reports.
Format of statistic Example of statistic Description of statistic |
X | Y | Z | ||
---|---|---|---|---|---|
RAM X /Y (lfb NxZ)
RAM 220/38955MB (lfb 847x4MB)
Largest Free Block (lfb), a memory allocator statistic that describes the largest contiguous block of physical memory that can currently be allocated: at most 4 MB. It can become smaller with memory fragmentation. Allocations of virtual memory can be bigger. |
Amount of RAM in use, specified in megabytes | Total amount of RAM available for applications | Size of the largest free memory block, in megabytes. N is the number of free blocks of this size. | ||
SWAP X /Y (cached Z)
SWAP 0/1978MB (cached 0MB)
Amount of swap memory available and in use. |
Amount of SWAP in use, in megabytes | Total amount of SWAP available for applications | Amount of SWAP cached | ||
IRAM X /Y (lfb Z)
IRAM 0/252kB(lfb 252kB)
Amount of memory local to the video hardware engine. |
Amount of IRAM memory in use, in kilobytes | Total amount of IRAM memory available | Size of the largest free block of IRAM memory | ||
CPU [X%,X%,...]@Z
CPU [1%@102,5%@102,0%@102,0%@102]
CPU utilization. X and Y are rough approximations based on time spent in the system idle process as reported by the Linux kernel in /proc/stat. |
Load on each CPU core relative to the current running frequency Z, or off if a core is currently powered down | — | CPU frequency in megahertz. Goes up or down dynamically depending on the CPU workload. | ||
EMC_FREQ X%
EMC_FREQ 95%@1600
External memory controller statistics. All sysmem/carve-out/GART memory accesses go through the memory controller. |
Percentage of EMC memory bandwidth in use relative to the current running frequency | EMC frequency in megahertz | — | ||
GR3D_FREQ X%
GR3D_FREQ 99%@[1098,1098,1098]
The GPU of Jetson AGX Orin series contains two GPCs and the GPU of Jetson AGX Thor contains three GPCs. Each GPC has its own frequency controller. |
Proportion of GPU activation time in a period. Different GPCs have the same percentage. | Frequency of each of the GPU's GPCs in megahertz. | — | ||
VIC_LOAD X %
VIC 95%@1600
VIC engine statistics. The VIC engine implements video post-processing functions needed by video playback applications to produce a final image for the player window. |
VIC engine loading as a percentage of current VIC engine frequency | Current VIC engine frequency | — | ||
APE Y
APE 150
Audio processing engine statistics. The APE subsystem consists of ADSP (an ARM® Cortex™-A9 CPU), AHUB, ADMA, mailboxes for communication between components of APE, etc. |
— | APE frequency in megahertz | — | ||
X @Y C
MCPU@45C
Temperature of one of the processor blocks as reported by node /sys/devices/virtual/thermal/thermal_zone<x>/temp/, where <x> is the name of the block. |
Processor block name | Processor block temperature in degrees Celsius | — | ||
VDD_X YmW/ZmW
VDD_GPU 10687mW/9815mW
Power consumption statistics for a power block. |
Name of the power rail * | Block’s current power consumption in milliwatts | Block’s average power consumption in milliwatts | ||
NVENC0 X %
NVENC0 4%@1296
Video hardware encoding engine statistics for encoder 0 and 1. |
NVENC utilization | NVENC frequency in megahertz | — | ||
NVDEC0X %
NVDEC0 87%@1296
Video hardware decoding engine statistics for decoder 0 and 1. Shown only when the hardware decoder/encoder engine is used. |
NVDEC utilization | NVDEC frequency in megahertz | — | ||
NVDLA0 X %
NVDLA0 0%@1331
NVDLA is a NVIDIA deep learning accelerator. NVDLA1, which is the second instance of NVDLA, might be reported if it has been enabled. NVDLA is supported on Jetson AGX Orin but not on Jetson AGX Thor. |
NVDLA utilization | NVDLA frequency in megahertz | — | ||
NVJPG0 X %
NVJPG0 0%@755
NVJPG is a NVIDIA JPEG encoder/decoder. NVJPG0 and NVJPG1 are the first and second instances of NVJPG, respectively. |
NVJPG utilization | NVJPG frequency in megahertz | — | ||
PVA0_FREQ @Y
PVA0_FREQ [0%,0%]@1011
PVA is a NVIDIA programmable vision accelerator. PVA0_FREQ and PVA1_FREQ are the first and second instances of PVA, respectively. |
PVA0_VPU0 and PVA0_VPU1 utilization (VPU is the vector processing unit) | PVA frequency in megahertz | — | ||
OFA Y
OFA 0%@1296
OFA is a NVIDIA optical flow accelerator. |
OFA utilization | OFA frequency in megahertz | — | ||
|
Running tegrastats#
When you run tegrastats
on Linux devices, it prints statistics to stdout
. The output resembles one of the examples shown under Reported Statistics, above.
To run tegrastats#
To run
tegrastats
in the background, execute the following command:$ tegrastats --interval <int> --logfile <out_file> &
Where:
<int>
is the interval between log prints in milliseconds.<out_file>
is the pathname of the output file to whichtegrastats
writes the log prints.
To run
tegrastats
in the foreground, omit the trailing ‘&’. You may also omit the--logfile
option to allow log output to go to stdout:$ tegrastats --interval <int>
To stop tegrastats#
If
tegrastats
is running in the background, execute the following commands:$ ps $ kill -9 <pid>
Where
<pid>
is the process ID oftegrastats
as reported by theps
command.Alternatively, you can run:
$ tegrastats --stop
If
tegrastats
is running in the foreground, press CTRL+C in the window where it is running.
Re-Deploying tegrastats#
The tegrastats
utility is preinstalled. If you have removed tegrastats
from the build, you can re-deploy it on the target at runtime.
To re-deploy tegrastats#
Execute the following command from the host PC:
$ scp tegrastats nvidia@<TARGET_DEVICE_IP>:/home/nvidia/
tegrastats Command Line Options#
tegrastats
supports the following command line options.
Option |
Meaning |
---|---|
–interval <int> |
The interval at which |
–verbose |
Print verbose messages. These messages may include multiple warnings about read failures during the query process. |
–stop |
Stop any running instances of |
–logfile <out_file> |
Dump the output of |