1  NVIDIA-SMI介绍

nvidia-smi简称NVSMI,提供监控GPU使用情况和更改GPU状态的功能,是一个跨平台工具,它支持所有标准的NVIDIA驱动程序支持的Linux发行版以及从WindowsServer 2008 R2开始的64位的系统。该工具是N卡驱动附带的,只要安装好驱动后就会有它。

Windows下程序位置:C:\Program Files\NVIDIACorporation\NVSMI\nvidia-smi.exe。Linux下程序位置:/usr/bin/nvidia-smi,由于所在位置已经加入PATH路径,可直接输入nvidia-smi运行。

2  NVIDIA-SMI命令系列详解

2.1  nvidia-smi

显示所有GPU的当前信息状态

显示的表格中:

Fan:                     风扇转速(0%--100%),N/A表示没有风扇

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

附加选项:

nvidia-smi –i xxx

指定某个GPU

nvidia-smi –l xxx

动态刷新信息(默认5s刷新一次),按Ctrl+C停止,可指定刷新频率,以秒为单位

nvidia-smi –f xxx

将查询的信息输出到具体的文件中,不在终端显示

2.2  nvidia-smi -q

查询所有GPU的当前详细信息

附加选项:

nvidia-smi –q –u

显示单元而不是GPU的属性

nvidia-smi –q –i xxx

指定具体的GPU或unit信息

nvidia-smi –q –f xxx

将查询的信息输出到具体的文件中,不在终端显示

nvidia-smi –q –x

将查询的信息以xml的形式输出

nvidia-smi -q –d xxx

指定显示GPU卡某些信息,xxx参数可以为MEMORY, UTILIZATION, ECC, TEMPERATURE, POWER,CLOCK, COMPUTE, PIDS, PERFORMANCE, SUPPORTED_CLOCKS, PAGE_RETIREMENT,ACCOUNTING

nvidia-smi –q –l xxx

动态刷新信息,按Ctrl+C停止,可指定刷新频率,以秒为单位

nvidia-smi --query-gpu=gpu_name,gpu_bus_id,vbios_version--format=csv

选择性查询选项,可以指定显示的属性选项

可查看的属性有:timestamp,driver_version,pci.bus,pcie.link.width.current等。(可查看nvidia-smi--help-query–gpu来查看有哪些属性)

2.3  设备修改选项

可以手动设置GPU卡设备的状态选项

nvidia-smi –pm 0/1

设置持久模式:0/DISABLED,1/ENABLED

nvidia-smi –e 0/1

切换ECC支持:0/DISABLED, 1/ENABLED

nvidia-smi –p 0/1

重置ECC错误计数:0/VOLATILE, 1/AGGREGATE

nvidia-smi –c

设置计算应用模式:0/DEFAULT,1/EXCLUSIVE_PROCESS,2/PROHIBITED

nvidia-smi –r

GPU复位

nvidia-smi –vm

设置GPU虚拟化模式

nvidia-smi –ac xxx,xxx

设置GPU运行的工作频率。e.g. nvidia-smi –ac2000,800

nvidia-smi –rac

将时钟频率重置为默认值

nvidia-smi –acp 0/1

切换-ac和-rac的权限要求,0/UNRESTRICTED, 1/RESTRICTED

nvidia-smi –pl

指定最大电源管理限制(瓦特)

nvidia-smi –am 0/1

启用或禁用计数模式,0/DISABLED,1/ENABLED

nvidia-smi –caa

清除缓冲区中的所有已记录PID,0/DISABLED,1/ENABLED

2.4  nvidia-smi dmon

设备监控命令,以滚动条形式显示GPU设备统计信息。

GPU统计信息以一行的滚动格式显示,要监控的指标可以基于终端窗口的宽度进行调整。 监控最多4个GPU,如果没有指定任何GPU,则默认监控GPU0-GPU3(GPU索引从0开始)。

附加选项:

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

将查询的信息输出到具体的文件中,不在终端显示

2.5   nvidia-smi pmon

进程监控命令,以滚动条形式显示GPU进程状态信息。

GPU进程统计信息以一行的滚动格式显示,此工具列出了GPU所有进程的统计信息。要监控的指标可以基于终端窗口的宽度进行调整。 监控最多4个GPU,如果没有指定任何GPU,则默认监控GPU0-GPU3(GPU索引从0开始)。

附加选项:

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

将查询的信息输出到具体的文件中,不在终端显示

原文:https://blog.csdn.net/handsome_bear/article/details/80903477

