华为云AI开发平台ModelArts日志提示”No CUDA-capable device is detected”_云淘科技

问题现象

在程序运行过程中,出现如下类似错误。

1.‘failed call to cuInit: CUDA_ERROR_NO_DEVICE:  no CUDA-capable device is detected’
2.‘No CUDA-capable device is detected although requirements are installed’

原因分析

出现该问题的可能原因如下:

用户/训练系统,将CUDA_VISIBLE_DEVICES传错了,检查一下CUDA_VISIBLE_DEVICES变量是否正常。
用户选择了1/2/4卡这些规格的作业,然后设置了CUDA_VISIBLE_DEVICES=‘1’这种类似固定的卡ID号,与实际选择的卡ID不匹配。

处理方法

尽量代码里不要去修改CUDA_VISIBLE_DEVICES变量,用系统默认里面自带的。
如果必须指定卡ID,需要注意一下1/2/4规格下,指定的卡ID与实际分配的卡ID不匹配的情况。
如果上述方法还出现了错误,可以去notebook里面调试打印CUDA_VISIBLE_DEVICES变量,或者用以下代码测试一下,查看结果是否返回的是True。

import torch
torch.cuda.is_available()

建议与总结

在创建训练作业前,推荐您先使用ModelArts开发环境调试训练代码,避免代码迁移过程中的错误。

直接使用线上notebook环境调试请参考使用JupyterLab开发模型。
配置本地IDE(Pycharm或者VSCode)联接云上环境调试请参考使用本地IDE开发模型。

父主题: GPU相关问题

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家