参考:https://blog.csdn.net/masound/article/details/81909323

1. nvidia-smi

watch -n 2 nvidia-smi (间隔2秒查询一次任务)
nvidia-smi 使用注意点:

1. nvidia-smi 默认是只统计 sm 的加权平均使用量,也就是GPU-Util的统计,
nvidia-smi采集粒度偏大
2. ffmpeg 在使用编解码的时候,也会少量的使用到sm资源, 单sm使用率100%后会影响编解码的性能,
如果sm使用率不高的情况,对硬转码没有影响; codec和sm共用时钟源和电源
  • 指定板卡id,查看gpu状态,nvidia-smi -i 0
root@n19-045-100:~# nvidia-smi -i 0
Fri Oct 22 16:01:31 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.116.00   Driver Version: 418.116.00   CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla P4            On   | 00000000:1A:00.0 Off |                    0 |
| N/A   56C    P0    30W /  75W |    140MiB /  7611MiB |      0%      Default |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0    588727      C   ...ffmpeg_build/gpu/static/bin/ffmpeg   130MiB |
+-----------------------------------------------------------------------------+
  • 查看gpu 的详细状态信息
    nvidia-smi -q
    nvidia-smi -i 0 -q
root@n19-045-200:~# nvidia-smi  -i 0  -q
==============NVSMI LOG==============
Timestamp                           : Fri Oct 22 16:48:35 2021
Driver Version                      : 418.116.00
CUDA Version                        : 10.1Attached GPUs                       : 7
GPU 00000000:1A:00.0Product Name                    : Tesla P4Product Brand                   : TeslaDisplay Mode                    : EnabledDisplay Active                  : DisabledPersistence Mode                : EnabledAccounting Mode                 : DisabledAccounting Mode Buffer Size     : 4000Driver ModelCurrent                     : N/APending                     : N/ASerial Number                   : 0325017003772GPU UUID                        : GPU-b1fc4bf1-cc9b-2add-586c-b39397c1eaadMinor Number                    : 0VBIOS Version                   : 86.04.55.00.01MultiGPU Board                  : NoBoard ID                        : 0x1a00GPU Part Number                 : 900-2G414-0000-000Inforom VersionImage Version               : G414.0200.00.03OEM Object                  : 1.1ECC Object                  : 4.1Power Management Object     : N/AGPU Operation ModeCurrent                     : N/APending                     : N/AGPU Virtualization ModeVirtualization mode         : NoneIBMNPURelaxed Ordering Mode       : N/APCIBus                         : 0x1ADevice                      : 0x00Domain                      : 0x0000Device Id                   : 0x1BB310DEBus Id                      : 00000000:1A:00.0Sub System Id               : 0x11D810DEGPU Link InfoPCIe GenerationMax                 : 3Current             : 3Link WidthMax                 : 16xCurrent             : 16xBridge ChipType                    : N/AFirmware                : N/AReplays Since Reset         : 0Replay Number Rollovers     : 0Tx Throughput               : 0 KB/sRx Throughput               : 0 KB/sFan Speed                       : N/APerformance State               : P0Clocks Throttle ReasonsIdle                        : Not ActiveApplications Clocks Setting : Not ActiveSW Power Cap                : Not ActiveHW Slowdown                 : Not ActiveHW Thermal Slowdown     : Not ActiveHW Power Brake Slowdown : Not ActiveSync Boost                  : Not ActiveSW Thermal Slowdown         : Not ActiveDisplay Clock Setting       : Not ActiveFB Memory UsageTotal                       : 7611 MiBUsed                        : 140 MiBFree                        : 7471 MiBBAR1 Memory UsageTotal                       : 256 MiBUsed                        : 2 MiBFree                        : 254 MiBCompute Mode                    : DefaultUtilizationGpu                         : 0 %Memory                      : 0 %Encoder                     : 0 %Decoder                     : 0 %Encoder StatsActive Sessions             : 0Average FPS                 : 0Average Latency             : 0FBC StatsActive Sessions             : 0Average FPS                 : 0Average Latency             : 0Ecc ModeCurrent                     : EnabledPending                     : EnabledECC ErrorsVolatileSingle BitDevice Memory       : 0Register File       : N/AL1 Cache            : N/AL2 Cache            : N/ATexture Memory      : N/ATexture Shared      : N/ACBU                 : N/ATotal               : 0Double BitDevice Memory       : 0Register File       : N/AL1 Cache            : N/AL2 Cache            : N/ATexture Memory      : N/ATexture Shared      : N/ACBU                 : N/ATotal               : 0AggregateSingle BitDevice Memory       : 0Register File       : N/AL1 Cache            : N/AL2 Cache            : N/ATexture Memory      : N/ATexture Shared      : N/ACBU                 : N/ATotal               : 0Double BitDevice Memory       : 0Register File       : N/AL1 Cache            : N/AL2 Cache            : N/ATexture Memory      : N/ATexture Shared      : N/ACBU                 : N/ATotal               : 0Retired PagesSingle Bit ECC              : 0Double Bit ECC              : 0Pending Page Blacklist      : NoTemperatureGPU Current Temp            : 56 CGPU Shutdown Temp           : 94 CGPU Slowdown Temp           : 91 CGPU Max Operating Temp      : N/AMemory Current Temp         : N/AMemory Max Operating Temp   : N/APower ReadingsPower Management            : SupportedPower Draw                  : 30.26 WPower Limit                 : 75.00 WDefault Power Limit         : 75.00 WEnforced Power Limit        : 75.00 WMin Power Limit             : 60.00 WMax Power Limit             : 75.00 WClocksGraphics                    : 1531 MHzSM                          : 1531 MHzMemory                      : 2999 MHzVideo                       : 1366 MHzApplications ClocksGraphics                    : 1531 MHzMemory                      : 3003 MHzDefault Applications ClocksGraphics                    : 885 MHzMemory                      : 3003 MHzMax ClocksGraphics                    : 1531 MHzSM                          : 1531 MHzMemory                      : 3003 MHzVideo                       : 1379 MHzMax Customer Boost ClocksGraphics                    : 1113 MHzClock PolicyAuto Boost                  : N/AAuto Boost Default          : N/AProcessesProcess ID                  : 588727Type                    : CName                    : /opt/ffmpeg_build/gpu/static/bin/ffmpegUsed GPU Memory         : 130 MiB
  • 查看gpu 的编码器状态
    nvidia-smi -q | grep -i enc
    nvidia-smi -i 0 -q | grep -i enc
