【问题解决】failed call to cuInit: CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected

Star_KeyW 2024-09-30 08:01:26 阅读 53

问题情况如下:

在使用深度学习模型进行模型训练预测时,遇到如下信息提示:

这是一个 CUDA错误消息,表示没有检测到具有 CUDA 能力的设备。这意味着您的系统上没有 NVIDIA GPU 或者 GPU 驱动程序未正确安装。 

要解决这个问题,首先需要安装 NVIDIA CUDA 设备驱动程序和 CUDA工具包,并确保它们的版本与正在运行的框架要求的版本匹配。还需要将 CUDA 的路径添加到系统环境变量中,以便的程序能够找到它。

我使用的深度学习框架式Tensorflow,各版本对应信息如下,官网可查:

如果您已经安装了 CUDA 设备驱动程序和工具包,并且仍然遇到这个问题,则需要确认设备是否正确安装和连接。

【问题解决】:

(一)检查GPU是否能正常运行

<code># 导入必要的库

import tensorflow as tf

physical_gpus = tf.config.list_physical_devices('GPU')

print("可用的GPU设备列表:")

for gpu in physical_gpus:

# 循环打印gpu的设备信息

print(gpu)

 (二)手动添加使用GPU的代码段

import os

# 需要首先确认自己有几个可以使用GPU,可以通过打印GPU设备列表来确定可使用GPU的序号

# 一般情况,排序先从0开始,若只有一个GPU,则赋值就为0

os.environ['CUDA_VISIBLE_DEVICES'] = '0'

config = tf.compat.v1.ConfigProto()

config.gpu_options.allow_growth = True

session = tf.compat.v1.Session(config=config)

(三)监控GPU使用情况 

终端中输入:

nvidia-smi 

 详细指令信息参考:GPU之nvidia-smi命令详解-CSDN博客



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。