【autodl/linux配环境心得:conda/本地配cuda,cudnn,gcc,g++及pytorch心得】

这篇具有很好参考价值的文章主要介绍了【autodl/linux配环境心得:conda/本地配cuda,cudnn,gcc,g++及pytorch心得】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我们服务器遇到的大多数找不到包的问题

都是因为国内的网络环境以及墙的问题,导致我们服务器使用了源,或conda使用了源的问题。
使用命令: conda install ,提示找不到包,很可能是因为我们使用了源,然后源里没存那个包。
使用命令: conda search cudatoolkit,找不到包,那其实是这个源里没这个包,不是说conda真的装不上那个特定版本的cuda。

又比如,使用git clone, git reset,一直报很奇怪的错,网上搜索的方法试了又试,都解决不了这个问题,之后发现是国内链接github比较慢,使用一下学术加速就解决了。

又比如,conda install pytorch -c pytorch,怎么都装不上,找不到包,也是连接pytorch官网比较慢

所以这里,笔者通过在autodl上搭建环境的例子,重新整一遍linux新环境中配置cuda,cudnn,pytorch以及安装好一个github包,并通过git硬调apex版本,来掩饰一下,当国内网不好,或使用的服务器网不好的时候,我们有多少种方法把环境给配好。(比如本地安装,换源,conda换pip之类的。)

一,服务器安装cuda和cudnn

使用conda在线安装cuda和cudnn

一般情况下,我们使用conda在虚拟环境中安装cuda和cudnn,我们会先搜索conda能提供的cuda包和cudnn包再安装。
比如使用如下所示代码:

conda search cudatoolkit
conda search cudnn

之后安装显示出来的列表里图里有的cuda和cudnn版本。

conda install cudatoolkit==xx.xx
conda install cudnn==xx.xx

比如当我在autodl上默认环境中运行:conda search cudatoolkit时,显示出来的是如下画面:
linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
可以看到,显示出来的包不全,导致我们配环境也配的很困难(conda search cudnn同理,同样是不全。)
不管是直接使用命令进行安装conda install cudatoolkit==xx.xx,还是使用命令conda search cudatoolkit --info自己根据链接下载里面对应的包再本地安装,前提是我们得能搜索到对应的包啊,连包都搜索不到怎么安装(比如我们想安装11.1版本的cuda,我们至少得能搜索到cuda11.1啊,但这里的cudatoolkit连11.1都搜索不到。)

为什么conda能提供的cuda版本和cudnn版本这么少?我尝试运行了一下这两行命令进行搜索:

conda search cudatoolkit -c conda-forge
conda search cudnn -c conda-forge

这回能搜索到一系列的包。
linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
确定原因:是网络和源的问题,导致conda搜索不到。
尝试换一下源再搜索:

#conda清除添加源,恢复默认源
conda config --remove-key channels
#添加一些清华源(有时候清华源崩了,可以换阿里源,阿里源崩了,可以换中科大源。国内安环境遇到问题,比如查找不到包的问题,很多都是网络的问题)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

这时候再重新运行命令:

conda search cudatoolkit
conda search cudnn

这时候就能显示一系列能安装的conda 包了(conda搜索不到包,还是源的问题。)
linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
这时候运行命令就可以了:

conda install cudatoolkit==xx.xx
conda install cudnn==xx.xx

使用conda进行本地安装

有时候直接去搜索conda-forge,去安装的时候,因为服务器没法访问外网,如果不是用源里面的文件,可能下载速度会很慢。我们可以使用这条命令:

conda search cudatoolkit --info

linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
访问搜索出来的包的url,然后自己下载好,上传到服务器上,之后使用命令安装。
比如我们下载的两个包是cudatoolkit-11.3.1-h2bc3f7f_2.conda和cudnn-8.2.1-cuda11.3_0.conda,我们可以运行这两个命令进行安装。(下载的如果是压缩包,记得解压)

conda install ./cudatoolkit-11.3.1-h2bc3f7f_2.conda
conda install ./cudnn-8.2.1-cuda11.3_0.conda

检查conda安装的cuda和cudnn

conda list | grep cudatoolkit
conda list | grep cudnn

本地直接安装cuda和cudnn

方法一:直接更换镜像

