当前位置: 首页 > news >正文

多GPU系统中的CUDA设备不可用问题

我们在使用多GPU系统时遇到了CUDA设备不可用的问题,详细情况如下:

问题描述: 我们在一台配备有8块NVIDIA GeForce RTX 3090显卡的服务器上运行CUDA程序时,遇到了如下错误:

cudaErrorDevicesUnavailable: CUDA-capable device(s) is/are busy or unavailable


使用 nvidia-smi 命令检查时,发现所有GPU的利用率为0。

系统配置:

操作系统:Windows 11

GPU型号:NVIDIA GeForce RTX 3090 x 8

驱动程序版本:556.12

CUDA工具包版本:12.5

我已尝试的解决方案:

检查GPU状态: 使用 nvidia-smi 查看当前GPU的使用情况,所有GPU的利用率为0。

重启系统: 多次重启服务器,但问题依旧存在。

确认管理员权限: 以管理员身份运行命令提示符和相关程序。

检查并更新驱动程序: 确保安装了最新的NVIDIA驱动程序,并重新安装了CUDA工具包,版本匹配且为最新。

限制使用特定GPU: 修改环境变量 CUDA_VISIBLE_DEVICES 限制CUDA程序只使用特定的GPU进行测试,问题依旧。

终止不必要的进程: 使用 nvidia-smi 查看并终止了所有可能占用GPU资源的进程,仍未解决问题。

检查和调整BIOS设置(没有尝试,但是在CUDA版本修改之前就是禁用集成显卡的,任然出现该问题): 进入BIOS/UEFI,确保所有PCIe插槽设置为“Auto”或“Gen3”,并禁用了所有不必要的集成显卡。

测试其他CUDA示例程序: 使用CuPy和PyTorch编写并运行其他简单的CUDA程序,均出现相同错误。

以下是我们使用的测试代码和错误信息:

import osimport cupy as cpos.environ['CUDA_VISIBLE_DEVICES'] = '0'  # 只使用第一个GPUtry:    start = cp.cuda.Event()    end = cp.cuda.Event()    print("CUDA event created successfully.")    del start    del end    print("CUDA event destroyed successfully.")except cp.cuda.runtime.CUDARuntimeError as e:    print(f"CUDA error: {e}")device = cp.cuda.Device(0)  # 使用第一个GPUtry:    free_memory, total_memory = device.mem_info    print(f"Device 0: Free Memory: {free_memory / (1024 ** 2):.2f} MB")    print(f"Device 0: Total Memory: {total_memory / (1024 ** 2):.2f} MB")except cp.cuda.runtime.CUDARuntimeError as e:    print(f"CUDA error: {e}")

错误信息:

cudaErrorDevicesUnavailable: CUDA-capable device(s) is/are busy or unavailable

我们已尝试了多种解决方法,但问题仍未解决。

http://www.lryc.cn/news/396848.html

相关文章:

  • python的列表推导式
  • 类与对象(2)
  • 迂回战术:“另类“全新安装 macOS 15 Sequoia beta2 的极简方法
  • 如何设计一个秒杀系统,(高并发高可用分布式集群)
  • 深度优先搜索(所有可达路径)
  • 如何配置yolov10环境?
  • 『大模型笔记』GraphRAG:利用复杂信息进行发现的新方法!
  • 数据结构1:C++实现变长数组
  • C++入门基础篇(下)
  • LabVIEW图像分段线性映射
  • Linux开发:进程件通过UDS传递内存文件句柄
  • Internet Download Manager6.42最新下载器互联网冲浪小能手们!
  • Vue 使用Audio或AudioContext播放本地音频
  • 从数据仓库到数据湖(上):数据湖导论
  • Perl 语言开发(六):深入探索 Perl 中的数组与列表操作
  • 统一视频接入平台LntonCVS视频监控平台具体功能介绍
  • redis的Bitmap 、HyperLogLog、Geo相关命令和相关场景
  • ✅小程序申请+备案教程
  • Google Guava Cache简介
  • githup开了代理push不上去
  • 【python】保存列表、字典数据到本地文件,以txt、json和pickle为例
  • 每日新闻掌握【2024年7月9日 星期二】
  • 数据结构——Trie
  • 前端根据目录生成模块化路由routes
  • Blender新手入门笔记收容所(一)
  • 修改服务器挂载目录
  • Linux+InternStudio 关卡
  • 如何提升美国Facebook直播的整体体验?
  • flutter项目与原生项目相比,性能比较差的原因
  • 第二周:李宏毅机器学习笔记