矩池云上使用nvidia-smi命令教程

矩池云上使⽤nvidia-smi命令教程
简介
nvidia-smi全称是NVIDIA System Management Interface ,它是⼀个基于NVIDIA Management Library(NVML)构建的命令⾏实⽤⼯具,旨在帮助管理和监控NVIDIA GPU设备。
详解nvidia-smi命令
接下来我介绍⼀下,⽤nvidia-smi命令来查询机器GPU使⽤情况的相关内容。
nvidia-smi
我以上图的查询内容为例,已经复制出来了,如下,
(myconda) root@8dbdc324be74:~# nvidia-smi
Tue Jul 20 14:35:11 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2    |
海曼明斯基
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|        Memory-Usage | GPU-Util  Compute M. |
|                              |                      |              MIG M. |
|===============================+======================+======================|
|  0    On  | 00000000:1C:00.0 Off |                    0 |
| N/A  27C    P0    31W / 300W |      0MiB / 16280MiB |      0%      Default |
|                              |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|  1    On  | 00000000:1D:00.0 Off |                    0 |
| N/A  25C    P0    32W / 300W |      0MiB / 16280MiB |      0%      Default |
|                              |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU  GI  CI        PID  Type  Process name                  GPU Memory |
|        ID  ID                                                  Usage      |
|=============================================================================|
钙镁离子|  No running processes found                                                |
+-----------------------------------------------------------------------------+
我们来拆分⼀下
NVIDIA-SMI 460.32.03          #
Driver Version: 460.32.03    # 英伟达驱动版本
CUDA Version: 11.2            # CUDA版本
七五期间
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|        Memory-Usage | GPU-Util  Compute M. |
|                              |                      |              MIG M. |
|===============================+======================+======================|
|  0    On  | 00000000:1C:00.0 Off |                    0 |
| N/A  27C    P0    31W / 300W |      0MiB / 16280MiB |      0%      Default |
|                              |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|  1    On  | 00000000:1D:00.0 Off |                    0 |
| N/A  25C    P0    32W / 300W |      0MiB / 16280MiB |      0%      Default |
|                              |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
GPU:                # GPU的编号,0代表第⼀张显卡,1代表第⼆张,依次类推
Fan:                # 风扇转速(0%–100%),N/A表⽰没有风扇
Name:              # GPU的型号,以此处为例是P100
Temp:              # GPU温度(GPU温度过⾼会导致GPU频率下降)
Perf:              # 性能状态,从P0(最⼤性能)到P12(最⼩性能)
Pwr:                # GPU功耗
Persistence-M:      #  持续模式的状态(持续模式耗能⼤,但在新的GPU应⽤启动时花费时间更少)
Bus-Id:            # GPU总线,domain:bus:device.function
Disp.A:            # Display Active,表⽰GPU的显⽰是否初始化
Memory-Usage:      # 显存使⽤率(显⽰显存占⽤情况)
Volatile GPU-Util:  # 浮动的GPU利⽤率
ECC:                # 是否开启错误检查和纠正技术,0/DISABLED, 1/ENABLED
Compute M.:        # 计算模式,0/DEFAULT,1/EXCLUSIVE_PROCESS,2/PROHIBITED
Memory-Usage和Volatile GPU-Util的两个不⼀样的东西,显卡由GPU和显存等部分所构成,GPU相当于显卡上的CPU,显存相当于显卡上的内存。在跑任务的过程中可以通过优化代码来提⾼这两者的使⽤率。
nvcc和nvidia-smi显⽰的CUDA版本不同?
(myconda) root@8dbdc324be74:~# nvidia-smi
Tue Jul 20 14:35:11 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|        Memory-Usage | GPU-Util  Compute M. |
|                              |                      |              MIG M. |
|===============================+======================+======================|
|  0    On  | 00000000:1C:00.0 Off |                    0 |
| N/A  27C    P0    31W / 300W |      0MiB / 16280MiB |      0%      Default |
|                              |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|  1    On  | 00000000:1D:00.0 Off |                    0 |
| N/A  25C    P0    32W / 300W |      0MiB / 16280MiB |      0%      Default |
|                              |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
江西 教育
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU  GI  CI        PID  Type  Process name                  GPU Memory |
|        ID  ID                                                  Usage      |
|=============================================================================|衰变>打电话的教学反思
|  No running processes found                                                |
+-----------------------------------------------------------------------------+
(myconda) root@8dbdc324be74:~# nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Oct_12_20:09:46_PDT_2020
Cuda compilation tools, release 11.1, V11.1.105
Build cuda_11.1.TC455_06.29190527_0
可以看到nvcc的CUDA版本是11.1,⽽nvidia-smi的CUDA版本是11.2。这对运⾏任务是没有影响的,绝⼤多数代码都是可以正常跑起来的,引起这个的主要是因为CUDA两个主要的API,runtime API和driver API。神奇的是这两个API都有⾃⼰对应的CUDA版本(如图上的11.1和11.2)。在StackOverflow有⼀个解释,如果driver API和runtime API的CUDA版本不⼀致可能是因为你使⽤的是单独的GPU driver installer,⽽不是CUDA Toolkit installer⾥的GPU driver installer。在矩池云上的表现可以解释为driver API来⾃于物理机器的驱动版本,runtime API是来⾃于矩池云镜像环境内的CUDA Toolkit版本。
实时显⽰显存使⽤情况
nvidia-smi -l 5  #5秒刷新⼀次
动态刷新信息(默认5s刷新⼀次),按Ctrl+C停⽌,可指定刷新频率,以秒为单位
#每隔⼀秒刷新⼀次,刷新频率改中间数字即可
watch -n 1 -d nvidia-smi
在这⾥不建议使⽤watch查看nvidia-smi,watch每个时间周期开启⼀个进程(PID),查看后关闭进程,可能会影响到其他进程。

本文发布于:2024-09-20 16:42:33,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/532443.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:刷新   显卡   版本   命令
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议