
# 日志提示"cuda runtime error (10) : invalid device ordinal at xxx"
#### 问题现象
训练作业失败，日志报出如下错误：
```
RuntimeError: cuda runtime error (10) : invalid device ordinal at xxx
```
图1错误日志   
![](https://support.huaweicloud.com/trouble-modelarts/figure/zh-cn_image_0000001449295781.png "点击放大")
#### 原因分析
可以从以下角度排查：
- 请检查CUDA_VISIBLE_DEVICES设置的值是否与作业规格匹配。例如您选择4卡规格的作业，实际可用的卡ID为0、1、2、3，但是您在进行cuda相关的运算时，例如"tensor.to(device="cuda:7")"，将张量搬到了7号GP卡上，超过了实际可用的ID号。
- 如果cuda相关运算设置的卡ID号在所选规格范围内，但是依旧出现了上述报错。可能是该资源节点中存在GP卡损坏的情况，导致实际能检测到的卡少于所选规格。
 
#### 处理方法
1. 建议直接根据系统分卡情况下传进去的CUDA_VISIBLE_DEVICES去设置，不用手动指定默认的。
2. 如果发现资源节点中存在GP卡损坏，请联系技术支持处理。
 
#### 建议与总结
在创建训练作业前，推荐您先使用ModelArts开发环境调试训练代码，避免代码迁移过程中的错误。
- 直接使用线上notebook环境调试请参考[使用JupyterLab开发模型](https://support.huaweicloud.com/devtool-modelarts/devtool-modelarts_0012.html)。
- 配置本地IDE（Pycharm或者VSCode）连接云上环境调试请参考[使用本地IDE开发模型](https://support.huaweicloud.com/devtool-modelarts/devtool-modelarts_0019.html)。
 
