刚入门的朋友,可能觉得Jetson用Ubuntu系统,不像Windows那么亲民,那么容易获得一些硬件的相关信息,有点碍手碍脚的。因此我们收集一些您可能需要用到的指令,就不用上网到处找。
首先强调一点,在 Jetson 嵌入式版本内,没有 nvidia-smi 指令,请勿用此指令来判别设备问题!
内容包括以下类别:1、系统信息:包括L4T版本、操作系统版本、内核驱动版本2、系统主要硬件信息:CPU、内存、存储空间、USB设备与版本3、USB设备:摄像头、USB存储设备的版本4、开发环境版本:CUDA、CUDNN、OpenCV、TensorRT5、各种应用的 Sample 代码路径
1、系统信息:
- L4T(Linux for Tegra)版本
head -n 1 /etc/nv_tegra_release
这个指令其实就是查看 /etc/nv_tegra_release 的第一行,应该会看到类似下列信息:
R28 (release), REVISION: 2.1, GCID: 11272647, BOARD: t186ref, EABI: aarch64, DATE: Thu May 17 07:29:06 UTC 2018
以上面信息为例,显示这个设备的 L4T 内核版本为 R28.2.1
- 操作系统(Ubuntu)版本
cat /etc/lsb-release
会出现类似以下信息:
DISTRIB_ID=Ubuntu # 操作系认种类
DISTRIB_RELEASE=16.04 # 操作系统版本
DISTRIB_CODENAME=xenial # 操作系统代号,可不需理会
DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS" # 完整描述
- 内核驱动版本,这个与周边设备的驱动有关
uamen -a
会出现类似以下信息:
Linux TX2-GBot 4.4.38 #3 SMP PREEMPT Sat Mar 23 14:46:14 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
2、系统主要硬件- 查看 CPU
lscpu
会出现类型以下信息:
Architecture: aarch64
Byte Order: Little Endian
CPU(s): 6
On-line CPU(s) list: 0-5
Thread(s) per core: 1
Core(s) per socket: 3
Socket(s): 2
Model name: ARMv8 Processor rev 3 (v8l)
CPU max MHz: 2035.2000
CPU min MHz: 345.6000
Hypervisor vendor: horizontal
Virtualization type: full
L1d cache: 32K
L1i cache: 48K
L2 cache: 2048K
- 查看内存
free -m
会出现类型以下信息:
total used free shared buff/cache available
Mem: 7853 1330 4223 89 2300 6343
Swap: 0 0 0
- 查看存储设备与分区
sudo parted -l
会看到类似以下信息
Model: MMC 032G34 (sd/mmc)
Disk /dev/mmcblk0: 31.3GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 2098kB 30.1GB 30.1GB ext4 APP msftdata
2 30.1GB 30.1GB 4194kB mts-bootpack msftdata
3 30.1GB 30.1GB 4194kB mts-bootpack_b msftdata
。。。。。。。。。。。。。。。。。。
或执行
sudo fdisk -l
会看到类似以下信息
Disk /dev/ram0: 8 MiB, 8388608 bytes, 16384 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/ram1: 8 MiB, 8388608 bytes, 16384 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
。。。。。。。。。。。。。。。。。。。。。。。。
Device Start End Sectors Size Type
/dev/mmcblk0p1 4097 58724352 58720256 28G Microsoft basic data
/dev/mmcblk0p2 58724353 58732544 8192 4M Microsoft basic data
/dev/mmcblk0p3 58732545 58740736 8192 4M Microsoft basic data
/dev/mmcblk0p4 58740737 58741760 1024 512K Microsoft basic data
。。。。。。。。。。。。。。。。。
- 查看硬盘空间
df -h
会看到类似以下信息
Filesystem Size Used Avail Use% Mounted on
/dev/root 28G 20G 6.9G 74% /
devtmpfs 7.7G 0 7.7G 0% /dev
tmpfs 7.7G 620K 7.7G 1% /dev/shm
tmpfs 7.7G 22M 7.7G 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 7.7G 0 7.7G 0% /sys/fs/cgroup
tmpfs 786M 88K 786M 1% /run/user/1001
3、USB 设备
lsusb
会出现类型以下信息:实际显示内容根据您所接设备
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 0bda:5880 Realtek Semiconductor Corp.
Bus 001 Device 003: ID 148f:760b Ralink Technology, Corp. MT7601U Wireless Adapter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- 查看 USB 摄像头
ls /dev/vid*
如果没有接上摄像头的话,会出现以下信息
ls: cannot access '/dev/vid*': No such file or directory
如果有接上摄像头的话(包括TX1/TX2开发板上的板载摄像头),会出现以下信息
/dev/video0 /dev/video1
- 查看 USB 设备的版本
lsusb -D /dev/bus/usb/003/001 | grep bcdUSB
如果显示 “ bcdUSB 3.00” 表示该设备为支持 USB 3.0
4、环境版本:
- 查看 CUDA 版本:请先检查 ~/.bashrc 里面是否添加 CUDA 相关路径
nvcc -V
会出现类型以下信息
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Sun_Nov_19_03:16:56_CST_2017
Cuda compilation tools, release 9.0, V9.0.252
- 查看 CUDNN/OpenCV/TensorRT 版本
因为这三软件都是经过 Jetpack 用 dpkg 指令安装,因此可以透过 dpkg -i lib 来查询版本
CUDNN 版本查询:
dpkg -l libcudnn7
会出现类型以下信息
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-========================-=================-=================-======================================================
ii libcudnn7 7.1.5.14-1+cuda9. arm64 cuDNN runtime libraries
OpenCV 版本查询:本处指令只适用于 Jetpack 提供的 OpenCV 版本
dpkg -l libopencv
会出现类型以下信息
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-========================-=================-=================-======================================================
ii libopencv 3.3.1 arm64 Open Computer Vision Library
TensprRT 版本查询
dpkg -l tensorrt
会出现类型以下信息
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-========================-=================-=================-======================================================
ii tensorrt 4.0.2.0-1+cuda9.0 arm64 Meta package of TensorRT
5、各种应用的 Sample 代码路径
CUDA
/usr/local/cuda-/samples/
CUDNN
/usr/src/cudnn_samples_/
OpenCV
/usr/share/OpenCV/samples/
TensorRT
/usr/src/tensorrt/samples/
VisionWorks
/usr/share/visionworks/sources/samples/
/usr/share/visionworks-tracking/sources/samples/
/usr/share/visionworks-sfm/sources/samples/
如有需要的指令,会持续更新