执行结束
sudo sh cuda_11.3.0_465.19.01_linux.run
上述命令执行结束出现一个框
通过方向键下移光标,选择continue
打字输入accept
然后就是下面这个了
由于已经安装了驱动 按方向键,使得光标在driver上,再按回车,之后通过方向键使光标移动到install
此时下图里需要将第一行的Driver CUDA 11.0去掉。(注意:回车键作用是将 [X] 就会变成[ ],[X]代表有,[ ]代表无)
报错:Installation failed. See log at /var/log/cuda-installer.log for details.
因为应该将[X] 就会变成[ ],弄反了
成功了!!!!
安装vim
sudo apt-get install vim
配置环境
装好之后打开环境变量
vim ~/.bashrc
i键进入编辑模式,esc退出,写:wq保存退出
加入这两行保存,注意我这里是11.3,你如果是别的版本,要改成自己的
export PATH="/usr/local/cuda-11.3/bin:$PATH" export LD_LIBRARY_PATH="/usr/lcoal/cuda-11.3/lib64:$LD_LIBRARY_PATH"
刷新环境变量生效
source ~/.bashrc
测试CUDA
查看版本
nvcc -V
啊啊啊啊啊啊我成功了
终端输入
cd /usr/local/cuda-11.3/samples/1_Utilities/deviceQuery sudo make sudo ./deviceQuery
输出Result=pass代表成功了,里面显示了CUDA可用的设备信息。
报错unknown error Result = FAIL
./deviceQuery
./deviceQuery Starting…
CUDA Device Query (Runtime API) version (CUDART static linking)
cudaGetDeviceCount returned 999
-> unknown error Result = FAIL
尝试
sudo ./deviceQuery
就PASS了,好神奇
那么没有输出成功的小伙伴。首先确认你的cuda版本是否跟驱动对应,如果没有问题。那么输入 reboot 进行重启。问题大概率能解决。然后在按照上述命令行执行,就能输出pass了。
CUDNN
进入网址下载,要把cudnn版本与cuda版本对应正确
https://developer.nvidia.com/rdp/cudnn-archive
上述网址需要注册登录,按照要求完成即可
本机翻墙下载,然后Xftp传过去
查看传过去后的文件名
ls
下载+安装
方法1:下载deb文件(tgz易错,但deb卸载麻烦)
先下载三个deb包,一定要用deb,出错几率小
官网:https://developer.nvidia.com/rdp/cudnn-archive
我的是11.3,选择里面的8.2.1 for 11.x
进入到下载文件所在目录,安装这三个包
谢谢,这里都能遇到问题
Oops, sorry for the inconvenience It seems that the file you have tried to download is no longer available or the URL used is no longer valid. Please refer back to the product page and follow the links to get the latest downloadable version.
可以到阿里镜像下载包
https://mirrors.aliyun.com/nvidia-cuda/ubuntu1804/x86_64/
注意要下载2个包
然后按照顺序依次安装,这样才不会报错。
sudo dpkg -i xxxxxxx.deb
注意修改指令中的对应的版本信息。
第一步:安装runtime library
sudo dpkg -i libcudnn8_8.2.1.32-1+cuda11.3_amd64.deb
第二步:安装developer library
sudo dpkg -i libcudnn8-dev_8.2.1.32-1+cuda11.3_amd64.deb
(可选,和后面测试有关)
第三步:安装code samples and the cuDNN Library User Guide
sudo dpkg -i libcudnn8-samples_8.2.1.32-1+cuda11.3_amd64.deb
方法2 下载zip
进入下载后的文件夹解压后,就可以看见cuda文件夹(浏览器下在的文件一般在Downloads中,解压后子目录就能看见cuda)在解压后的文件夹中输入一下命令
参考:https://blog.csdn.net/avideointerfaces/article/details/104793245
重命名,然后再解压缩。命令如下所示。
mv cudnn-11.3-linux-x64-v8.2.1.32.tgz cudnn-11.3.tgz tar -xvzf cudnn-11.3.tgz
因为下载的是库,不是源代码,所以不需要编译了。只需要将解压缩出来的so库和头文件拷贝到系统目录下即可。
将cudnn解压后的include和lib64文件夹复制到cuda中
cuda-11.3 此处是自己版本号 。
一行行复制,因为要输密码
sudo cp cuda/include/cudnn.h /usr/local/cuda-11.3/include/ #解压后的文件夹名字为cuda-11.3 sudo cp cuda/include/cudnn_version.h /usr/local/cuda-11.3/include/ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.3/lib64/ sudo chmod a+r /usr/local/cuda-11.3/include/cudnn.h
最后安装一下依赖
sudo apt-get install libfreeimage3 libfreeimage-dev
查看一下cudnn版本
方法1
使用find命令找到对应的文件就可以了
sudo find / -name cudnn_version.h 2>&1 | grep -v "Permission denied" cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
出现出现cudnn版本就是安装成功了。
如果命令不可用,尝试方法二。
方法2
之前网上提供的方式cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2已经不能用了,因为cudnn.h文件里内容修改了,不再存放版本信息。
使用命令
cat /usr/local/cuda/include/cudnn.h | grep cudnn
查看,发现里面导入了cudnn_version.h文件,版本信息就存放在这个文件里
测试样例(如果是deb安装,并且才下载了测试案例才可以)
刚才有个包是cudnn自带的样例sample,运行测试一下
/usr/src/cudnn_samples_v7 中的mnistCUDNN sample
开始运行sample
cd NVIDIA_CUDA-11.3_Samples cp -r /NVIDIA_CUDA-11.3_Samples/ $HOME cd $HOME/cudnn_samples_v8/mnistCUDNN make clean && make ./mnistCUDNN
如果出现 Test passed,说明安装成功
如果报错
如果编译时出现fatal error: FreeImage.h: No such file or directory错误,参考https://blog.csdn.net/xhw205/article/details/116297555
Anaconda
下载+安装
方法1:Anaconda3官网下载
方法2:清华大学开源软件镜像站下载
https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
里面有新旧版本,我下载的是Anaconda3-2021.05-Linux-x86_64.sh版本,如果大家需要其它版本,把这个后缀换成你想下的版本即可;
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.05-Linux-x86_64.sh
1、运行.sh文件
bash Anaconda3-2021.05-Linux-x86_64.sh
2.进入安装,输入yes
3.进入阅读注册手册,按 Enter 键
4.注册手册阅读完, 输入yes进行安装,然后会安装成功
环境配置
5.安装成功后,用vim打开环境变量:
sudo vim ~/.bashrc
添加下列语句,保存并退出
注意: “/home/sc/anaconda3/bin:$PATH” 的 sc是自己的用户名称,每个人都不一样,不知道可以看上面的打开的环境变量有个样本
export PATH="/home/sc/anaconda3/bin:$PATH"
更新环境变量
在终端输入:
source ~/.bashrc
添加清华源
将anaconda换一下源(加入清华源)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ conda config --set show_channel_urls yes
为了保证用的是镜像站提供的索引,清除索引缓存,输入:
conda clean -i
此时,Anaconda3的基础设置弄完了
Pytorch
conda虚拟环境
创建一个虚拟环境,用来安装pytorch
conda create -n pytorch1.12_gpu or,可以选择Python版本 conda create -n pytorch1.12_gpu python==3.8 这样就创建了一个名字为pytorch1.12_gpu,基于python版本3.8的一个虚拟环境了
激活环境
conda activate pytorch1.12_gpu 或 source activate pytorch1.12_gpu
安装一波依赖,顺便测试一下刚才的源,如果速度很快,那么就很棒棒,一会的Pytorch也会很顺利
conda install numpy mkl cffi
安装
进入官网,查看你的版本对应的安装命令
https://pytorch.org/get-started/locally/
在安装之前先添加下面这个源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
在刚才的虚拟环境里输入命令安装pytorch
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
最新版GPU版本的:
conda install pytorch torchvision torchaudio pytorch-cuda=11.6 -c pytorch -c nvidia
(与上面一个,跑其中一个就可以了。示例:)
20.04 + pytorch 1.9.0 + cuda 11.3 的指令:
conda install pytorch==1.9.0 torchvision==0.10.0 torchaudio==0.9.0 cudatoolkit=11.3 -c pytorch -c conda-forge
CPU-Only版本的:
conda install pytorch torchvision torchaudio cpuonly -c pytorch
大家根据自己的情况从上面选一个
安装文件非常大,耐心等待即可,如果源切换成功了,这里下载会很快。
测试
进入虚拟环境,输入命令测试,大功告成!
python3
import torch torch.cuda.is_available()
print(torch.__version__) #输出PyTorch版本 print(torch.__path__) #输出PyTorch的路径
退出虚拟环境的命令:
conda deactivate
conda env list
cpu only测试
环境名称为pytorch11.3_cpu
gpu测试
报错
参考:https://blog.csdn.net/qq_31878083/article/details/122069771
vi ~/.condarc
把channels里面的https改成http
这个是网络安全的原因,https协议是有安全性的ssl加密传输协议,是浏览器和服务器之间的通信加密,这样来确保传输的安全。
auto_activate_base: false channels: - http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ - defaults show_channel_urls: true default_channels: - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r custom_channels: conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
为了保证用的是镜像站提供的索引,清除索引缓存,输入:
conda clean -i
根据不同要求得到命令后,要把-c pytorch去掉,才会去自己添加的镜像源下载
gpu下载成cpu
环境名称为pytorch11.3
#查看torchvision 版本
conda list torchvision
重新下载把
重新安装gpu版本
参考:https://blog.csdn.net/ke996/article/details/112761228
torch下载:由于通过命令行下载的pytorch版本是cpu版本导致后期测试torch测试是否可以使用GPU 时,torch.cuda.is_available()一直返回False.
通过下载pytorch的whl文件,用pip install ******.whl来安装pytorch.
目前稳定版本为1.13.0
注意cu才是cpu版本,我是cuda11.3,所以选择了这个
(我没下,因为我分了两个环境)特别重要的是cp后面跟着是python版本这个也要下载相应版本
比如:torch-1.8.0+cu111-cp36-cp36m-win_amd64.whl
torchvision-0.9.0+cu111-cp36-cp36m-win_amd64.whl
CUDA 11.3
conda remove -n pytorch11.3(虚拟环境名称) --all
conda remove -n pytorch11.3 --all
删除包
参考:https://blog.csdn.net/weixin_46415031/article/details/114809650
conda install pytorch1.12.0 torchvision0.13.0 torchaudio==0.12.0 cudatoolkit=11.3 -c pytorch
cu113/torchvision-0.13.0%2Bcu113-cp39-cp39-linux_x86_64.whl
cu113/torch-1.12.0%2Bcu113-cp39-cp39-linux_x86_64.whl
还是通过Xftp上传
下载到本地后:进入conda环境激活对应的python36
conda env list
conda activate pytorch1.12_gpu
下载python3.9
conda install python=3.9.0
pip install+ whl文件位置
比如:pip install torch-1.12.0+cu113-cp39-cp39-linux_x86_64.whl
pip install --no-index --find-links=file:/home/tjh/torch-1.12.0+cu113-cp39-cp39-linux_x86_64.whl
普天同庆
删除下载源
安装完记得删除下载源
输入sudo vim .condarc,修改该文件的内容(记得删除default那行):
conda install cudnn=8.2.1 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/
本机安装whl报错
pip install 本机的whl,报错网络不可达
进到那个目录了好像,pip升级也网络不可达
pip源和conda源是两个东西
检查pip源
pip config list
增加镜像源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simpleWriting to /home/tjh/.config/pip/pip.conf
成功了!!!!