【CUDA】CUDA开发环境搭建
版权声明:本文为博主原创文章,未经博主允许不得转载。
目录:
本文介绍在Linux环境下(Ubuntu 14.04)安装NVIDIA公司的并行计算平台CUDA(Compute Unified Device Architecture)。本文将会介绍两种方法,一种是基于Debian包关系系统(Package Mangager Installation),另一种则是手动安装。
1. PRE-INSTALLATION ACTIONS
在安装CUDA以及显卡驱动之前,请先确定如下内容:
- 你的计算机是否装有一颗支持CUDA的GPU
- 你的计算机所运行的Linux版本是否被CUDA所支持
- 你的计算机是否已经安装了gcc,gcc的版本是否被CUDA支持
下面具体展开:
1.1 检查GPU
在Linux系统下,输入如下命令:
$ lspci | grep -i nvidia
如果你的计算机上装有NVIDIA公司的GPU的话,将会出现相关信息。同时,你也可以登陆NIVIDIA公司的CUDA官方网站CUDA ZONE去查看你的GPU是否支持CUDA。
1.2 检查系统
查看你的Linux发行版本,输入如下指令:
$ uname -m && cat /etc/*release
这一步主要是查看你的计算机是32位的还是64位的。如果你看到“x86_64”,那么说明你的计算机是64位的。
1.3 检查gcc
gcc编译器是编译CUDA所必须的,通常在安装Linux发行版的过程中,都会自动安装,但为了保险起见,我们还是检查一下:
$ gcc --version
至此,我们完成了CUDA安装的预备内容。下面就可以开始安装啦。
2. PACKAGE MANAGER INSTALLATION
包管理安装是Linux一个非常方便的安装机制。每一个deb包都是一个仓库。deb包既可以预先下载到本地,同时也可以在线下载并安装。不过考虑到天朝的网络情况,在这里还是建议预先下载下来。
使用这一方法安装,非常的简介方便。
Step1:登陆CUDA ZONE - Download - CUDA Toolkit,根据你自己的系统、计算机体系架构、Linux发行版、版本进行选择,如下所示:
按照我们之前说的,首先下载到本地。
Step2:核对md5sum码,确定下载过程无误
$ md5sum cuda-repo-ubuntu1404-7-5-local_7.5-1.8_amd64.deb
Step3:执行下列命令,安装一个Debian包裹文件。如我们的例子:
$ dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-1.8_amd64.deb
这里需要注意的是,这个文件名称不是绝对的,你也可以根据自己的系统下载个性化的Debian安装包,但请注意,下载的文件名应该如何如下规则:
cuda-repo-<distro>_<version>_<architecture>.deb
Step4:更新Ubuntu的Apt仓库
$ sudo apt-get update
Step5:执行安装
$ sudo apt-get install cuda
这里需要注意的是,NVIDIA显卡的驱动是集成在CUDA里面的,所以当我们完成CUDA安装后,同时显卡驱动也自动安装好了。
3. Manually Installation
此外,我们还可以使用手动安装的方法。
Step1:安装必要的库
$ sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
【注】
对于刚刚安装好Ubuntu的同学,建议大家首先更换软件源。
更换的方法:打开Ubuntu的“软件中心”,选择 编辑 - 软件源。在其他站点,选择一个中国的站点就可以,然后再执行下面的命令,更新Ubuntu Apt仓库。
$ sudo apt-get update
Step2:删除已有的NVIDIA内容,包括驱动等等。
$ sudo apt-get remove --purge nvidia*
Step3:拉黑名单,在blacklist.conf里面输入如下内容:
$ sudo vi /etc/modprobe.d/blacklist.conf
lacklist amd76x_edac
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
Step4:由于我们在安装CUDA的过程中必须屏蔽掉Linux的X Window,所以我们必须关闭Linux里面的lightdm,在真正的命令行终端里面执行。
输入Ctrl + Alt + F1,进入命令行终端。执行如下命令:
sudo service lightdm stop
chmod +x cuda_7.5.18_linux.run
sudo ./cuda_7.5.18_linux.run
在运行过程中貌似需要重启一次?小问题,基本上就是一路accept/yes/ENTER中度过了。
最终将会得到如下结果:
Driver: Installed
Toolkit: Installed In /Usr/Local/Cuda-7.5
Samples: Installed.
Step5:这个时候重启lightdm,重回GUI界面
$ sudo service lightdm restart
Step6:path设置
安装的最后,我们需要重新设置Ubuntu的环境变量PATH和LD_LIBRARY_PATH。
$ export PATH=/usr/local/cuda-7.5/bin:$PATH
$ export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH
4. Test
安装完成后,我们可以通过NVIDIA_SAMPLE来进行测试,以验证CUDA是否成功安装。
NVIDIA_SAMPLE时NVIDIA公司提供的一系列测试样例,一般我们使用其中的deviceQuery,该程序打印系统所有的硬件资源,输入如下命令:
$ cd ~/NVIDIA_CUDA-7.5_SAMPLES
$ cd ./1-Utilities/deviceQuery
$ make
$ ./deviceQuery
如果能够出现如下信息,则说明安装成功!
5. Reference
[2] Installation Guide for Linux
[3] CUDA Zone
2015/1/8 于 浙大
【CUDA】CUDA开发环境搭建的更多相关文章
- CUDA并行程序设计 开发环境搭建与远程调试
课题需要用到GPU加速.目前使用的台式电脑只有核心显卡,而实验室有一台服务器装有NVIDIA GTX980独显.因此,想搭建一个CUDA的开发环境,来实现在台式机上面开发cuda程序,程序在服务器而不 ...
- python开发环境搭建
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...
- IntelliJ IDEA安装及jsp开发环境搭建
一.前言 现在.net国内市场不怎么好,公司整个.net组技术转型,就个人来说还是更喜欢.net,毕竟不是什么公司都像微软一样财大气粗开发出VS这样的宇宙级IDE供开发者使用,双击sln即可打开项目, ...
- Qt for Android开发环境搭建及测试过程记录
最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...
- node.js之开发环境搭建
一.安装linux系统 (已安装linux可跳此步骤) 虚拟机推荐选择:VirtualBox 或者 Vmware (专业版永久激活码:5A02H-AU243-TZJ49-GTC7K-3C61N) 我这 ...
- TODO:小程序开发环境搭建
TODO:小程序开发环境搭建 1.第一步当然是要先注册小程序了 2.登录到小程序 a)完善小程序信息,如名称,图标,描述 3.绑定开发者 4.获取AppID,并设置服务器信息 5.下载并安装开发者工具 ...
- Eclipse中Python开发环境搭建
Eclipse中Python开发环境搭建 目 录 1.背景介绍 2.Python安装 3.插件PyDev安装 4.测试Demo演示 一.背景介绍 Eclipse是一款基于Java的可扩展开发平台. ...
- Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建
目前,微软针对Windows IoT计划支持的硬件包括树莓派2,Minnow Board MAX 和Galileo (Gen 1和Gen 2).其中,Galileo (Gen 1和Gen 2)运行的是 ...
- Eclipse swt开发环境搭建
原料: eclipse swt.下载链接为: Eclipse 4.6.2 Release Build: 4.6.2 配置说明: Developing SWT applications using Ec ...
- Ionic- Android 开发环境搭建
Ionic- Android 开发环境搭建 为时一周的IONIC ADNROID 环境终于在各种处理错误中搭建成功,以下记录下搭建过程中遇到的各种情况的处理办法. 一 首先,当然是enviroment ...
随机推荐
- 【Luogu】P3787冰精冻西瓜(线段树)
题目链接 我脑子怕不是有坑qwqqq 用前缀和思想,dis[i]表示i离根的距离,那么修改操作其实是对x的子树区间加y/dis[x],查询的时候*dis[to]即可. 对付/0错的思路是建森林,然而这 ...
- c++ 的语法方面的问题
1.字符串string 中 ""和null的区别 答:举个例子,你老妈让你去打瓶酱油.你要是空手去了,你就是带着null去的.你要是带着空瓶子去的,你就是呆着“”去的.希望你能理 ...
- 微信小程序答题系统实现随机出题 答题小程序如何实现随机出题 微信小程序 答题系统
最近头脑王者非常火爆,公司也在开发类似头脑王者的答题系统,这个重任交到我这边来了,我们在开发的这个微信小程序答题系统,需要实现随机出题.尤其是一些比如闯关的环节,需要随机从题库里抽取若干道题目,给到用 ...
- python 字体颜色,背景颜色
- net3:DropDownList的动态绑定
原文发布时间为:2008-07-29 -- 来源于本人的百度文章 [由搬家工具导入] using System.Data;using System.Configuration;using System ...
- L1-5. A除以B【一种输出格式错了,务必看清楚输入输出】
L1-5. A除以B 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 真的是简单题哈 —— 给定两个绝对值不超过100的整数A和 ...
- FreeSql 教程引导
FreeSql是一个功能强大的NETStandard库,用于对象关系映射程序(O/RM),以便于开发人员能够使用 .NETStandard 对象来处理数据库,不必经常编写大部分数据访问代码. 特性 支 ...
- 优雅的使用ImageGetter
https://daihanglin.github.io/2017/10/13/imageGetter/ 1. 使用ImageGetter的场景 Android中用于显示文本的控件为textVie ...
- window 驱动开发
http://blog.csdn.net/chenyujing1234/article/category/1147469/5
- ios等待ualertview弹出动画完成后再跳转至其他页面
[self performSelector:@selector(popView:) withObject:nil afterDelay:2.0];