实际上我们没必要把每一步都按照自己的想法去强迫其实现,这样会很浪费我们的时间,有时候同一张卡,我们直接升降配置换个镜像,就可以配好了。这能极大的提升我们做科研的速度。(不过我还是想把整体配环境的流程配一遍)

方法二:在nvidia官网下载cuda和cudnn之后进行安装

比如我们想安装cuda11.1.1和配套的cudnn7.6.5,我们首先要在nvidia官网的cuda-toolkit页面下载cuda11.0。
linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
我们点进该页面,之后选择相关的文件,然后下载就可以了。
linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
之后按照这个页面下面的链接运行即可成功安装上。
linux root下cuda装好了 conda环境下没有,linux,conda,pytorch
之后是配置cuda的环境变量的部分。具体安装过程如图所示:安装CUDA并配置环境变量。或参考这个帖子的配置环境变量过程:Linux系统下CUDA和cuDNN环境配置 。

接着我们进入nvidia-cudnn网址进一步下载cudnn
(这一步需要登陆)

安装cudnn之后,要执行一些列复制头文件的命令,参考此网址即可。对命令具体不懂的,可以询问ChatGPT 。

conda安装的cuda没有nvcc

我之前的autodl设置的环境一直是cuda10.1,然后conda里安装的cudatoolkit也是10.1的版本,所以一直没发现这个问题,。

当换了另一个服务器后,另一个服务器没有安装cuda10.1,conda安装了10.1版本的cudatoolkit之后无法使用nvcc命令,同时apex也无法正常安装(一直调用的外部的不匹配的cuda)
命令行运行命令

nvcc -V

nvcc --version

发现提示没有nvcc。

这是因为conda安装的cuda是不完全的版本。如果想使用conda安装具有nvcc的cuda,有两个办法:

方法一:

安装具有nvcc功能的cuda包。 参考以下三个网址:在Conda/无网络服务器/非root情况下安装Apex,安装cudatoolkit时Nvcc丢失?,Nvcc missing when installing cudatoolkit?.

conda search cudatoolkit    
conda install -c conda-forge cudatoolkit-dev=10.1

上面第一句,如果网络不好的话可能搜索不到,直接安装cudatoolkit-dev就行了。网络好的服务器可以直接安装(不过暂时没有去试过只安装dev,不安装cuda能不能使用apex,至少conda下有nvcc功能了)

方法二:

安装nvidia官网提供的cuda包。(nvidia conda channel is now available: nvidia/cuda and nvcc is in it.)
里面的示例安装命令是:

conda install cuda -c nvidia/label/cuda-11.3.0

但是似乎这个cuda包没有我们需要的系统版本(cuda10.1),里面有的版本都包含在这个网址里了:
nvidia / packages / cuda 12.3.0

二:服务器安装pytorch

换源或换命令安装pytorch

pytorch官网

比如官网的conda安装命令是:

conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 -c pytorch

实际上这个版本还有对应的pip安装命令:

pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html

在安装pytorch的过程中,我们还可以换源
换源安装pytorch

本地安装pytorch

pytorch离线下载网址
比如如果pytorch官网告诉我们的安装命令是:

conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 -c pytorch

我们可以去上面的离线包下载网址,把对应python版本和cuda版本的pytorch,torchvision还有torchaudio都下载上:

torchvision-0.9.0+cu111-cp38-cp38-linux_x86_64.whl
torchaudio-0.8.0-cp38-cp38-linux_x86_64.whl
torch-1.8.0+cu111-cp38-cp38-linux_x86_64.whl

之后我们把下载的包上传到服务器以后,在本地路径上直接pip安装就可以了。

pip install torch-1.8.0+cu111-cp38-cp38-linux_x86_64.whl
pip install torchvision-0.9.0+cu111-cp38-cp38-linux_x86_64.whl
pip install torchaudio-0.8.0-cp38-cp38-linux_x86_64.whl
报错: xxx.whl is not a supported wheel on this platform

不过本地安装pytorch的whl文件的一个问题就是,我们可能需要改一下文件的名字(因为新版的pip必须把文件名按规定的语法来修改才能安装上)
具体可以参考这三个网址:ERROR: torch-1.12.0+cu116-cp38-cp38-win_amd64.whl is not a supported wheel on this platform.,xxx.whl is not a supported wheel on this platform-查看pip支持的安装包版本,用whl安装pytorch踩坑实录(whl is not a supported wheel on this platform.)​​
我改了文件名后,成功安装上了。

