一、由于实验室大家使用的CUDA、CUdnn不同,所以需要在同一台服务器安装多个版本,而且要不引起冲突,方法如下:

1、一般来说CUDA安装在 /usr/local 目录下(当然你可以通过“echo $PATH”命令查询你的CUDA安装目录,一般来说CUDA的文件路径都会被写入到系统环境),如下图

其中cuda-8.0是我安装的版本(cuda是cuda-8.0的软链接,建立软链接的命令是:“ln -s cuda-8.0 cuda”),cuda-8.0-5.1是别人安装的版本。其中CUdnn在安装的时候一般都会被拷贝到相应的CUDA下面,如图所示,别的版本是CUDA8.0 CUdnn5.1,我的是CUDA8.0 CUdnn6.0(我忘了将CUdnn版本标在后面)

2、接下来,由于每个人的Linux账户不一样,你首先将你的CUDA、CUdnn安装到如上系统目录下(注意:CUdnn安装的时候一般会被拷贝到CUDA目录下),然后在你账户下:

# 先用vim打开.bashrc文件
vim ~/.bashrc
# 再将下面三句话粘贴进去(注意:假如你的安装目录不是cuda-8.0-5.1,则换成你的CUDA目录名称)
export PATH="$PATH:/usr/local/cuda-8.0-5.1/bin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda-8.0-5.1/lib64/"
export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/cuda-8.0-5.1/lib64"

  

如此一来,不同Linux账户可以使用不同的CUDA、CUdnn版本。其中cuda-8.0是各个账户默认使用的版本,如果你想要使用你自己的版本,则需要按照上述办法,先下载安装,再修改你的账户下的.bashrc文件中的PATH。


二、注意,有多个朋友咨询关于安装一个CUDA,多个cuDNN,如何不冲突的问题?

  1. 首先CUDA按照网上的安装步骤一般都会被安装到/usr/local目录下
  2. 其次解压你的cuDNN,会生成一个目录叫cuda(注意cuDNN解压后的目录是cuda,而不是cuDNN),然后原理就是你需要把cuda文件下的头文件cudnn.h和动态库文件libcudnn*分别复制到/usr/local目录下的CUDA文件夹中include目录和lib64目录(注意CUDA是CUDA下载后生成在/usr/local的文件夹,cuda是cuDNN解压后的文件夹名称),具体步骤如下面代码:
注意:本服务器中的/usr/local下的CUDA文件夹我建立软连接仍叫cuda
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ -d

  

所以按照以上原理,你只需要在/usr/local目录下,复制本机已有的CUDA文件夹,换一个你设定的名称,然后复制头文件和动态库文件,然后按照本篇教程开头的部分(即第一部分)设置你的账户下的.bashrc文件就可以

服务器配置多版本CUDA、CUdnn(不同Linux账户使用不同CUDA、CUdnn版本)的更多相关文章

  1. Linux 和 Windows 查看 CUDA 和 cuDNN 版本

    目录 Linux 查看 CUDA 版本 查看 cuDNN 版本 Windows 查看 CUDA 版本 查看 cuDNN 版本 References Linux 查看 CUDA 版本 方法一: nvcc ...

  2. 解析 Linux 内核可装载模块的版本检查机制

    转自:http://www.ibm.com/developerworks/cn/linux/l-cn-kernelmodules/ 为保持 Linux 内核的稳定与可持续发展,内核在发展过程中引进了可 ...

  3. 查看apache、linux、kernel、nginx等版本

    查看apache版本 /usr/sbin/apachectl -v httpd -v 安装目录,使用apachectl -v   查看mysql版本 mysql –help | grep Distri ...

  4. Linux(Fedora)下NodeJs升级最新版本(制定版本)

    Linux(Fedora)下NodeJs升级最新版本(制定版本) 首先安装n模块: npm install -g n 升级node.js到最新稳定版 n stable 升级node.js到制定版本 n ...

  5. Linux系统入门教程:如何在 Linux 中修改默认的 Java 版本

    提问:当我尝试在Linux中运行一个Java程序时,我遇到了一个错误.看上去像程序编译所使用的Java版本与我本地的不同.我该如何在Linux上切换默认的Java版本? 当Java程序编译时,编译环境 ...

  6. Linux下查看网卡驱动和版本信息

    Linux下查看网卡驱动和版本信息 查看网卡生产厂商和信号 查看基本信息:lspci 查看详细信息:lspci -vvv # 3个小写的v 查看网卡信息:lspci | grep Ethernet 查 ...

  7. Linux下切换使用两个版本的JDK

    Linux下切换使用两个版本的JDK 我这里原来已经配置好过一个1.7版本的jdk. 输出命令: java -version [root@hu-hadoop1 sbin]# java -version ...

  8. linux centos系统下升级python版本

    本文参考资料:https://www.cnblogs.com/leon-zyl/p/8422699.html,https://blog.csdn.net/tpc1990519/article/deta ...

  9. Linux虚拟机安装配置手册(版本:7.3)

    一.准备 ①.安装VMWare 安装步骤省略.我这里使用的版本如下: ②.Linux系统镜像文件: 建议使用最新版本的Linux系统.有些组件对系统内核版本要求比较高,有可能会产生错误. 我这里使用的 ...

随机推荐

  1. 【LOJ】#2118. 「HEOI2015」兔子与樱花

    题解 怎么觉得都像树dp,不像贪心 但是树dp确实做不了 把每个节点的值设置为樱花+儿子数 把儿子合并到父亲上就是父亲的剩余容量加上儿子的值-1 每次在父亲的时候将儿子的值排序然后能加就加上 因为儿子 ...

  2. linux密码暴力破解机

    linux 密码保存在 /etc/shadow shadow 文件的保存格式 python:$$mWSyC6Pv$hpMreQT77R9ML/Xx1QnRAow1tUTDjIowaTssV7bZw9S ...

  3. 关于set

    set 这是一个十分神奇的东西 他的基本原理是平衡树 而且这个set的运用其实方便了一些在计算时间上的优化(STL大法好) 其实是因为我不会写平衡树 这个set的基本用法如下: iterator 指针 ...

  4. Python基础笔记(三)

    1. 循环与流程控制 (1) for myList1 = ["A", "B", "C", "D"] # 正序遍历 for ...

  5. BZOJ.4407.于神之怒加强版(莫比乌斯反演)

    题目链接 Description 求\[\sum_{i=1}^n\sum_{j=1}^m\gcd(i,j)^K\ \mod\ 10^9+7\] Solution 前面部分依旧套路. \[\begin{ ...

  6. [CC-XXOR]Chef and Easy Problem

    [CC-XXOR]Chef and Easy Problem 题目大意: 给你一个长度为\(n(n\le10^5)\)的序列\(A(A_i<2^{31})\).\(m(m\le10^5)\)次询 ...

  7. iOS 七牛多张图片上传

    -(void)uploadImages:(NSArray *)images atIndex:(NSInteger)index token:(NSString *)token uploadManager ...

  8. java读取记事本文件第一个字符遇到的一个坑

    记事本数据是这样的: Faq_faqTitle=常见问题_标题Faq_faqKeyword=关键字Faq_faqDescription=FAQ描述...... 文件编码:utf-8有签名 然后用jav ...

  9. 在Ubuntu的系统中怎样将应用程序加入到開始菜单中

    /*********************************************************************  * Author  : Samson  * Date   ...

  10. C# 地磅串口编程

    C# 地磅串口编程 http://www.cnblogs.com/cancer_xu/archive/2012/09/14/WeighBridge-Com.html http://www.cnblog ...