NVIDIA-SMI系列命令总结的更多相关文章

  1. 玩转Windows服务系列——命令行管理Windows服务

    说到Windows服务的管理就不得不说通过命令行的方式管理Windows服务,因为无论是系统管理员,还是通过编程的方式调用cmd命令,命令行都是非常方便以及强大的工具. 接下来就看一下如何通过cmd命 ...

  2. 玩转Windows服务系列——命令行管理Windows服务

    原文:玩转Windows服务系列——命令行管理Windows服务 说到Windows服务的管理就不得不说通过命令行的方式管理Windows服务,因为无论是系统管理员,还是通过编程的方式调用cmd命令, ...

  3. Ansible--配置文件及系列命令

    Ansible目录结构 安装完成ansible后要知道ansible主要安装的了什么,安装的目录结构是什么,每个目录做什么的 可以使用:rpm -ql ansible | less 来查看ansibl ...

  4. [转]玩转Windows服务系列——命令行管理Windows服务

    本文转自:http://www.cnblogs.com/hbccdf/p/managewindowsservicewithcmd.html 说到Windows服务的管理就不得不说通过命令行的方式管理W ...

  5. Ansible之系列命令详解

    ansible系列命令有:ansible.ansible-doc.ansible-playbook.ansible-vault.ansible-console.ansible-galaxy.ansib ...

  6. twoway 系列命令绘制地图

    twoway 系列命令绘制地图 ❝ 在谈到用stata绘制地图时,很多人首先想到的是spmap命令.其实,最常见的twoway系列命令就可以完成我们的大多数绘图需求. 对于spmap命令的使用,在线资 ...

  7. SHA256sum系列命令检测文件完整性

    1 sha256sum sha256sum是一个检测文件完整性的命令,一般下载的文件都会附带一个哈希值,使用sha256sum计算下载文件的哈希值再与目标哈希值比较即可确定文件是否完整,类似的命令还有 ...

  8. Ubuntu 15.04 安装 Nvidia Quadro系列显卡驱动

    在这之前,我用的Ubuntu都是系统自带的驱动, 由于分辨率没有任何问题, 所以一直没有安装Nvidia官方的驱动; 近期更新到 15.04 之后, 在播放avi 格式的常规视频时却出现闪烁的现象, ...

  9. nvidia 的一些命令

    直接在命令行使用 NVIDIA-smi会有问题 首先要确保电脑下了cuda. 然后打开cmd,使用cd命令进入: C:\Program Files\NVIDIA Corporation\NVSMI 然 ...

随机推荐

  1. 全球第一免费开源ERP Odoo仓存功能模块深度应用(一)

    基本功能 库位 库位是一个逻辑存货区,可以是一个物理库区,可以是一个货架.货架上的一个货位.库位可以有子库位 库位有虚拟库位和实际库位,实际库位是实际存放货物的库位,虚拟库位是因复式库存记账而虚构的库 ...

  2. oracle创建表空间自增长和创建用户

    /* 步骤: 1.创建表空间 2.创建用户 3.用户授权 */ /*创建表空间*/ create tablespace QCJ_TABLESPACE /*表空间物理文件名称*/ datafile 'Q ...

  3. 使用d3.v5实现条形图

    效果图: 条形图: 目录结构: <!DOCTYPE html> <html lang="en"> <head> <meta charset ...

  4. 如何用人工的方式将Excel里的一堆数字变成一个数组

    目的是抛砖引玉,有谁可以教教我如何吧Excle的数据导入MyEclipse么? 如果只有⑨个字符的话我肯定是直接人工输入的,然而这次有65536行乘以3组,遭不住啊. 一.数组之间要有逗号在B列右键, ...

  5. 搭建微服务器:express+https+api代理

    概述 最近打算玩一下service worker,但是service worker只能在https下跑,所以查资料自己用纯express搭建了一个微服务器,把过程记录下来,供以后开发时参考,相信对其他 ...

  6. 从一道面试题探究 Integer 的实现

    记得有次面试,面试官问我: 如何写一个方法交换两个 Integer 类型的值? 当时心里一惊,这是把我当小白了呀!交换两个数的值还不容易么,最简单的直接搞一个中间变量,然后就可以交换了… … 面试官随 ...

  7. 7.Flask文件上传

     1.1.上传文件和访问上传的文件 upload_file_demo.py from flask import Flask,request,render_template import os from ...

  8. 一次生产 CPU 100% 排查优化实践

    前言 到了年底果然都不太平,最近又收到了运维报警:表示有些服务器负载非常高,让我们定位问题. 还真是想什么来什么,前些天还故意把某些服务器的负载提高(没错,老板让我写个 BUG!),不过还好是不同的环 ...

  9. Litepal【开源数据库ORM框架】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 好用的数据库框架. 效果图 代码分析 本篇主要是整理Litepal的引入和增删改查的简单操作,具体使用请阅读参考资料. 使用步骤 一 ...

  10. SpringBoot实用小知识之Maven中dependencys和dependencymanagement区别

    利用pom管理引用包时,如果是单项目的话就直接在dependencies引用了,若有一个大工程项目里面包含多个子模块,则为了所有项目模块包的版本统一和好管理,则需要用到dependencyManage ...