问题来源

在Linux下调用docker进行torch训练时,发现run完容器后无法检测到cuda环境,但是Linux下是有cuda环境及配置的,如图
在这里插入图片描述

问题情况

输入指令后发现输出结果并未启动cuda,但是可以检测到torch是gpu版本。

# 检查指令:
python3 -c "import torch; print('PyTorch版本:', torch.__version__); print('CUDA是否可用:', torch.cuda.is_available()); print('CUDA版本:', torch.version.cuda if torch.cuda.is_available() else 'N/A')"

输出结果为:
在这里插入图片描述

问题解决

最后确定是因为run容器的时候没有授权gpus,因此,更新run容器命令:

docker run -itd --privileged=true --gpus all --name pytorch39 -v /mnt:/mnt 0ffcd1c7c089 bash

run成功后进入容器再次检测:
在这里插入图片描述
至此,问题得以解决,可以正常执行torch代码进行炼丹了!

更多推荐