root@n19-045-200:~# nvidia-smi -i 0 -q | grep -i encPersistence Mode                : EnabledEncoder                     : 0 %Encoder StatsAverage Latency             : 0Average Latency             : 0
  • 设备监控命令,以滚动条形式显示GPU设备统计信息
    nvidia-smi dmon
    GPU统计信息以一行的滚动格式显示,要监控的指标可以基于终端窗口的宽度进行调整。 监控所有的GPU

附加选项:
nvidia-smi dmon -i xxx
用逗号分隔GPU索引,PCI总线ID或UUID

nvidia-smi dmon -d xxx
指定刷新时间(默认为1秒)

nvidia-smi dmon -c xxx
显示指定数目的统计信息并退出

nvidia-smi dmon -s xxx
指定显示哪些监控指标(默认为puc),其中:
p:电源使用情况和温度(pwr:功耗,temp:温度)
u:GPU使用率(sm:流处理器,mem:显存,enc:编码资源,dec:解码资源)
c:GPU处理器和GPU内存时钟频率(mclk:显存频率,pclk:处理器频率)
v:电源和热力异常
m:FB内存和Bar1内存
e:ECC错误和PCIe重显错误个数
t:PCIe读写带宽

nvidia-smi dmon –o D/T
指定显示的时间格式D:YYYYMMDD,THH:MM:SS

