一、由于实验室大家使用的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. zabbix agent配置文件记录

    一.无论主动还是被动模式都要配置server和linstenPort 二.若要设置主动模式那么要添加ServerActive,若不添加则默认为被动模式

  2. PHP-FPM 与 Nginx 的通信机制总结

    PHP-FPM 介绍   CGI 协议与 FastCGI 协议 每种动态语言( PHP,Python 等)的代码文件需要通过对应的解析器才能被服务器识别,而 CGI 协议就是用来使解释器与服务器可以互 ...

  3. JavaScript 对象Array,Map,Set使用

    for(int i = 0 :i < 3 ;i++ ){ //[重点说三遍] 在说明每个对象的用法之前,首先说明 JavaScript 对象的使用一定要注意浏览器的兼容性问题!尤其是IE的版本! ...

  4. 浅谈2-SAT(待续)

    2-SAT问题,其实是一个逻辑互斥问题.做了两道裸题之后仔细想来,和小时候做过的“有两个女生,如果A是女生,那么B一定不是女生.A和C性别相同,求A.B.C三人的性别.”几乎是一样的. 对于这道题我们 ...

  5. css 控制文字超出时显示省略号

    不多说,直接看代码吧: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...

  6. Android中加载事件的方式

    Android中加载事件的方式 通过内部类的方式实现 通过外部类的方式实现 通过属性的方式实现 通过自身实现接口的方式实现 通过内部类的方式实现 Demo btn_Login.setOnClickLi ...

  7. iOS 11开发教程(十三)iOS11应用编辑界面添加视图

    iOS 11开发教程(十三)iOS11应用编辑界面添加视图 在iOS中添加视图的方式有两种:一种是使用编辑界面添加视图:另一种是使用代码添加视图.以下是这两个方式的详细介绍. 1.编辑界面添加视图 使 ...

  8. 22.python中的面向对象和类的基本语法

    当我发现要写python的面向对象的时候,我是踌躇满面,坐立不安呀.我一直在想:这个坑应该怎么爬?因为python中关于面向对象的内容很多,如果要讲透,最好是用面向对象的思想重新学一遍前面的内容.这个 ...

  9. java 使用grpc步骤

    1.配置grpc maven依赖 <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-ne ...

  10. bzoj5293: [Bjoi2018]求和

    题目链接 bzoj5293: [Bjoi2018]求和 题解 暴力 对于lca为1的好坑啊.... 代码 #include<cmath> #include<cstdio> #i ...