问题描述
-
遇到的问题:
- 运行某篇文章的代码时需要编译并安装第三方库(detectron2),该库仅支持到CUDA 11.1, 而5台GPU服务器中4台默认的cuda (即/usr/local/cuda/)版本是11.6, 另一台gpu5是10.1.
- 因此,创建了conda环境env1,并在gpu5上成功安装了detectron2 (pytoch 1.5 + cuda 10.1版本)
- 但问题是,env1无法在gpu1-4上运行,原因是cuda版本不对
-
且无root权限
解决方法
要解决的问题本质上是 如何在无root权限的情况下为5台GPU统一CUDA版本为10.1.
- 只需要将某版本的cuda安装到自己的目录下,并添加到PATH即可
- 下述链接介绍的很详细: https://zhuanlan.zhihu.com/p/198161777
- 大致步骤可总结如下:
- Step1: wget命令从官网上下载想要安装的cuda版本 (.run格式)
- Step2: 安装,并选择合适的安装选项,重点是改变Toolkit和libarary的安装路径
- Step3: 修改~/.bashrc中的环境变量 , 如
export PATH=$PATH:/home/xxx/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/xxx/cuda/lib64
- Step4: 利用nvcc -V验证是否安装成功