• ✍14 pynvml模块的使用(GPU)


    查看GPU信息

    nvidia-smi
    

    简单使用

    # 导入模块
    import  pynvml
    
    # 每MB包含的字节数(用于后面单位换算)
    NUM_EXPAND = 1024 * 1024
    
    # 初始化
    pynvml.nvmlInit()
    '''
    pynvml.nvml.NVMLError_LibraryNotFound: NVML Shared Library Not Found
    1.出现这个问题可能是你的电脑没有显卡, pynvml源码里面会去寻找电脑显卡驱动安装目录, 没找到就报错
    2.目录错误--> 解决方法--->
    https://www.zywvvd.com/2020/11/06/deep_learning/pynvml_model_not_found/pynvml_model_not_found/
    https://www.cnblogs.com/ShineLeBlog/p/11219781.html
    '''
    
    # 获取GPU驱动版本信息
    version = pynvml.nvmlSystemGetDriverVersion()
    print(version)
    
    #获取Nvidia GPU个数
    count = pynvml.nvmlDeviceGetCount()
    print(count)
    
    #获取第 0 个 GPU 的 handle
    handle = pynvml.nvmlDeviceGetHandleByIndex(0)
    
    # 通过 handle 设备名称
    dev_name = pynvml.nvmlDeviceGetName(handle)
    print(dev_name)
    
    # 通过 handle 获取uuid
    uuid = pynvml.nvmlDeviceGetUUID(handle)
    print(uuid)
    
    #通过 handle 获取GPU 0 的信息
    info = pynvml.nvmlDeviceGetMemoryInfo(handle)
    
    # 获取GPU 0 的总显存
    print(info.total)
    print(f"{info.total/NUM_EXPAND}MB")
    
    # 获取GPU 0 已经使用的显存
    print(info.used)
    print(f"{info.used/NUM_EXPAND}MB")
    
    #关闭 pynvml
    pynvml.nvmlShutdown()
    

    测试

    • 155的服务器上有显卡, 使用155的机器做测试

    image-20210727153936634

    更多方法

    请参考 : NVIDIA官方GPU管理和部署文档

    image-20210727154430180

  • 相关阅读:
    2015 12 04课堂随便
    java 循环制作三角形
    2015 12 3课堂随笔
    张王李相亲应用if else
    2015 12 01 课堂笔记。 运算符的使用
    Java图形化界面设计——布局管理器之null布局(空布局)
    jQuery
    jQuery
    jQuery
    jQuery
  • 原文地址:https://www.cnblogs.com/songhaixing/p/15604843.html
Copyright © 2020-2023  润新知