概述
问题: 在anaconda虚拟环境中安装的指定的cuda版本, 我开始用conda install cudatoolkit=10.0,但好像我编译其他环境的时候,还是会使用系统cuda的10.2版本. 直到我找资料,发现可以在activate虚拟环境的时候激活指定版本的cuda,并且在deactivate的时候退出指定版本的cuda.
我的系统cuda版本是10.2, 我们先安装cuda10.0
首先需要降级gcc
检查debian10的gcc版本
gcc --version
会看到是8.3.0或者更高,因此要降低版本。
sudo apt-cache search gcc-7
sudo apt-get install gcc-7
sudo apt-get install g++-7
sudo ln -s /usr/bin/gcc-7 /usr/local/bin/gcc
sudo ln -s /usr/bin/g++-7 /usr/local/bin/g++
这里官网没有Debian的cuda10.0版本,所以我们可以下载Ubuntu18.04的cuda10.0版本,亲测安装成功!!
(注意此命令需要按Ctrl-Alt+F1进入tty环境执行)
sudo service lightdm stop
ls
sudo sh ./cuda_10.0.130_410.48_linux.run
accept
我们已经安装好了nvidia驱动, 所以
在选择是否安装Driver的时候输入 n
我们已经安装好了系统的cuda并且加入了系统符号链接, 所以
在选择是否生成系统符号链接的时候输入 n
安装cudnn7.5.0
下载cuda10.0版本对应的cudnn7.5.0
tar -xzvf cudnn-10.0-linux-x64-v7.5.0.56.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64
sudo chmod a+r /usr/local/cuda-10.0/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.0/lib64/libcudnn*
检测是否安装成功
cat /usr/local/cuda-10.0/include/cudnn.h | grep CUDNN_MAJOR -A 2
然后配置指定版本cuda的anaconda环境
第⼀步 创建环境
conda create -n Det3D python=3.7
第⼆步 指定该环境使⽤用的cuda版本
编译时,实际是从动态链接库的地址找需要的cuda动态链接库,所以我们只需要指定 LD_LIBRARY_PATH . 即保证该环境启动时,把cuda 10的地址加⼊入 LD_LIBRARY_PATH ,关闭该环境时, 再移除.
创建环境启动时的脚本:
mkdir -p ~/anaconda3/envs/Det3D/etc/conda/activate.d
touch ~/anaconda3/envs/Det3D/etc/conda/activate.d/activate.sh
chmod +x ~/anaconda3/envs/Det3D/etc/conda/activate.d/activate.sh
gedit ~/anaconda3/envs/Det3D/etc/conda/activate.d/activate.sh
在脚本中填⼊入:
#!/bin/sh
ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH
创建环境关闭时的脚本:
mkdir -p ~/anaconda3/envs/Det3D/etc/conda/deactivate.d
touch ~/anaconda3/envs/Det3D/etc/conda/deactivate.d/deactivate.sh
chmod +x ~/anaconda3/envs/Det3D/etc/conda/deactivate.d/deactivate.sh
gedit ~/anaconda3/envs/Det3D/etc/conda/deactivate.d/deactivate.sh
在脚本中填⼊:
#!/bin/sh
export LD_LIBRARY_PATH=$ORIGINAL_LD_LIBRARY_PATH
unset ORIGINAL_LD_LIBRARY_PATH
第三步 使⽤,检查
启动环境: conda activate Det3D
检查动态链接库路路径:
echo $LD_LIBRARY_PATH
,应该看到输出:
/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/extras/CUPTI/lib64:
检查安装包列列表: pip list
或者 conda list
:
关闭环境: conda deactivate
最后
以上就是俊逸柚子为你收集整理的Debian中在anaconda虚拟环境中配置指定cuda 10.0和cuda10.2版本,并保留系统cuda版本的全部内容,希望文章能够帮你解决Debian中在anaconda虚拟环境中配置指定cuda 10.0和cuda10.2版本,并保留系统cuda版本所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复