Jetson nano配置jtop和nvidia-smi高级使用教程

目录

1.更新源

2.安装JTOP查看CPU等的占用情况

3.关于nvidia-smi

持续模式

nvidia-smi支持的GPU

查询GPU状态

监控和管理GPU Boost

reference:


1.更新源

sudo apt-get update
sudo apt-get full-upgrade

在过程中输入Y确认更新。第二个过程时间根据网络情况可能会花2个小时左右,请耐心等待。

如果安装不上,尝试源码安装

https://github.com/rbonghi/jetson_stats#install

sudo -H pip install -U jetson-stats

2.安装JTOP查看CPU等的占用情况

jetson nano 是arm架构的,实现nvidia-smi查看GPU占用情况可以安装jtop!!!

sudo apt-get update
sudo apt-get full-upgrade
sudo apt install curl
sudo apt install nano
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本
sudo python3 get-pip.py # 运行安装脚本
sudo pip3 install jetson-stats
jtop

3.关于nvidia-smi

持续模式

在Linux上,您可以将GPU设置为持久模式,以使NVIDIA驱动程序加载,即使没有应用程序在访问这些卡也是如此。 当您要运行一系列短期作业时,此功能特别有用。 持久模式每个闲置的GPU使用更多的功率,但是可以防止每次启动GPU应用程序时出现相当长的延迟。 如果您已为GPU分配了特定的时钟速度或功率限制,则也很有必要(因为在卸载NVIDIA驱动程序时这些更改会丢失)。 通过运行以下命令在所有GPU上启用持久性模式:

nvidia-smi -pm 1

在Windows上,nvidia-smi无法设置持久性模式。 相反,您需要将计算GPU设置为TCC模式。 这应该通过NVIDIA的图形GPU设备管理面板来完成。

nvidia-smi支持的GPU

NVIDIA的SMI工具基本上支持自2011年以来发布的所有NVIDIA GPU。这些工具包括Fermi和更高架构家族(Kepler,Maxwell,Pascal,Volta等)的Tesla,Quadro和GeForce设备。

支持的产品包括:
Tesla:S1070,S2050,C1060,C2050 / 70,M2050 / 70/90,X2070 / 90,K10,K20,K20X,K40,K80,M40,P40,P100,V100
Quadro:4000、5000、6000、7000,M2070-Q,K系列,M系列,P系列,RTX系列
GeForce:支持级别不同,可用指标少于特斯拉和Quadro产品

查询GPU状态

我们为客户提供基准测试服务的Microway的GPU Test Drive集群包含一组NVIDIA最新的Tesla GPU。 这些是NVIDIA的高性能计算GPU,可提供大量的运行状况和状态信息。 以下示例摘自该内部群集。
要列出所有可用的NVIDIA设备,请运行:

nvidia-smi -L

GPU 0: Tesla K40m (UUID: GPU-d0e093a0-c3b3-f458-5a55-6eb69fxxxxxx)
GPU 1: Tesla K40m (UUID: GPU-d105b085-7239-3871-43ef-975ecaxxxxxx)

要列出有关每个GPU的某些详细信息,请尝试:

nvidia-smi --query-gpu=index,name,uuid,serial --format=csv

0, Tesla K40m, GPU-d0e093a0-c3b3-f458-5a55-6eb69fxxxxxx, 0323913xxxxxx
1, Tesla K40m, GPU-d105b085-7239-3871-43ef-975ecaxxxxxx, 0324214xxxxxx

要以1秒的更新间隔监视总体GPU使用情况:

nvidia-smi dmon

# gpu   pwr gtemp mtemp    sm   mem   enc   dec  mclk  pclk
# Idx     W     C     C     %     %     %     %   MHz   MHz
    0    43    35     -     0     0     0     0  2505  1075
    1    42    31     -    97     9     0     0  2505  1075
(in this example, one GPU is idle and one GPU has 97% of the CUDA sm "cores" in use)

要以1秒的更新间隔监视每个进程的GPU使用情况:

nvidia-smi pmon

# gpu        pid  type    sm   mem   enc   dec   command
# Idx          #   C/G     %     %     %     %   name
    0      14835     C    45    15     0     0   python         
    1      14945     C    64    50     0     0   python
(in this case, two different python processes are running; one on each GPU)

监控和管理GPU Boost

NVIDIA在较新的GPU中包含的GPU Boost功能允许GPU时钟根据负载而变化(只要有可用的功率和散热空间,就可以实现最佳性能)。 但是,可用空间的大小会因应用程序(甚至是输入文件!)而异,因此用户和管理员应密切注意GPU的状态。

可以显示每个GPU(在本例中为Tesla V100)的可用时钟速度列表:

nvidia-smi -q -d SUPPORTED_CLOCKS

GPU 00000000:18:00.0
    Supported Clocks
        Memory                      : 877 MHz
            Graphics                : 1380 MHz
            Graphics                : 1372 MHz
            Graphics                : 1365 MHz
            Graphics                : 1357 MHz
            [...159 additional clock speeds omitted...]
            Graphics                : 157 MHz
            Graphics                : 150 MHz
            Graphics                : 142 MHz
            Graphics                : 135 MHz

Jetson nano配置jtop和nvidia-smi高级使用教程_第1张图片

watch和nvidia-smi命令实时查看GPU使用、显存占用情况

方法一:watch -n 0.5 nvidia-smi

watch -n 5 nvidia-smi:5代表每隔5秒刷新一次GPU使用情况

同理,每隔1秒刷新,则使用:watch -n 1 nvidia-smi

两个命令均用在Linux系统命令行下

方法二:nvidia-smi -l 1,每1秒刷新一次,

不建议使用watch查看nvidia-smi,watch每个时间周期开启一个进程(PID),查看后关闭进程,会影响cuda操作,如cudaMalloc;建议使用nvidia-smi -l x或者nvidia-smi --loop=xxx代替,这个命令执行期间一直是一个进程PID.

觉得有用的朋友,点个赞哟!!!

reference:

NVIDIA Jetson nano安装Jtop(资源监控) - 腾讯云开发者社区-腾讯云 (tencent.com)

你可能感兴趣的:(linux,运维,服务器)