CUDA 9.0安装笔记

最近实验室新购买两块K80的GPU。作为好奇的小猪,当然会自报奋勇去配置环境。在这篇博客中将会介绍在centos7下配置CUDA 9.0的步骤。

1. 什么是CUDA?

引用官方介绍

CUDA® is a parallel computing platform and programming model invented by NVIDIA. It enables dramatic increases in computing performance by harnessing the power of the graphics processing unit (GPU).

通过这句话可以了解到,CUDA是一个由NVIDIA公司发明的并行计算平台和编程模型。它利用图形处理单元(GPU)的强大功能,使计算性能大幅提高。

cuda主要具有以下两个方面的作用:

  1. 提供向C这样的标准语言的扩展,从而实现并行算法的简单实现。通过使用CUDA C/C++可以是编程人员专注于算法的并行化而不是程序本身的实现
  2. 支持应用程序同时使用CPU和GPU进行异构计算。应用程序的串行部分运行在CPU上,并行部分则运行在GPU上。

总之,CUDA为我们提供了操作GPU的high level接口,通过调用这接口可以简化程序的编写过程。

2. 安装环境介绍

项目 -
操作系统 CentOS Linux release 7.4.1708 (Core)
内核版本 3.10.0-693.5.2.el7.x86_64
内存 128GB
硬盘 6TB
运算卡 K80

3. 安装CUDA 9.0

安装CUDA 9.0分为两步:1、安装依赖环境 2、安装CUDA 9.0。

3.1. 安装依赖环境

通过lspci | grep -i nvidia查看机器是否已经识别出GPU卡。如果没有显示GPU卡,则需要运行update-pciids更新一下。

通过运行gcc --version检测本机是否已经安装了gcc 4.8.5。如果没有安装gcc 4.8.5则通过yum install gcc gcc-c++进行安装。

安装kernel headers和相关开发包

yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)

好,到现在为止依赖环境已经安装的差不多了。

3.2. 安装CUDA 9.0

CUDA具有两种安装方式:

  1. distribution-specific packages方式,可以和系统的原生库管理系统对接
  2. distribution-independent package方式,适应更多的Linux系统,不过不更新系统的原生库管理系统

本猪猪比较好奇,所以两种方法都进行了测试,所以接下来将会分别介绍两种安装方式。

如果你的机器以前安装过CUDA,则需要将老版本的CUDA卸载掉,下面是卸载方式。因为本猪猪用的是崭新的机器,所以就先跳过这一步啦。

# 1. 通过runfile方式安装的
# 卸载cuda toolkit
sudo /usr/local/cuda-X.Y/bin/uninstall_cuda_X.Y.pl
# 卸载NVIDIA 驱动
sudo /usr/bin/nvidia-uninstall # 2. 通过RPM/Deb方式安装的
sudo yum remove cuda* #Redhat/CentOS
sudo apt-get --purge remove cuda* #Ubuntu
3.2.1. distribution-specific packages方式

1、安装DKMS依赖:

fedoraproject上面下载DMKS安装包,Centos7 对应的安装包路径为http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/d/dkms-2.4.0-1.20170926git959bd74.el7.noarch.rpm

安装DKMS依赖yum install -y elfutils-libelf-devel

安装DKMS包rpm -ivh dkms-2.4.0-1.20170926git959bd74.el7.noarch.rpm

2、安装元数据包源:

下载地址:cuda-repo-rhel7-9.0.176-1.x86_64.rpm)

安装:sudo rpm -ivh cuda-repo-rhel7-9.0.176-1.x86_64.rpm

3、更新元数据

sudo yum clean expire-cache
sudo yum update

4、安装CUDA

直接运行一下命令进行安装,当然如果你不放心的话,可以先执行sudo yum info cuda查看CUDA包的相关信息。

sudo yum install cuda
sudo yum update cuda-drivers

好啦,现在已经安装成功啦!

运行nvidia-smi查看显卡信息,试试?

运行cat /usr/local/cuda/version.txt查看CUDA版本,试试?

3.2.2. distribution-independent package方式

抱歉了各位,本猪猪有些累了,需要休息系。稍后再来补充。

参考文档

  1. cuda-installation-guide-linux