nvidia-smi dmon –f xxx
将查询的信息输出到具体的文件中,不在终端显示

  • 进程监控命令,以滚动条形式显示GPU进程状态信息。
    nvidia-smi pmon
    GPU进程统计信息以一行的滚动格式显示,此工具列出了GPU所有进程的统计信息。要监控的指标可以基于终端窗口的宽度进行调整。

附加选项:
nvidia-smi pmon -i xxx
用逗号分隔GPU索引,PCI总线ID或UUID

nvidia-smi pmon -d xxx
指定刷新时间(默认为1秒,最大为10秒)

nvidia-smi pmon -c xxx
显示指定数目的统计信息并退出

nvidia-smi pmon -s xxx
指定显示哪些监控指标(默认为u),其中:
u:GPU使用率
m:FB内存使用情况

nvidia-smi pmon -o D/T
指定显示的时间格式D:YYYYMMDD,THH:MM:SS

nvidia-smi pmon -f xxx
将查询的信息输出到具体的文件中,不在终端显示

nvidia-smi pmon -i 3 -d 1 -c 1 -s um

2. nvml监控模块

  • 通过CUDA的Nvml库获取GPU的使用率
  • python实现 https://pypi.org/project/pynvml/
>>> from pynvml import *
>>> nvmlInit()
>>> print("Driver Version:", nvmlSystemGetDriverVersion())
Driver Version: b'418.116.00'
>>> deviceCount = nvmlDeviceGetCount()
>>> for i in range(deviceCount):
...     handle = nvmlDeviceGetHandleByIndex(i)
...     print("Device", i, ":", nvmlDeviceGetName(handle))
...
Device 0 : b'Tesla P4'
Device 1 : b'Tesla P4'
Device 2 : b'Tesla P4'
Device 3 : b'Tesla P4'
Device 4 : b'Tesla P4'
Device 5 : b'Tesla P4'
Device 6 : b'Tesla P4'
>>> from pynvml.smi import nvidia_smi
>>> nvsmi = nvidia_smi.getInstance()
>>> nvsmi.DeviceQuery('memory.free, memory.total')
{'gpu': [{'fb_memory_usage': {'total': 7611.9375, 'free': 7471.8125, 'unit': 'MiB'}}, {'fb_memory_usage': {'total': 7611.9375, 'free': 7601.9375, 'unit': 'MiB'}}, {'fb_memory_usage': {'total': 7611.9375, 'free': 7601.9375, 'unit': 'MiB'}}, {'fb_memory_usage': {'total': 7611.9375, 'free': 7601.9375, 'unit': 'MiB'}}, {'fb_memory_usage': {'total': 7611.9375, 'free': 7601.9375, 'unit': 'MiB'}}, {'fb_memory_usage': {'total': 7611.9375, 'free': 7601.9375, 'unit': 'MiB'}}, {'fb_memory_usage': {'total': 7611.9375, 'free': 7601.9375, 'unit': 'MiB'}}]}

3. DCMG监控

感兴趣可以了解一下:
https://docs.nvidia.com/datacenter/dcgm/latest/dcgm-user-guide/getting-started.html

4. NV GPU API 接口

https://docs.nvidia.com/gameworks/content/gameworkslibrary/coresdk/nvapi/annotated.html

