python查看GPU显存占用情况

这篇具有很好参考价值的文章主要介绍了python查看GPU显存占用情况。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

python查看GPU显存占用情况

from pynvml import nvmlDeviceGetHandleByIndex, nvmlInit, nvmlDeviceGetCount, nvmlDeviceGetMemoryInfo, nvmlDeviceGetName, \
    nvmlDeviceGetTemperature, nvmlShutdown

# 初始化
nvmlInit()
# 获取GPU个数
deviceCount = nvmlDeviceGetCount()
# 总显存
total_memory = 0
# 未用总显存
total_free = 0
# 已用总显存
total_used = 0
# 遍历查看每一个GPU的情况
for i in range(deviceCount):
    # 创建句柄
    handle = nvmlDeviceGetHandleByIndex(i)
    # 获取信息
    info = nvmlDeviceGetMemoryInfo(handle)
    # 获取gpu名称
    gpu_name = nvmlDeviceGetName(handle)
    # 查看型号、显存、温度、电源
    print("[ GPU{}: {}".format(i, gpu_name), end="    ")
    print("总共显存: {}G".format((info.total // 1048576) / 1024), end="    ")
    print("空余显存: {}G".format((info.free // 1048576) / 1024), end="    ")
    print("已用显存: {}G".format((info.used // 1048576) / 1024), end="    ")
    print("显存占用率: {:.2%}".format( info.used / info.total), end="    ")
    print("运行温度: {}摄氏度 ]".format(nvmlDeviceGetTemperature(handle, 0)))

    total_memory += (info.total // 1048576) / 1024
    total_free += (info.free // 1048576) / 1024
    total_used += (info.used // 1048576) / 1024
# 打印所有GPU信息
print("显卡名称:[{}],显卡数量:[{}],总共显存;[{}G],空余显存:[{}G],已用显存:[{}G],显存占用率:[{:.2%}]。".format(gpu_name, deviceCount, total_memory,
                                                                                                         total_free, total_used,
                                                                                                         (total_used / total_memory)))

# 关闭管理工具
nvmlShutdown()

python获取gpu信息,python,开发语言文章来源地址https://www.toymoban.com/news/detail-653788.html

打印为字典格式

from pynvml import nvmlDeviceGetHandleByIndex, nvmlInit, nvmlDeviceGetCount, nvmlDeviceGetMemoryInfo, nvmlDeviceGetName, \
    nvmlDeviceGetTemperature, nvmlShutdown

# 初始化
nvmlInit()
# 获取GPU个数
deviceCount = nvmlDeviceGetCount()

all_info = []
# 遍历查看每一个GPU的情况
for i in range(deviceCount):

    # 创建句柄
    handle = nvmlDeviceGetHandleByIndex(i)
    # 获取信息
    info = nvmlDeviceGetMemoryInfo(handle)
    # 获取gpu名称
    gpu_name = nvmlDeviceGetName(handle)
    gpu_name_series = gpu_name.split(" ")[-1]
    # 查看型号、显存、温度、电源
    # print("[ GPU-{}: {}".format(i, gpu_name_series), end="    ")
    # print("空余显存: {:.1f}".format((info.free // 1048576) / 1024), end="    ")
    # print("已用显存: {:.1f}".format((info.used // 1048576) / 1024), end="    ")
    # print("显存占用率: {:.2%}".format( info.used / info.total), end="    ")
    # print("温度: {}度 ]".format(nvmlDeviceGetTemperature(handle, 0)))
    single_gpu_info ="[ GPU-{}: {}".format(i, gpu_name_series) + "  " +"空余显存: {:.1f}".format((info.free // 1048576) / 1024)+ "  "+"已用显存: {:.1f}".format((info.used // 1048576) / 1024)+"  " +"显存占用率: {:.2%}".format( info.used / info.total)+"  " + "温度: {}度 ]".format(nvmlDeviceGetTemperature(handle, 0))
    single_gpu_dict = {'index': i,'info':single_gpu_info}
    all_info.append(single_gpu_dict)


print(all_info)
# 关闭管理工具
nvmlShutdown()

到了这里,关于python查看GPU显存占用情况的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 终止进程后,GPU显存仍被占用问题 | kill -9彻底杀死进程 | ps aux|grep python

    本文部分内容参考博客,十分感谢!!! 问题描述:在Linux终端把进程终止后,发现显存没有被释放出来! Figure 1 这个命令是在Linux操作系统中使用的,用于列出当前运行的进程,并通过管道(|)将其结果传递给grep命令来筛选包含特定文本的行。具体来说, ps aux | grep 命令

    2024年02月21日
    浏览(31)
  • 查询GPU时无进程运行,但是显存却被占用了

    nvidia-smi 或者 gpustat 无进程在GPU上运行,但GPU显存却被占用了 应该是存在僵尸进程,已经运行完毕或者卡死,但是内存没有释放,处于挂起状态 3.1 方案一 重启电脑 3.2 方案二 如果电脑不能重启,那就通过命令行: 可以看到对应的设备,是有进程的。 最后就用kill命令行杀掉

    2024年02月15日
    浏览(45)
  • Ubuntu下跑Aplaca报错:torch.cuda.0utofMemoryError: CUDA out of memory.解决办法(查看CUDA占用情况&清除GPU缓存)

    错误提示: torch.cuda.0utofMemoryError: CUDA out of memory.Tried to allocate 2.00 MiB (PU 0; 23.69 GiB total capacity; 237 BiB already allocated; 18.38 MiB fre; 2.50 GiB reserved in total by PyTorch) If reserved memory is allocated memory try setting max_split_size_mb to avoid fragmentation.See documentation for Memory Management and PYTORCH_CUDA_ALLOC_

    2024年02月11日
    浏览(44)
  • 【深度学习工具】Python代码查看GPU资源使用情况

    在训练神经网络模型时候,有时候我们想查看GPU资源的使用情况,如果使用Ctrl+Shift+Esc不太符合我们程序员的风格😅,如果可以使用代码查看GPU使用情况就比较Nice  话不多说,直接上代码 实现效果

    2024年02月14日
    浏览(30)
  • 在linux中查看运行指定进程资源占用(cpu+gpu)

    在运行程序时有时候会需要查看资源占用,以方便部署在其他服务器上时进行参考。以下是总结了我在linux上查找程序进程资源的两种方法(cpu和gpu都有)。 如果进程较多,输入 ps -ef | grep + 指令 进行搜索。如果运行的是python程序,可以输入 ps -ef | grep python3 比如我想

    2024年02月04日
    浏览(49)
  • Ubuntu 20.04 实时查看GPU使用情况

    使用两种方法,实时查看 GPU 使用情况;彻底杀死制定进程 使用终端命令 nvidia-smi 查看显卡信息 如果你想实时检测显卡使用情况,添加 watch -n 即可 其中,4 是指 4 秒刷新一次终端,可以根据自己的需求设置 安装过程很简单,直接 pip 即可(本人是这样),使用 gpustat --json 以

    2024年02月13日
    浏览(42)
  • PyTorch中查看GPU使用情况以及一些重要函数

    pytorch多卡相应内容学习总结,本着勤能补拙的态度,希望能够更好地提升自我能力。 CPU 查询 GPU 查询 lspci 是一种实用程序,用于在系统中显示有关pci总线的信息以及连接到它们的设备。 CUDA 版本 以 nvcc -V 查询为主 实时查看 nvidia-smi 显卡信息查看 平时在模型中可以增肌信息

    2023年04月09日
    浏览(71)
  • Linux使用:环境变量指南和CPU和GPU利用情况查看

    按变量的生存周期划分: 永久的 :需要修改配置文件,变量永久生效。 临时的 :使用export命令声明即可,变量在关闭shell时失效。 在配置永久环境变量时,又可以按照作用范围分为: 用户环境变量 系统环境变量 系统环境变量对所有系统用户都有效,用户环境变量仅仅对当

    2023年04月08日
    浏览(39)
  • Pytorch查看GPU信息

    1、查看cuda是否可用:torch.cuda.is_available() 2、查看GPU数量:torch.cuda.device_count() 3、查看GPU型号,设备索引默认从0开始:torch.cuda.get_device_name(0) 4、查看当前设备索引:torch.cuda.current_device()

    2024年02月09日
    浏览(41)
  • Linux中使用nvidia-smi命令实时查看指定GPU使用情况

    参考:使用watch和nvidia-smi命令实时查看GPU使用、显存占用情况 nvidia-smi :可以查看显卡的型号、驱动版本、显卡目前温度、显存已使用及剩余、正使用显卡的所有进程及占用显存等信息; watch -n 5 nvidia-smi :5代表每隔5秒刷新一次GPU使用情况,同理,每隔1秒刷新,则使用:w

    2024年01月22日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包