Cuda9.0安装的更多相关文章

  1. Ubuntu16.04+cuda9.0安装教程

    1.安装NVIDIA驱动 首先去官网(http://www.nvidia.cn/Download/index.aspx?lang=cn)查找适配自己电脑GPU的驱动,我的电脑驱动版本如下: 执行如下语 ...

  2. win10+py3.6+cuda9.0安装pytorch1.1.0

    参考:清华源失效后如何安装pytorch1.01 GPU版本的安装指令为: conda install pytorch torchvision cudatoolkit=9.0 -c pytorch 这 ...

  3. Ubuntu18.04+CUDA9.0+cuDNN7.1.3+TensorFlow1.8 安装总结

    Ubuntu18.04发行已经有一段时间了,正好最近Tensorflow也发布了1.8版本,于是决定两个一起装上,以下是安装总结,大致可 以分为5个步骤 确认当前软件和硬件环境.版本 更新显卡驱动,软 ...

  4. win10+Anaconda3+CUDA9.0+CUDNN7.1+TensorFlow-gpu1.9+Pycharm

    想在win10上运行下YOLO的例子,要先配置环境,折腾了两天,终于好了,整理下自己觉得有用且正确的流程. win10+Anaconda3+CUDA9.0+CUDNN7.1+TensorFlow1.9 ...

  5. Ubuntu 18.04 RTX2080(ti) + tensorflow-gpu + cuda9.0 + gcc5 兼容性问题解决

    0.下载display driver.cuda和cudnn RTX2080 Display Driver cuda cudnn 1. 禁止系统默认的显卡驱动 打开系统黑名单 sudo gedit /e ...

  6. Ubuntu16.04安装cuda9.0+cudnn7.0

    Ubuntu16.04安装cuda9.0+cudnn7.0 这篇记录拖了好久,估计是去年6月份就已经安装过几遍,然后一方面因为俺比较懒,一方面后面没有经常在自己电脑上跑算法,比较少装cuda和cudn ...

  7. 深度学习环境搭建(ubuntu16.04+Titan Xp安装显卡驱动+Cuda9.0+cudnn+其他软件)

    一.硬件环境 ubuntu 16.04LTS + windows10 双系统 NVIDIA TiTan XP 显卡(12G) 二.软件环境 搜狗输入法 下载地址 显卡驱动:LINUX X64 (AMD ...

  8. 深度学习环境配置:Ubuntu16.04安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)

    本来就对Linux不熟悉,经过几天惨痛的教训,参考了不知道多少篇文章,终于把环境装好了,每篇文章或多或少都有一些用,但没有一篇完整的能解决我安装过程碰到的问题,所以决定还是自己写一篇我安装过程的教程, ...

  9. 安装Cuda9.0+cudnn7.3.1+tensorflow-gpu1.13.1

    我的安装版本: win10 x64 VS2015 conda python 3.7 显卡 GTX 940mx Cuda 9.0 cudnn v7.3.1 Tensorflow-gpu 1.13.1 1 ...

随机推荐

  1. CL_GUI_FRONTEND_SERVICES 使用问题

    CL_GUI_FRONTEND_SERVICES(SAP操作Windows文件) 这个类下面的方法均为静态方法,引用的时候以=>来引用方法 注意:在执行CL_GUI_FRONTEND_SERVI ...

  2. mysql双主架构

    注意:最好不要用innodedb来同步数据库,要用databus来同步数据库,数据量大要用上mycat中间件 Mysql主主同步环境部署: centos 7.4 三台云主机: mysql1 :10.1 ...

  3. office web apps安装部署,配置https,负载均衡(四)安装office web apps相关软件

    前提条件: 1.一台windows server 2008R2服务器,并且已经配置了域: 服务器连接域控制器的相关文档,请查看上一篇文章: office web apps安装部署,配置https,负载 ...

  4. 史上最简单的CentOS7破解密码方法,有图有真相

    #############破解CentOS7密码详细过程 一.开机重启,按任意键停住,有时没停住,是鼠标键未在服务器中,点一下就好     二.按e键进入单用户模式     三.在UTF-8后面加上i ...

  5. 关于组播数据包“发不出去",c#无法接收

    问题一:发不出去 最近做一个小东西改进方案需要用到组播,简单来说就是我先作为服务器端组播发送设备编号,然后组播成员作为客户端接收消息后先确认对方是不是在呼叫我.是的话就返回一个消息,这样我服务器端就可 ...

  6. JVM配置参数解析

    1.参数说明(部分,待完善) -Xms128M:JVM初始分配的堆内存 -Xmx256M:JVM最大允许分配的堆内存,按需分配 -XX:PermSize=64M: JVM初始分配的非堆内存 -XX:M ...

  7. String的非空判断:str!=""的为空判断出错问题

    if(str!=null && str!= ""){}这是错误的判断 String str1 = ""; String str2 = new S ...

  8. PTA(Basic Level)1058.A+B in Hogwarts

    If you are a fan of Harry Potter, you would know the world of magic has its own currency system -- a ...

  9. p1000 A+B问题

    题目描述 Description 输入两个整数A和B,输出他们的和 输入描述 Input Description 输入为一行,包含两个整数A,B.数据保证A与B都在2^31-1的范围内 输出描述 Ou ...

  10. shell提升篇

    6. 条件判断 1.基本语法 [ condition ](注意condition前后要有空格) 注意:条件非空即为true,[ fsdm ]返回true,[] 返回false. 2. 常用判断条件 ( ...