我改的文件名:
torch-1.8.0+cu111-py38-none-linux_x86_64.whl
然后就成功安装上了
pip install torchvision-0.9.0+cu111-py38-none-linux_x86_64.whl
最后:
pip install torchaudio-0.8.0-py38-none-linux_x86_64.whl

检查pytorch是否成功安装:

import torch
print(torch.__version__)
print(torch.cuda.is_available())
# 打印当前可见可用的GPU数目
print(torch.cuda.device_count())
# 获取GPU名字
print(torch.cuda.get_device_name())
# 获取torch运行的cuda版本
torch.version.cuda

三:服务器运行git命令(git reset/ git clone)

这个同样是源或网络的问题,autodl有一个学术加速。

四:服务器conda安装gcc和g++

这里一看几条参考命令就都懂了。
比如我们之前conda安装了gcc和g++,但是软链接的是高版本的gcc和g++,现在无法使用,那么就可以这样:
先删除之前版本的gcc和gxx

conda remove gcc_linux-64
conda remove  gxx_linux-64

再安装对应版本的gcc和gxx

conda search gcc
conda search gxx
conda install gcc_linux-64=7.3.0
conda install gxx_linux-64=7.3.0

如果之前已经加上了软连接,那先删除之前的软连接 (通过这条命令,再通过下面的建立软链接的命令可以看出,软链接就是创建了一个文件,访问这个文件时可以链接访问到我们真的希望他访问的文件。比如这里创建的文件是在环境的bin下创建了gcc和g++两个文件,结合下面添加新的软链接可以理解清楚,访问bin/gcc时,实际访问的是bin/x86_64-conda_cos6-linux-gnu-gcc,也就是我们conda实际安装的gcc文件)

rm /home/fengsiyuan/anaconda3/envs/scene_graph_benchmark/bin/gcc
rm /home/fengsiyuan/anaconda3/envs/scene_graph_benchmark/bin/g++

添加新的软链接

ln -s /home/fengsiyuan/anaconda3/envs/scene_graph_benchmark/bin/x86_64-conda_cos6-linux-gnu-gcc /home/fengsiyuan/anaconda3/envs/scene_graph_benchmark/bin/gcc

ln -s /home/fengsiyuan/anaconda3/envs/scene_graph_benchmark/bin/x86_64-conda_cos6-linux-gnu-g++ /home/fengsiyuan/anaconda3/envs/scene_graph_benchmark/bin/g++

当然,有的系统没有用conda,软链接链接的是usr/local/bin下的gcc和g++,那就是另一回事了

五:服务器conda升级python版本的小技巧

比如我今天在复现cogtree的时候,因为scene graph generation benchmark我一直用的python是3.8,但是cogtree在最后nbdt文件夹安装相应包的时候,报错需要使用python3.9这个包。那我需要重新设置一个conda环境,把所有的安装流程都重复一遍吗?可能不用,我可能只需要这样一条命令:

conda install python=3.9

当然也不绝对,有的环境的其他包都是根据python3.8来安装的,这样升级可能会使其他包出错。不过可以先跑一下试试文章来源地址https://www.toymoban.com/news/detail-763886.html

