精华内容
下载资源
问答
  • caffe 多个cudnn

    千次阅读 2016-08-27 10:34:00
    caffe有各种版本,对于cudnn的支持不一样,切来切去特别麻烦,干脆装多个cudnn,按需采用.实际上还是很简单的. 首先,不要装在系统目录下面(建议如此),新建一个自己的文件夹,离不cudnn_v4,里面有include和lib64文件夹,...

    caffe有各种版本,对于cudnn的支持不一样,切来切去特别麻烦,干脆装多个cudnn,按需采用.实际上还是很简单的.

    首先,不要装在系统目录下面(建议如此),新建一个自己的文件夹,离不cudnn_v4,里面有include和lib64文件夹,只要在caffe的Makefile.config的INCLUDE_DIRS和LIBRARY_DIRS 添加路径即可.

    这时候可以成功编译,但是运行会找不到cudnn.so,只要将lib64的路径添加到系统的查找路径就好了.方法很多,用export 命令就行了:

    对linux不是很熟,之前只是听说过可以设置程序共享库位置也就是 使用 “export LD_LIBRARY_PATH”

    今天用了用,感觉还挺不错,也很常用。

    比如你编译了一个so 而这个so 同时又依赖其他第三方库。如果你想把你编译的so 提供给别人用的话,你不光提供你的so 同时也要提供你的so所依赖的其他第三方库。

    比如在别人上电脑上要使用你的so 的话 ,该so存放在其电脑 /home/other/test 目录下:

    其中lib就是你的libxxxx.so 所依赖的第三方库。如果对方机器上没有对应共享库的话,此时就需要 使用 “export LD_LIBRARY_PATH” 进行设置。

    例:

    命令行:# export LD_LIBRARY_PATH=./lib:$LD_LIBRARY_PATH

    或者     # export LD_LIBRARY_PATH=/home/other/test/lib:$LD_LIBRARY_PATH    

    配置之后最好运行一下:# ldconfig

    ------------------------------------------------------------------------------------------------

    以上做法,只是临时设置变量 LD_LIBRARY_PATH ,下次开机,一切设置将不复存在;如何把这个值持续写到 LD_LIBRARY_PATH 里呢?

    我们可以在 ~/.bashrc 或者 ~/.bash_profile 中加入 export 语句,前者在每次登陆和每次打开 shell 都读取一次,后者只在登陆时读取一次。

    我的习惯是加到 ~/.bashrc 中,在该文件的未尾,可采用如下语句来使设置生效:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    

    修改完后,记得关掉当前终端并重新打开一个新的终端,从而使上面的配置生效。

    -----------------------------------------------------------------------------

    不过这个环境变量是基于shell的,也就是说只有在当前设置了的shell里才会有作用,因此每次打开新的shell运行程序不停地设置LD_LIBRARY_PATH,

    是一件非常麻烦的事情,所以我们就会想有不有什么一劳永逸地方法,使得设置之后就不用再去设置了?答案是肯定的,

    即在~/目录下打开.bash_profile文件,设置环境变量如下:

    LD_LIBRARY_PATH=dir:$LD_LIBRARY_PATH
    export LD_LIBRARY_PATH

    LD_LIBRARY_PATH  这个环境变量是大家最为熟悉的,它告诉loader:在哪些目录中可以找到共享库。可以设置多个搜索目录,这些目录之间用冒号分隔开。

    在linux下,还 提供了另外一种方式来完成同样的功能,你可以把这些目录加到/etc/ld.so.conf中,然后调用ldconfig。

    当然,这是系统范围内全局有效 的,而环境变量只对当前shell有效。按照惯例,除非你用上述方式指明,

    loader是不会在当前目录下去找共享库的,正如shell不会在当前目前找 可执行文件一样。



    展开全文
  • Ubuntucuda+cudnn环境

    2019-07-27 11:11:49
    同一台机子可以兼容多个版本的CUDA的,这两天就要这么来回折腾,稍显麻烦。 1. 查看当前机子上CUDA版本; nvcc --version 由此可以看到当前是CUDA 8.0。 2. 修改.bashrc文件。 export PATH=$PATH:/usr/local/...

    同一台机子可以兼容多个版本的CUDA的,这两天就要这么来回折腾,稍显麻烦。

    1. 查看当前机子上CUDA版本;

    nvcc --version

    由此可以看到当前是CUDA 8.0。

    2. 修改.bashrc文件。

    export PATH=$PATH:/usr/local/cuda-8.0/bin
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
    export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda-8.0/lib64

    把以上这种添加变量的方式改为如下:

    export PATH=$PATH:/usr/local/cuda/bin
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
    export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64

    修改之后,需要刷新一下:

    source .bashrc


    那么下面切换为CUDA 9.0版本。

    2. 从官网下载CUDA 9.0的run文件,安装过程中,选择不建立软连接。

    3.  切换CUDA 9.0,使用下面命令。

    sudo rm -rf /usr/local/cuda
    sudo ln -s /usr/local/cuda-9.0 /usr/local/cuda
     

    Cudnn照旧安装

    安装cuDNN


    把头文件和库文件拷贝到cuda的安装目录中,首先确保cuda的安装目录是/usr/local/cuda/,之前安装cuda时,已经默认安装目录为/usr/local/cuda/了

    sudo tar -xzvf cudnn-8.0-linux-x64-v5.1.tgz
    sudo cp cuda/include/cudnn.h /usr/local/cuda/include
    sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
    ————————————————
    版权声明:本文为CSDN博主「songer93」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/songer93/article/details/95760018

     

    网址

    https://developer.nvidia.com/rdp/cudnn-archive

    下载  

    cuDNN v5.1 Library for Linux

    cuda版本

    cat /usr/local/cuda/version.txt

    cudnn版本

    cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

     

     

     

    这时就可以看到当前的CUDA版本变为9.0了。
    ---------------------
    作者:mumoDM
    来源:CSDN
    原文:https://blog.csdn.net/mumoDM/article/details/79462604
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 普通用户不使用sudo安装多个版本CUDA和cuDNN确定安装的软件版本下载CUDA Toolkit下载cuDNN安装CUDA配置cuDNN配置用户环境变量安装多个版本的CUDA参考文献 注:本文中服务器目录结构解释如下: 用户名为zb, 目录 /...


    注:本文中服务器目录结构解释如下:
    用户名为zb,
    目录 /home/zb/cuda/用于存放不同的cuda版本,每安装一个版本的CUDA就在该目录下新建一个文件夹,如cuda-8.0,并安装在相应的目录下,
    安装包下载到 /home/zb/cuda/ 目录下,安装完成后就删除安装包,
    目录 /home/zb/cuda/tem/ 目录用于cuDNN的解压,安装完成后就删除该目录。

    本文已测试通过的有 :cuda 8.0 、cuda 9.0 、 cuda 9.2 、 cuda 10.1

    确定安装的软件版本

    安装前需先确定显卡驱动、CUDA、cuDNN等之间的对应关系。由于我的帐户没有管理员权限,不能安装显卡驱动,只能根据现有驱动的版本来选择CUDA版本,输入指令cat /proc/driver/nvidia/version 查看当前服务器版本号:
    在这里插入图片描述

    不同版本cuda对应的NVIDIA驱动版本1:

    在这里插入图片描述

    我的Linux服务器显卡驱动版本是384.130,大致能安装CUDA 7.0~CUDA 9.0,这里以CUDA 8.0为例进行安装。

    cuda8.0与Linux系统以及GCC的对应关系1:
    在这里插入图片描述

    附:tensorflow与CUDA等之间的对应关系:
    在这里插入图片描述

    下载CUDA Toolkit

    cuda的下载地址: https://developer.nvidia.com/cuda-toolkit-archive
    在这里插入图片描述
    这里我选择的是CUDA 8.0,其他参数选择如下图所示:
    在这里插入图片描述
    注意Installer Type这里选择runfile (local)。
    然后在Download按钮上右键选择复制下载链接:
    在这里插入图片描述
    使用指令wget -c wget -c XXX 将安装包下载到服务器上,XXX用刚才复制的链接替换:
    在这里插入图片描述

    下载cuDNN

    cuDNN的下载: https://developer.nvidia.com/rdp/cudnn-archive
    随便选择一个与CUDA 8.0对应的版本,这里以cuDNN v7.1.3为例:

    在这里插入图片描述
    选择以.tgz为后缀的Linux包,这里选择第一个:
    在这里插入图片描述
    同样,将包下载到服务器备用。
    注:由于下载cuDNN需要登录帐户,直接在终端用指令下载可能会失败,可以先在windows上注册个帐户下载好再上传到服务器(使用MobaXterm等软件连接服务器后可以很方便地把windows上的文件通过拖动的方式上传到服务器上)。

    安装CUDA

    在安装包所在目录下输入指令sh XXX进行安装,XXX为CUDA安装包文件名,如:sh cuda_8.0.61_375.26_linux-run2

    sh cuda_8.0.61_375.26_linux.run #开始安装
    #..一堆协议说明...
    #直接按q退出协议说明.
    zerozone@zerozone: accept/decline/quit: accept  #接受协议
    
    Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 375.26? 
    y)es/(n)o/(q)uit: n  #是否显卡驱动包,由于已经安装显卡驱动,选择n
    
    Install the CUDA 8.0 Toolkit?
    (y)es/(n)o/(q)uit: y #是否安装工具包,选择y
    
    Enter Toolkit Location
    [ default is /usr/local/cuda-8.0 ]: #工具包安装地址,
    这里我输入自己的安装地址:/home/zb/cuda/cuda-8.0/
    
    Do you want to install a symbolic link at /usr/local/cuda?
    (y)es/(n)o/(q)uit: n #添加链接**这里选择n
    
    Install the CUDA 8.0 Samples?
    (y)es/(n)o/(q)uit: y #安装样例,选择y
    
    Enter CUDA Samples Location
     [ default is /root ]:  #样例安装地址,
     这里我输入自己的安装地址:/home/zb/cuda/cuda-8.0/samples/
    
    

    cuda 10.1:
    在这里插入图片描述
    按空格根据需要选择要安装的模块,有“X”的表示安装,没有的表示不安装,我这里已经安装过418.116的显卡驱动了,所以选择不安装驱动:
    在这里插入图片描述
    按上下键移动到CUDA Toolkit 10.1上,然后按“A”键,出现:
    在这里插入图片描述
    全部不安装并更改Toolkit Install Path:
    在这里插入图片描述
    再返回主界面然后选择Options->Library install path:
    在这里插入图片描述
    在这里插入图片描述
    然后确定,返回选择Install

    注:若出现 Error: unsupported compiler: X.X.X,一般是gcc版本和CUDA没对应,可尝试指令sh cuda_8.0.61_375.26_linux-run --override,如果没解决,则需要安装相对应的gcc。

    配置cuDNN

    使用指令tar -xzvf /home/zb/cuda/cudnn-8.0-linux-x64-v7.1.tgz -C /home/zb/cuda/tem/ 将cuDNN解压到tem文件夹并执行以下指令3

    cp /home/zb/cuda/tem/cuda/include/cudnn.h  /home/zb/cuda/cuda-8.0/include/  
    cp /home/zb/cuda/tem/cuda/lib64/libcudnn*  /home/zb/cuda/cuda-8.0/lib64
    chmod a+r /home/zb/cuda/cuda-8.0/include/cudnn.h  /home/zb/cuda/cuda-8.0/lib64/libcudnn*
    

    配置用户环境变量

    修改个人用户目录下的.bashrc文件(用vi ~/.bashrc编辑),在文件最后面加入以下指令并保存4

    export PATH=/home/zb/cuda/cuda-8.0/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/home/zb/cuda/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    

    tips:vim编辑器使用指南:

    vi XXX  //打开并编辑文件
    按i进入编辑模式
    编辑好文本后按Esc,退出插入状态。
    保存退出:输入冒号,输入WQ(write,quit)或X(x==wq)回车,或者按了ESC后,直接按shift+zz,或者切换到大写模式按ZZ
    文本没改动退出:Esc+冒号+q
    不保存退出:Esc+冒号+q!
    

    最后输入指令source .bashrc 使新配置的环境变量生效

    安装多个版本的CUDA

    如果要安装多个共存的CUDA版本则重复上面的步骤,挑选相对应且系统支持的CUDA、cuDNN进行类似的安装,切换环境时直接在.bashrc文件里更改之前配置环境时加入的路径代码即可。如将CUDA 8.0切换成CUDA 9.0则将.bashrc中的

    export PATH=/home/zb/cuda/cuda-8.0/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/home/zb/cuda/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    

    改为

    export PATH=/home/zb/cuda/cuda-9.0/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/home/zb/cuda/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    

    并执行指令指令source .bashrc 即可,

    输入nvcc -V :查看是否安装成功。
    输入which nvcc :查看nvcc位置

    参考链接:


    1. https://blog.csdn.net/dudu815110/article/details/87167518 ↩︎ ↩︎

    2. https://blog.csdn.net/yanxiaohui1992/article/details/82730106 ↩︎

    3. https://blog.csdn.net/ksws0292756/article/details/80120561 ↩︎

    4. https://blog.csdn.net/qq_34638161/article/details/80845366 ↩︎

    展开全文
  • 普通用户不使用sudo安装多个版本CUDA和cuDNN确定安装的软件版本下载CUDA Toolkit下载cuDNN安装CUDA配置cuDNN配置用户环境变量安装多个版本的CUDA,然后在不同的CUDA版本之下进行切换。 一、确定安装的软件版...

    前言:

    前面讲解过Windows下面如何安装多个不同版本的CUDA,参考:

    windows下同一个显卡配置多个CUDA工具包以及它们之间的切换

    普通用户不使用sudo安装多个版本CUDA和cuDNN确定安装的软件版本下载CUDA Toolkit下载cuDNN安装CUDA配置cuDNN配置用户环境变量安装多个版本的CUDA,然后在不同的CUDA版本之下进行切换。
     

    一、确定安装的软件版本

    安装前需先确定显卡驱动、CUDA、cuDNN等之间的对应关系。由于我的帐户没有管理员权限,不能安装显卡驱动,只能根据现有驱动的版本来选择CUDA版本,输入指令:

    cat /proc/driver/nvidia/version  

    查看当前服务器上的Nvidia的显卡驱动版本号:

    不同版本cuda对应的NVIDIA驱动版本

    在这里插入图片描述

    我的Linux服务器显卡驱动版本是384.130,大致能安装CUDA 7.0~CUDA 9.0,这里以CUDA 8.0为例进行安装。
    cuda8.0与Linux系统以及GCC的对应关系

    在这里插入图片描述

    1.1 下载CUDA Toolkit
    cuda的下载地址: https://developer.nvidia.com/cuda-toolkit-archive

    这里我选择的是CUDA 8.0,其他参数选择如下图所示:

    在这里插入图片描述

    注意Installer Type这里选择runfile (local)。

    1.2 下载cuDNN
    cuDNN的下载: https://developer.nvidia.com/rdp/cudnn-archive
    随便选择一个与CUDA 8.0对应的版本,这里以cuDNN v7.1.3为例:

    在这里插入图片描述

    选择以.tgz为后缀的Linux包,这里选择第一个:

    在这里插入图片描述


    二、安装CUDA

    在安装包所在目录下输入指令sh XXX进行安装,

    2.1 安装CUDA

    #先执行下面的命令安装相关依赖,
    #否则会出现`Missing recommended library`错误
    sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev 
    
    
    sudo sh cuda_8.0.61_375.26_linux.run #开始安装
    
    #..一堆协议说明...
    #直接按q退出协议说明.
    zerozone@zerozone: accept/decline/quit: accept  #接受协议
    
    Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 375.26? 
    y)es/(n)o/(q)uit: n  #是否显卡驱动包,由于已经安装显卡驱动,选择n
    
    Install the CUDA 8.0 Toolkit?
    (y)es/(n)o/(q)uit: y #是否安装工具包,选择y
    
    Enter Toolkit Location
    [ default is /usr/local/cuda-8.0 ]: #工具包安装地址,默认回车即可
    
    Do you want to install a symbolic link at /usr/local/cuda?
    (y)es/(n)o/(q)uit: y #添加链接**注意这个连接,如果你之前安装过另一个版本的cuda,除非你确定想要用这个新版本的cuda,否则这里就建议选no,因为指定该链接后会将cuda指向这个新的版本**
    
    Install the CUDA 8.0 Samples?
    (y)es/(n)o/(q)uit: y #安装样例
    
    Enter CUDA Samples Location
     [ default is /root ]:  #样例安装地址默认即可
    
    # ***安装信息***
    Installing the CUDA Toolkit in /usr/local/cuda-8.0 ...
    
    Missing recommended library: libXi.so
    Missing recommended library: libXmu.so
    #注意,这里出现了Missing recommended library错误,
    #是因为博主在第一次安装时,没有添加最开始的那条安装相关依赖的指令,
    #之后我添加了依赖后,再次安装,就没有Missing错误了
    
    Installing the CUDA Samples in /root ...
    Copying samples to /root/NVIDIA_CUDA-8.0_Samples now...
    Finished copying samples.
    
    ===========
    = Summary =
    ===========
    Driver:   Not Selected
    Toolkit:  Installed in /usr/local/cuda-8.0
    Samples:  Installed in /root, but missing recommended libraries
    
    Please make sure that
     -   PATH includes /usr/local/cuda-8.0/bin
     -   LD_LIBRARY_PATH includes /usr/local/cuda-8.0/lib64, or, add /usr/local/cuda-8.0/lib64 to /etc/ld.so.conf and run ldconfig as root
    
    To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-8.0/bin
    
    Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-8.0/doc/pdf for detailed information on setting up CUDA.
    
    ***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 361.00 is required for CUDA 8.0 functionality to work.
    
    To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
    
        sudo <CudaInstaller>.run -silent -driver
    
    Logfile is /tmp/cuda_install_6388.log   
    # ***安装完成***
    

    注意点:在安装CUDA的过程中,最重要的是涉及到“软连接”是否需要配置,有位后面多个CUDA版本的切换正是通过这个软连接来选择的。

    2.2 配置cuDNN——实际上就是文件拷贝

    使用指令tar -xzvf /home/zb/cuda/cudnn-8.0-linux-x64-v7.1.tgz -C /home/zb/cuda/tem/ 将cuDNN解压到tem文件夹并执行以下指令:

    cp /home/zb/cuda/tem/cuda/include/cudnn.h  /home/zb/cuda/cuda-8.0/include/  
    cp /home/zb/cuda/tem/cuda/lib64/libcudnn*  /home/zb/cuda/cuda-8.0/lib64
    chmod a+r /home/zb/cuda/cuda-8.0/include/cudnn.h  /home/zb/cuda/cuda-8.0/lib64/libcudnn*


    2.3 配置用户环境变量

    Tensorflow官方安装历程要求注意的是:配置PATH和LD_LIBRARY_PATH和CUDA_HOME环境变量.
    
    vim ~/.bashrc #修改配置文件(如果你用的是zsh,则需要修改 ~/.zshrc文件)
    
    #在文件结尾处添加
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
    export PATH=$PATH:/usr/local/cuda/bin
    export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
    


    三、安装多个版本的CUDA以及CUDA切换

    如果要安装多个共存的CUDA版本则重复上面的步骤,挑选相对应且系统支持的CUDA、cuDNN进行类似的安装,但是安装了多个不同版本的CUDA之后,如何进行切换呢?有两种方式:

    (1)每次都直接修改.bashrc

    安装好两个版本的cuda之后,我们需要修改.bashrc文件,和官方说明的一样,我们在.bashrc文件中添加配置路径,一般来说如果我们按照cuda-9.1需要这样写:

    export PATH=/usr/local/cuda-9.1/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    

    如果我们同时安装了cuda-9.1cuda-9.2,cuda-10.1的时候,可能想到是这样写:

    export PATH=/usr/local/cuda-9.1/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    
    export PATH=/usr/local/cuda-9.2/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-9.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}这样写
    
    export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}这样写

    这样写当然没什么问题,我需要使用哪个版本的CUDA,我就将PARH,LD_LIBRARY_PATH,CUDA_HOME这三个环境变量指向他,我们需要优先使用哪一个cuda版本,我们就将对应的哪个版本的这两句话放在最前面,实际上就是保证在环境变量PATH和LD_LIBRARY_PATH中哪一个版本在前面,哪一个在后面,在最前面的就是优先使用的CUDA,但是这样比较麻烦,每次要调整上面这两句话的顺序来交换。

    (2)直接通过软连接来实现

    我们可以通过一个文件夹的软连接来实现,将这个软连接指向cuda的安装位置,每次使用的时候改变软连接的指向就可以了。

    比如我们首先建立一个cuda-9.0的软链接如下:

    ln -sf /usr/local/cuda-9.1 /usr/local/cuda
    # -s 表示符号链接symbolic
    # -f 表示如果这个软连接文件cuda不存在,则创建一个

    创建软连接之后,我们发现 /usr/local/  下面多了一个cuda文件,它类似于一个快捷方式,直接双击,发现进入了 /usr/local/ cuda-9.0文件夹,说明成功了。

    注意:这个软连接文件的位置当然不固定,名称也不固定,很多人说tensorflow是默认通过/usr/local/cuda来寻找cuda的,这是一种错误的说法,所以软连接可以使任意的位置。如我的是在:

    ln -sf /home/cuda-9.1 /home/cuda

    因为我没有root权限,所以我的cuda是安装在用户目录之下,软连接也安装在用户目录之下。

    现在我们就不需要在用户环境变量中添加几个,只需要添加一次,而且不用再反反复复更改顺序了即可。

    所以我们通过建立一个/usr/local/cuda 到任何一个版本的 /usr/local/cuda-version 的软连接就可以了啊。如下所示

    export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    

    这样我们在切换软连接的时候,系统就可以自动根据我们的软连接查找相应的路径了。所以我们每次需要使用不同的CUDA版本的时候,只需要更改/usr/local/cuda/这个软连接就可以了。

    如下:

    ln -s /usr/local/cuda-9.2 /uer/local/cuda    # 为9.2创建软连接
    
    ln -s /usr/local/cuda-9.0 /uer/local/cuda    # 为9.0创建软连接
    
    ln -s /usr/local/cuda-10.0 /uer/local/cuda    # 为10.0创建软连接
    
    ln -s /usr/local/cuda-10.1 /uer/local/cuda    # 为10.1创建软连接

    所以每次只需要更改这个软连接就可以让我们的PARH,LD_LIBRARY_PATH,CUDA_HOME这三个关键的环境变量指向不同的目录

    另外每次给同一个软连接制定不同的源文件夹,可能会出现问题,所以最好的方式每次更改之前,删除原来的软连接,然后在创建一个新的软连接,如下:

    rm /uer/local/cuda    # 删除原来的软连接
    ln -sf /usr/local/cuda-10.1 /uer/local/cuda    # 为10.1创建新的软连接

    补充:另外我们一般说通过命令 nvcc -V 就可以查看我们所使用的CUDA的版本信息,这个命令实际上就来自于相对应的cuda版本的bin目录之下,所以,PATH中,哪一个版本的cuda在前面就是哪一个。

    (3)对于有管理员权限的用户

    可以使用 ld.so.conf 以及  ld.so.conf.d 配合 软连接来实现多个CUDA版本切换

    • 第一步:创建一个软连接  /usr/local/cuda  指向  /usr/local/cuda-xx.x  (任何一个cuda版本),这是相同的道理;
    • 第二步:在 etc/ld.so.conf.d在中建立一个 cuda.conf 文件,然后在里面添加如下内容:
    • /usr/local/cuda/lib64   # cuda实际上是软连接,可以不断改变切换的
    • 第三步:然后再etc/ld.so.conf使用 include 导入所有的 etc/ld.so.conf.d 中的路径,即
    • include /etc/ld.so.conf.d/*.conf
    • 第四步:再使用ldconfig产生 etc/ld.so.cache 缓存文件
       

    当然上面的操作也是需要每次改变软连接cuda指向不同的cuda版本来切换,还需要有root权限才行,具体参考我的另外一篇文章

    Linux中关于动态(共享)库的设置

     


     

    展开全文
  • Linux多个用户同用一个cuda和cudnn

    千次阅读 2018-05-02 16:46:54
    本人作为超级用户安装完cuda和cudnn,希望其他用户也能正常调用我的程序。只需要打开我的目录下.bashrc文件,将我的cuda的环境变量拷贝到其他用户的.bashrc文件下:export PATH="/home/zhongjia/cuda9.0/bin:$...
  • 我系统是Ubuntu 20.04。 sudo apt-get install pip sudo pip install virtualenv virtualenv .pyenv/python3/myenv ...大致下载安装pip然后再安装一库,习惯性更一下环境变量(不更也没啥事),最后启动环境。 ...
  • 安装人工智能GPU加速训练环境主要分为3部分:NVIDIA显卡驱动、CUDA TooIKit和CUDNN。 基础环境安装 基础环境安装是基于Centos系统的,但是整体大同小异。 安装对应版本内核源码包、gcc编译器 sudo yum install -y ...
  • 前言 ...cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 那我们来看一下我现在的版本:cuda-10.1和cudnn-7.65 切换版本 首先需要我们安装好cuda和cudnn: cuda官网:https://develop
  • Deepin20 Beta安装NVIDIA显卡驱动和CUDA+CUDNN环境1. Deepin20 Beta以及UOS 操作系统简介2. 安装NVIDIA显卡驱动3. 安装CUDA4. 安装CUDNN参考 1. Deepin20 Beta以及UOS 操作系统简介 Deepin20 Beta是一新型的国产...
  • 非root用户在linux下安装多个版本的CUDA和cuDNN(cuda 8、cuda 10.1 等)
  • Linux系统CUDA10.2+CUDNN安装教程

    万次阅读 多人点赞 2020-08-04 08:25:26
    Ubuntu18.04下安装CUDA10.2及对应的CUDNN的教程。
  • Linux下深度学习环境CUDA和cuDNN的配置

    千次阅读 2019-03-01 14:29:52
    处一vectorAdd文件 :~/NVIDIA_CUDA-10.0_Samples/0_Simple/vectorAdd$ ./vectorAdd [Vector addition of 50000 elements] Copy input data from the host memory to the CUDA device CUDA kernel launch ...
  • 原标题:Ubuntu16.04搭建GTX1080+CUDA9.0+cuDNN7.0.4+Tensorflow1.6.0环境更新于2018年3月20日研究需要就买了块GTX1080,然后就重装了个Linux系统,选择的是Ubuntu16.04。我自己在配置TF的环境过程中发现网上的教程...
  • https://blog.csdn.net/hizengbiao/article/details/88625044
  • 1.版本cuda切换:建立不同的软连接 查看版本 $ cd /usr/local /usr/local$ ls bin cuda cuda-9.0 cuda-9.1 stat命令显示cuda的状态信息 $ stat cuda File: cuda -> /usr/local/cuda-9.1 Size: ...
  • Linux之cuda、cudnn安装及版本切换

    万次阅读 多人点赞 2018-07-02 09:32:53
    我们在用不同框架做深度学习时,难免会遇到需要不同版本的cuda和cudnn版本的情况,如果把原来版本的卸载掉重新安装新版本,则会影响其它框架的使用,最好的方法是在主机上安装多个版本的cuda和cudnn,需要用到哪种就...
  • 在做语义分割的任务时,有些代码需要在pytorch1.0及以上的环境运行,不支持本机的cuda8.0以及cudnn6.0,因此需要在此基础上安装cuda9.2和cudnn7.4。注意:如果对cuda直接进行升级,可能会导致之前安装的一些环境不...
  • cudnn Installation in Linux

    千次阅读 2017-12-20 15:52:05
    cudnn Installation in Linux安装教程相对简单,实际原理就是将 cudnn的库加入 cuda 的 include 和 lib 文件夹中0.前提 此方法适用于Linux 系统,常见的 Ubuntu ,Debian 等等 首先你的系统已经成功安装好 CUDA toolkit...
  • 本资源包含了多个版本的cuda和cudnn,包括cuda7,8,9,10,同时还有cudnn,大部分是win10版本的,还有少量linux版本的,由于资源过大因此这是百度云的链接密码,能帮到大家的话,请点星哦。
  • 如何在ubuntu系统上安装多个cudn环境cuda的安装 在跑模型的时候报错说缺乏函数,查了下相关任务发现是版本问题,需要安装更低版本的相应环境。由于cuda与pytorch之前存在对应关系,所以尝试安装不同版本的cuda,使...
  • linux】安装cuda+cudnn

    2020-03-15 15:04:49
    一台机器只能对应一个nvidia driver,而一个nvidia driver可以对应多个cuda。只要在自己的路径下把cuda指定成特定版本就行。 尽量不要使用/usr/local/下面的默认cuda/,防止因为ln对象会发生变化而造成影响。 nvidia...
  • Linux下CUDA+CUDNN+TensorFlow安装笔记

    万次阅读 2017-12-12 20:22:29
    之前用过TensorFlow的CPU版,现在买了新电脑,就想把GPU也用起来,又因为目前大部分工作是在linux下做,所以有了在linux下安装cuda和TensorFlow的计划,快一礼拜一直在搞这件事,重装了N次系统,cuda和...
  • 因为要用到tf2.2,需要用到cuda10.1,所以加...sudo sh cuda_10.1.105_418.39_linux.run accept 取消安装Driver Install A symlink already exists at /usr/local/cuda. Update to this installation? 选择no,否则会创
  • 是越高版本越好,因为向下兼容CUDA。安装支持你显卡的最高版本即可! 搜索驱动并安装: https://www.nvidia.com/Download/index.aspx?lang=en-us 2 CUDA安装 参考看这里:...
  • 一、由于实验室大家使用的CUDA、CUdnn不同,所以需要在同一台服务器安装多个版本,而且要不引起冲突,方法如下: 1、一般来说CUDA安装在 /usr/local 目录下(当然你可以通过“echo $PATH”命令查询你的CUDA安装...
  • chmod +x cuda_10.2.89_440.33.01_linux.run #先将打开目录到安装文件所在目录 运行安装程序 ./cuda_10.2.89_440.33.01_linux.run 等待一会儿出现如下界面 输入 accept 回车 勾选对话框 只安装CUDA To
  • 写在前面:之前因为电脑系统是ubuntu 16.10的缘故,经历了万般波折到最近也算是把环境配好了,但是过程中的痛苦自是不再想提及,由于系统版本的升级导致了一些依赖库版本的升级,而配置torch所需要的版本并不能与之...
  • Linux 和 Windows 查看 CUDA 和 cuDNN 版本

    千次阅读 2019-10-03 00:41:26
    目录 Linux 查看 CUDA 版本 查看 cuDNN 版本 Windows 查看 CUDA 版本 查看 cuDNN 版本 References Linux 查看 CUDA...
  • 之前安装了CUDA8.0,cuDNN5.1,现在同时想用另一版本,所以安装两版本的CUDA、cuDNN来回切换这样就不用来回卸载安装了。 1、下载CUDA9.0 进入到下载的文件所在目录 cd ~/Downloads 安装CUDA sudo sh cuda...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,044
精华内容 2,817
关键字:

linux多个cudnn环境

linux 订阅