NVIDIA GPU 常用操作相关推荐

  1. NVIDIA GPU常用命令及设置汇总

    翻译 https://www.microway.com/hpc-tech-tips/nvidia-smi_control-your-gpus/ 内容收录 https://www.cnblogs.com ...

  2. 【认识 NVIDIA GPU】GPU相关基础概念介绍

    系列文章目录 文章目录 系列文章目录 前言 基本概念 CUDA(Compute Unified Device Architecture) SP(Stream Processor) SM(Streami ...

  3. NVIDIA GPU SM和CUDA编程理解

    SM硬件架构基础 不同架构的变化可以参考: ​​​​​​从AI系统角度回顾GPU架构变迁--从Fermi到Ampere(V1.2) - 知乎 英伟达GPU架构演进近十年,从费米到安培 - 知乎 Vol ...

  4. NVIDIA GPU的快速傅立叶变换

    NVIDIA GPU的快速傅立叶变换 cuFFT库提供GPU加速的FFT实现,其执行速度比仅CPU的替代方案快10倍.cuFFT用于构建跨学科的商业和研究应用程序,例如深度学习,计算机视觉,计算物理, ...

  5. NVIDIA GPU上的Tensor线性代数

    NVIDIA GPU上的Tensor线性代数 cuTENSOR库是同类中第一个GPU加速的张量线性代数库,提供张量收缩,归约和逐元素运算.cuTENSOR用于加速在深度学习训练和推理,计算机视觉,量子 ...

  6. NVIDIA GPU卷积网络的自动调谐

    NVIDIA GPU卷积网络的自动调谐 针对特定设备和工作负载的自动调整对于获得最佳性能至关重要.这是关于如何为NVIDIA GPU调整整个卷积网络. NVIDIA GPU在TVM中的操作实现是以模板 ...

  7. NVIDIA GPU持久模式是什么?(驱动程序持久性 Driver Persistence Daemon 守护程序)

    文章目录 驱动程序持久性 1.概述 1.1. windows系统 1.2. Linux 2.数据持久性 2.1. GPU初始化生命周期 2.2. 内核驱动程序生命周期 2.3. GPU开发板生命周期 ...

  8. Nvidia GPU如何在Kubernetes 里工作

    Nvidia GPU如何在Kubernetes 里工作 本文介绍Nvidia GPU设备如何在Kubernetes中管理调度. 整个工作流程分为以下两个方面: 如何在容器中使用GPU Kubernet ...

  9. 基于 NVIDIA GPU 和 RAPIDS 加速 Spark 3.0

    导读:今天给大家分享的主题是基于NVIDIA GPU和RAPIDS加速Apache Spark 3.0,首先会介绍Apache Spark的RAPIDS加速器及工作原理,然后分享我们对于Shuffle ...

最新文章

  1. gdb 查看 stl容器 zz
  2. Qt 事件系统的解读
  3. 字符串-拆分和拼接字符串
  4. javascript数组中数字和非数字下标的区别
  5. [蓝桥杯2017初赛]包子凑数-模拟+巧妙枚举
  6. c语言 字符转int型,C语言—类型之间的转换
  7. 系统架构师学习笔记-基于构件的开发
  8. 最便宜的鸿蒙手机,今年不再推出鸿蒙手机,却让老旗舰占据优势,降价后变真香...
  9. java volatile有什么用_深入解析Java中volatile关键字的作用
  10. jvm入门到详解-1
  11. PHP cURL上传图片
  12. dongle 工具 蓝牙_CC2540 USB Dongle 蓝牙抓包分析仪使用教程
  13. mfc调取摄像头显示并截图_用OpenCV在MFC Dialog中Picture控件上显示摄像头采集实时视频...
  14. flash如何同时访问本地文件系统和网络文件
  15. vs2010学习版安装与激活
  16. 深入理解socket中的recv函数和send函数
  17. 妖精的尾巴手游快速升级辅助 爱蜂窝自动新手挂机升级
  18. phpmailer发送邮件(QQ企业邮箱和163邮箱)
  19. 基于thinkphp校园二手交易网站#毕业设计
  20. 微信视频号的10大引流技巧

热门文章

  1. 弘辽科技:商家直通车操作
  2. 前端技巧总结---持续更新
  3. UOS x86安装Intel网卡驱动
  4. 2020年年度关于前端学习与工作的心得体会
  5. 旧电脑更新win10日记
  6. SeedLab6: TCP/IP Attack Lab
  7. 使用labelme打标签,详细教程
  8. android 仿ios动画效果代码,Android仿IOS上拉下拉弹性效果的实例代码
  9. 仿豌豆荚实现android连接pc方法
  10. iOS APP适配iPhone X全屏