到了这里,关于【autodl/linux配环境心得:conda/本地配cuda,cudnn,gcc,g++及pytorch心得】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • pytorch环境配置(装cuda、cudnn)win10+cuda10.1+cudnn7.6.5+torch1.7.1 && 集显装pytorch

    为了装这个走了太多坑了,所以想写一篇具体教程,有缘人看吧,希望能解决你的问题。(第一次写文章啥也不懂,万一冒犯了啥,麻烦告知我改) 我anaconda很早就装过了,所以这里就不细说了。 电脑配置:win10+1050显卡(很久前买的电脑的) 一些弯路:现在的pytorch安装是可

    2024年02月04日
    浏览(56)
  • MiniConda、CUDA、CUDnn以及pytorch环境的配置以及坑

    首先需要说明一下,我想安装的是Pytorch GPU版,所以需要安装CUDA toolkit 以及CUDnn,若您无需GPU版本 则无需安装这两个。 Conda其实就是一个包或则称之为库的管理工具,类似于安装python自带的pip管理工具,其实我感觉它并没有pip好用,但是有一点还是挺好用的,就是Conda删除某

    2024年02月06日
    浏览(108)
  • 深度学习环境安装|PyCharm,Anaconda,PyTorch,CUDA,cuDNN等

    本文参考了许多优秀博主的博客,大部分安装步骤可在其他博客中找到,鉴于我本人第一次安装后,时隔半年,我忘记了当时安装的许多细节和版本信息,所以再一次报错时,重装花费了大量时间。因此,我觉得有必要把主要过程记录下来,以便下次需要时快速安装。以下过

    2024年02月17日
    浏览(88)
  • 最新版本的Anaconda环境配置、Cuda、cuDNN以及pytorch环境一键式配置流程

    本教程是最新的深度学习入门环境配置教程,跟着本教程可以帮你解决入门深度学习之前的环境配置问题。同时,本教程拒绝琐碎,大部分以图例形式进行教程。这里我们安装的都是最新版本~ 1.1 下载 首先,进入Aanconda下载地址:https://www.anaconda.com/download/ 如果嫌下载慢的话,

    2024年02月13日
    浏览(68)
  • PyTorch深度学习环境安装(Anaconda、CUDA、cuDNN)及关联PyCharm

    Tytorch : Python 机器学习库,基于 Torch ,用于自然语言处理等应用程序 Anaconda :是默认的 python 包和环境管理工具,安装了 anaconda ,就默认安装了 conda CUDA : CUDA 是一种由显卡厂商 NVIDIA 推出的通用并行计算架构,该架构使 GPU 能解决复杂的计算问题,可用来计算深度学习 c

    2024年02月13日
    浏览(69)
  • Ubuntu搭建Pytorch环境(Anaconda、Cuda、cuDNN、Pytorch、Python、Pycharm、Jupyter)

    1.查看Ubuntu版本号: cat /etc/issue ,后续根据版本号添加对应的镜像源 2.备份镜像源: sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 3.在阿里云镜像源官网中找到并复制与版本号对应的阿里镜像源: 或者在清华镜像源官网中找到并复制与版本号对应的清华镜像源: 4.编辑软件源配

    2024年02月09日
    浏览(281)
  • Anaconda搭建深度学习虚拟环境:cuda+cudnn+pytorch+torchvision(并验证)

    1.以管理员的身份打开Anaconda Prompt窗口: 2.创建新的虚拟环境: 3.激活刚刚创建好的虚拟环境: 1.右击鼠标打开NVIDIA控制面板,查看显卡支持的最高CUDA版本: 2.Anaconda 换清华镜像源,提高下载速度: 3.我电脑的CUDA最高支持12.0,但注意 在环境中安装比电脑CUDA版本低的 ,因为

    2023年04月09日
    浏览(148)
  • 【深度学习环境配置】ubuntu 20.04+4060 Ti+CUDA 11.8+pytorch(装机、显卡驱动、CUDA、cudnn、pytorch)

    【深度学习环境配置】ubuntu 20.04+4060 Ti+CUDA 11.8+pytorch(装机、显卡驱动、CUDA、cudnn、pytorch) 📆 安装时间 2023.11.08-2023.11.10 Windows 和 Ubuntu 双系统的安装和卸载 B站教程 【本文基本上跟这个详细教程一致,优先推荐看这个!】ubuntu20.04 下深度学习环境配置 史上最详细教程 【精

    2024年02月04日
    浏览(65)
  • Jetson NX系统烧录以及CUDA、cudnn、pytorch等环境的安装

    这两步比较简单,所以略了。虚拟机的配置需要注意硬盘空间大一点,至少40G。 NVIDIA SDK Manager下载地址:https://developer.nvidia.com/drive/sdk-manager 直接执行会报缺少依赖的问题,然后执行命令: 安装依赖。等待依赖安装完成。 依赖安装完成后再次执行安装sdk的命令。 到这里sdk

    2024年02月03日
    浏览(50)
  • Windows 系统从零配置 Python 环境,安装CUDA、CUDNN、PyTorch 详细教程

    进入anaconda官网:https://www.anaconda.com/ 点击 download 下载文件,我这里是 Anaconda3-2022.10-Windows-x86_64.exe (后续更新版本exe文件会有差别) 下载后打开 .exe 文件下载 anaconda: 选择安装路径(用默认的路径也可以): 这里两个都选: 然后安装就可以了。 打开 cmd,输入 conda(如果是

    2024年02月03日
    浏览(102)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包