实时显示GPU的两种方法(灵机一动)


文章目录

  • 实时显示GPU的两种方法(灵机一动)
  • 命令行CMD 实时显示GPU
  • Jupyter Notebook 实时显示GPU


最近在跑程序的时候,我在想能不能实时显示我的GPU,而不是每次都在命令行输入一个,

nvidia-smi

虽然也能看到我们的GPU显存和GPU利用率,但是我想看到变化之类的,有的人会说了,其实我们可以从我们的任务管理器上看,其实也是,但是利用服务器的时候,利用jupyter跑程序的时候,怎么看呢,似乎看不到任务管理器了。

我思前想去,其实可以利用Python连接我们的命令行,本身来说,我们就是在命令行输入nvidia-smi实时查看的,我看了下我的显卡,1050Ti,4G显存,这就是穷孩子家的电脑么,大大的哭了

gpustat持续显示 gpu信息显示_gpustat持续显示

gpustat持续显示 gpu信息显示_tensorflow_02

对于不同的人,希望显示GPU的地方不同,在这里我给出两段代码,一个实在命令行实时显示,一个是在我们的jupyter notebook实时显示的

命令行CMD 实时显示GPU

其实简单来说,就是一个python代码,直接运行就好了,废话不多说,上代码

import os
from IPython.display import clear_output as clear
import time
os.system('cls') # 清屏
while 1: # 无限循环
    os.system('nvidia-smi') # 连接命令行显示GPU
    time.sleep(1.5) # 延时1.5s
    os.system('cls') # 清屏

思想很简单,首先清屏,然后显示我们的GPU信息,然后每1.5s更新一次,大功告成,这时候我们只要运行这一段代码就可以在命令行实时显示了

不过要注意的是,首先在当前目录打开cmd,然后输入python gpu.py,这个代码是要在命令行运行才可以实时显示哦,当然,你在其他编译器也可以,只是不能用最原始的IDLE运行而已啦

Jupyter Notebook 实时显示GPU

当然,我们爱用的Jupyter Notebook也可以这样,众所周知,在jupyter notebook显示GPU也很简单

!nvidia-smi

也就是一行代码就可以显示跟命令行输入一样的结果,只是加了个!而已啦,那么如何在jupyter中实时显示的呢,废话也不多说,上代码

import time
import os
from IPython.display import clear_output as clear
while 1:
    !nvidia-smi
#     os.system('nvdia-smi')
    time.sleep(2)
    clear()

与前面不同,我们多了个clear,也就是jupyter的清屏了,其他思想是一样的,所以就这样简单的结束了,当然,这些用法可能只有一些有钱人才会看自己的多GPU,我只能爬

gpustat持续显示 gpu信息显示_python_03

每日一句

I am a slow walker, but i never walk backwarks.

我走得很慢,但我从不后退。—— 林肯