ubuntu16.04+cuda8.0+gtx1080安装教程

董小阁 董小阁     2022-08-05     814

关键词:

1. 安装Ubuntu16.04

不考虑双系统,直接安装 Ubuntu16.04,从 ubuntu官方 下载64位版本: ubuntu-16.04-desktop-amd64.iso 。

在MAC下制作了 Ubuntu USB 安装盘,具体方法可参考: 在MAC下使用ISO制作Linux的安装USB盘 ,之后通过Bios引导U盘启动安装Ubuntu系统:

1)一开始安装就踩了一个坑,选择”Install Ubuntu”回车后过一会儿屏幕显示“输入不支持”,google了好多方案,最终和ubuntu对显卡的支持有关,需要手动添加显卡选项: nomodeset,使其支持Nvidia系列显卡,参考: 安装ubuntu黑屏问题的解决 or How do I set ‘nomodeset’ after I’ve already installed Ubuntu?

2) 磁盘分区,全部干掉之前主机自带的Window 10系统,分区为 /boot, /, /home 等几个目录,同时把第二块4T硬盘也挂载了上去,作为数据盘。

3)安装完毕后Ubuntu 16.04的分辨率很低,在显卡驱动未安装之前,可以手动修改一下grub文件:

sudo vim /etc/default/grub

# The resolution used on graphical terminal 
# note that you can use only modes which your graphic card supports via VBE 
# you can see them in real GRUB with the command `vbeinfo’ 
#GRUB_GFXMODE=640×480 
# 这里分辨率自行设置 
GRUB_GFXMODE=1024×768 

sudo update-grub

4)安装SSH Server,这样可以远程ssh访问这台GTX1080主机:

sudo apt-get install openssh-server

5)更新Ubuntu16.04源,用的是 中科大的源 :

cd /etc/apt/ 
sudo cp sources.list sources.list.bak 
sudo vi sources.list

把下面的这些源添加到source.list文件头部:

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse 
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse 
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse 
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse 
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse 
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse 
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse 
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse 
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse 
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse

最后更新源和更新已安装的包:

sudo apt-get update 
sudo apt-get upgrade 

2. 安装GTX1080驱动

安装 Nvidia 驱动 367.27

sudo add-apt-repository ppa:graphics-drivers/ppa

第一次运行出现如下的警告:

Fresh drivers from upstream, currently shipping Nvidia.

## Current Status

We currently recommend: nvidia361nvidia-361, Nvidia’s current long lived branch. 
For GeForce 8 and 9 series GPUs use nvidia340nvidia-340 
For GeForce 6 and 7 series GPUs use nvidia304nvidia-304

## What we’re working on right now:

– Normal driver updates– Investigating how to bring this goodness to distro on a cadence.

## WARNINGS:

This PPA is currently in testing, you should be experienced with packaging before you dive in here. Give us a few days to sort out the kinks.

Volunteers welcome! See also: https://github.com/mamarley/nvidia-graphics-drivers/

http://www.ubuntu.com/download/desktop/contribute 
更多信息: https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa 
按回车继续或者 Ctrl+c 取消添加

回车后继续:

sudo apt-get update 
sudo apt-get install nvidia-367 
sudo apt-get install mesa-common-dev 
sudo apt-get install freeglut3-dev

之后重启系统让GTX1080显卡驱动生效。

3. 下载和安装CUDA

在安装 CUDA 之前,google了一下,发现在Ubuntu16.04下安装CUDA7.5问题多多,幸好CUDA8已出,支持GTX1080:

New in CUDA 8

Pascal Architecture Support 
Out of box performance improvements on Tesla P100, supports GeForce GTX 1080 
Simplify programming using Unified memory on Pascal including support for large datasets, concurrent data access and atomics* 
Optimize Unified Memory performance using new data migration APIs* 
Faster Deep Learning using optimized cuBLAS routines for native FP16 computation 
Developer Tools 
Quickly identify latent system-level bottlenecks using the new critical path analysis feature 
Improve productivity with up to 2x faster NVCC compilation speed 
Tune OpenACC applications and overall host code using new profiling extensions 
Libraries 
Accelerate graph analytics algorithms with nvGRAPH 
New cuBLAS matrix multiply optimizations for matrices with sizes smaller than 512 and for batched operation

不过下载CUDA需要注册和登陆NVIDIA开发者账号, CUDA8下载页面 提供了很详细的系统选择和安装说明,

这里选择了Ubuntu16.04系统runfile安装方案,千万不要选择deb方案,前方无数坑:

技术分享

下载的“cuda_8.0.27_linux.run”有1.4G,按照Nivdia官方给出的方法安装CUDA8:

sudo sh cuda_8.0.27_linux.run --tmpdir=/opt/temp/

这里加了–tmpdir主要是直接运行“sudo sh cuda_8.0.27_linux.run”会提示空间不足的错误,其实是全新的电脑主机,硬盘足够大的,google了以下发现加个tmpdir就可以了:

Not enough space on parition mounted at /.Need 5091561472 bytes.

Disk space check has failed. Installation cannot continue.

执行后会有一系列提示让你确认,非常非常非常非常关键的地方是是否安装361这个低版本的驱动:

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 361.62?

答案必须是n,否则之前安装的GTX1080驱动就白费了,而且问题多多。

Logging to /opt/temp//cuda_install_6583.log 
Using more to view the EULA. 
End User License Agreement 
————————–

Preface——-

The following contains specific license terms and conditions 
for four separate NVIDIA products. By accepting this 
agreement, you agree to comply with all the terms and 
conditions applicable to the specific product(s) included 
herein.

Do you accept the previously read EULA?accept/decline/quit: accept

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 361.62?(y)es/(n)o/(q)uit: n

Install the CUDA 8.0 Toolkit?(y)es/(n)o/(q)uit: 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

Install the CUDA 8.0 Samples?(y)es/(n)o/(q)uit: y

Enter CUDA Samples Location[ default is /home/textminer ]:

Installing the CUDA Toolkit in /usr/local/cuda-8.0 … 
Installing the CUDA Samples in /home/textminer … 
Copying samples to /home/textminer/NVIDIA_CUDA-8.0_Samples now… 
Finished copying samples.

=========== 
= Summary = 
===========

Driver: Not Selected 
Toolkit: Installed in /usr/local/cuda-8.0 
Samples: Installed in /home/textminer

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 with the name of this run file: 
sudo .run -silent -driver

Logfile is /opt/temp//cuda_install_6583.log

安装完毕后,再声明一下环境变量,并将其写入到 ~/.bashrc 的尾部:

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

最后再来测试一下CUDA,运行:

nvidia-smi

结果如下所示:

技术分享

再来试几个CUDA例子:

cd 1_Utilities/deviceQuerymake

这里如果提示gcc版本过高,可以安装低版本的gcc并做软连接替换,具体方法请自行google,我在用低版本的gcc4.9替换了ubuntu16.04自带的gcc5.x版本。

“/usr/local/cuda-8.0″/bin/nvcc -ccbin g++ -I../../common/inc -m64 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_60,code=compute_60 -o deviceQuery.o -c deviceQuery.cpp 
“/usr/local/cuda-8.0″/bin/nvcc -ccbin g++ -m64 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_60,code=compute_60 -o deviceQuery deviceQuery.o 
mkdir -p ../../bin/x86_64/linux/release 
cp deviceQuery ../../bin/x86_64/linux/release

执行 ./deviceQuery ,得到:

./deviceQuery Starting…

CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: “GeForce GTX 1080” 
CUDA Driver Version / Runtime Version 8.0 / 8.0 
CUDA Capability Major/Minor version number: 6.1 
Total amount of global memory: 8112 MBytes (8506179584 bytes) 
(20) Multiprocessors, (128) CUDA Cores/MP: 2560 CUDA Cores 
GPU Max Clock rate: 1835 MHz (1.84 GHz) 
Memory Clock rate: 5005 Mhz 
Memory Bus Width: 256-bit 
L2 Cache Size: 2097152 bytes 
Maximum Texture Dimension Size (x,y,z) 1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384) 
Maximum Layered 1D Texture Size, (num) layers 1D=(32768), 2048 layers 
Maximum Layered 2D Texture Size, (num) layers 2D=(32768, 32768), 2048 layers 
Total amount of constant memory: 65536 bytes 
Total amount of shared memory per block: 49152 bytes 
Total number of registers available per block: 65536 
Warp size: 32 
Maximum number of threads per multiprocessor: 2048 
Maximum number of threads per block: 1024 
Max dimension size of a thread block (x,y,z): (1024, 1024, 64) 
Max dimension size of a grid size (x,y,z): (2147483647, 65535, 65535) 
Maximum memory pitch: 2147483647 bytes 
Texture alignment: 512 bytes 
Concurrent copy and kernel execution: Yes with 2 copy engine(s) 
Run time limit on kernels: Yes 
Integrated GPU sharing Host Memory: No 
Support host page-locked memory mapping: Yes 
Alignment requirement for Surfaces: Yes 
Device has ECC support: Disabled 
Device supports Unified Addressing (UVA): Yes 
Device PCI Domain ID / Bus ID / location ID: 0 / 1 / 0 
Compute Mode: 
<Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 8.0, CUDA Runtime Version = 8.0, NumDevs = 1, Device0 = GeForce GTX 1080Result = PASS

再测试试一下nobody:

cd ../../5_Simulations/nbody/make

执行:

./nbody -benchmark -numbodies=256000 -device=0

得到:

> Windowed mode 
> Simulation data stored in video memory 
> Single precision floating point simulation 
> 1 Devices used for simulation 
gpuDeviceInit() CUDA Device [0]: “GeForce GTX 1080 
> Compute 6.1 CUDA device: [GeForce GTX 1080] 
number of bodies = 256000 
256000 bodies, total time for 10 iterations: 2291.469 ms 
= 286.000 billion interactions per second 
= 5719.998 single-precision GFLOP/s at 20 flops per interaction

参考: 
Nvidia GTX 1080 on Ubuntu 16.04 for Deep Learning 
Ubuntu 16.04下安装Tensorflow(GPU) 
ubuntu16.04安装 cuda7.5 
Ubuntu16.04无法安装CUDA吗? 
Ubuntu16.04+matlab2014a+anaconda2+OpenCV3.1+caffe安装 
ubuntu 16.04 编译opencv3.1,opencv多版本切换 
TensorFlow, Caffe, Chainer と Deep Learning大御所を一気に source code build で GPU向けに setupしてみた 
feature request: support for cuda 8.0 rc 
GTX 1080 CUDA performance on Linux (Ubuntu 16.04) preliminary results (nbody and NAMD) 
Anyone able to run Tensorflow with 1070/1080 on Ubuntu 16.04/15.10/15.04? 
Tensorflow on Ubuntu 16.04 with Nvidia GTX 1080

ubuntu16.04安装cuda8.0(很详尽,包括一些坑的解决方法)

...先介绍用于测试的电脑:操作系统是在清华镜像上下载的ubuntu16.04LTS,内核版本是4.15.0-29-generic,电脑是联想Y430P,显卡我没记错的话是GTX850M。本篇绝大部分操作需要管理员权限,即sudo,也许不把cuda安装到/usr/lib而是自己的home目... 查看详情

ubuntu16.04下安装cuda8.0

一、首先安装NVIDIA显卡驱动通过NVIDIA-Linux-x86_64-367.44.run文件安装。1.添加PPA.sudoadd-apt-repositoryppa:graphics-drivers/ppa2.刷新并安装新的驱动程序sudoapt-getupdatesudoapt-getinstallnvidia-367nvidia-settings(如果需要的话,)卸载:删除所有的nvi 查看详情

win10gtx1080ti安装cuda8.0或7.5时提示thisgraphicsdrivercouldnotfind

win10系统显卡Gtx1080ti安装cuda8.0或7.5时提示thisgraphicsdrivercouldnotfind已解决,谢谢!意思是当前安装的驱动和显卡硬件不兼容,建议运行gpu-z,检测下显卡是否刷的假卡。参考技术A遇到同样问题,请问是怎么解决的。。。。。。。。... 查看详情

ubuntu16.04tensoflow使用服务器需要支持gpu吗

参考技术A1.下载1.1系统镜像由于我尝试了ubuntu14.04,安装Nvidia驱动之后,会出现循环登录的问题,并始终无法找到有效的解决途径,所以只能选择ubuntu16.04了。1.2CUDA8.0说明:(1)在NVIDIA的CUDA下载页面下,选择要使用的CUDA版本进... 查看详情

fedora23+cuda8.0+gtx970安装

 https://www.if-not-true-then-false.com/2015/fedora-nvidia-guide/PRE-INSTALLATIONACTIONSSomeactionsmustbetakenbeforetheCUDAToolkitandDrivercanbeinstalledonLinux:?VerifythesystemhasaCUDA-capableGP 查看详情

重要网站和教程(持续收录)(代码片段)

目录Win10下安装Ubuntu16.04双系统CUDA8.0+Cudnn6.0+TensorFlow1.4.0MATLAB2018aMathjax语法Win10下安装Ubuntu16.04双系统基本教程:https://blog.csdn.net/s717597589/article/details/79117112/注意:强烈建议装英文。原因很简单,cd下载(等其他汉字)在命令行模... 查看详情

ubuntu16.04下安装tensorflow(gpu)

参考:http://blog.sina.com.cn/s/blog_672f698e0102wavp.html1.首先安装nvidia显卡驱动:系统设置->软件更新->附加驱动->选择nvidia最新驱动(361)->应用更改?2.下载CUDA8.0地址https://developer.nvidia.com/cuda-release-candidate-download( 查看详情

caffe实战一(环境准备及cpu模式下编译)

经过前几天的折腾,终于把Ubuntu16.04开发环境给搭建了起来,包括win10+Ubuntu双系统的安装、系统安装后的优化等等。详见之前的文章:Ubuntu16.04.2LTS64bit系统装机记录Ubuntu16.04安装Nvidia显卡驱动+Cuda8.0+Cudnn6.0接下来,该是实践的时候... 查看详情

pointnet代码复现(代码片段)

...备根据作者描述使用python2.7+tensorflow1.0.1+cuda8.0。在Ubuntu16.04中复现。1.配置cuda8.0+cudnn5.1具体过程可参考网上教程2.配置python2.7+tensorflow1.0.1、使用conda创建虚拟环境便于管理condacreate-n 查看详情

非法内存访问:一个 GPU 的多线程(OpenCV3.1 + CUDA 8.0)(完整代码)

...显卡上运行5个线程,但失败了:【运行环境】:LinuxUbuntu16.04+CUDA8.0+OpenC 查看详情

windows10+anaconda+tensorflow+cuda8.0环境配置(代码片段)

...量: D:Anaconda2D:Anaconda2ScriptsD:Anaconda2Libraryin123 2.CUDA8.0 1. 下载cuda8.0: 官网地址:https://developer.nvidia.com/cuda-downloads     百度云:下载cuda_8.0.61_win10.exe2.安装cuda8.0:双击cuda_8.0.61_win10.exe直接进行... 查看详情

caffe在window下编译(windows7,cuda8.0,matlab接口编译)

1.环境:Windows7,Cuda8.0,显卡GTX1080,Matlab2016a,VS2013 (ps:老板说服务器要装windows系统,没办法,又要折腾一番)2.下载caffe包:https://github.com/BVLC/caffe/tree/windows  按照Github上的命令行就行:    这里的Pro 查看详情

opencv3.2.0+win10+cuda8.0+vs2013编译

...VIDIAGPU,并且装好了驱动程序。安装CUDAtoolkit,本文使用的是CUDA8.0。下载地址下载OpenCV3.2选择的winpack版本,解压到指定文件目录下。下载地址下载安装CMake。版本使用的是cmake-3.10.1-w 查看详情

Windows 上的 Theano + Cuda 8.0 - 编译错误

】Windows上的Theano+Cuda8.0-编译错误【英文标题】:Theano+Cuda8.0onWindows-CompileErrors【发布时间】:2016-06-1622:02:03【问题描述】:我让Theano在Windows10没有GPU支持的情况下正常工作。我有一个新的GTX1080,想在上面运行Theano。这需要来自NVI... 查看详情

ubuntu16.04下安装cuda,cudnn及tensorflow-gpu版本过程(代码片段)

这篇文章主要依据两篇文章:深度学习主机环境配置:Ubuntu16.04+NvidiaGTX1080+CUDA8.0深度学习主机环境配置:Ubuntu16.04+GeForceGTX1080+TensorFlow不过在实际运行的过程中,有一定的不同之处,随着时间的推移,一些... 查看详情

备注:ubt16.04安装gtx1060

-------------------------------------------------------------------------------------------------------------------------lspci-vnn|grepVGA-A12查看[email protected]:~$lspci-vnn|grepVGA-A1201:00.0VGA 查看详情

win10安装ubuntu16.04双系统

win10安装ubuntu16.04双系统  Win10+Ubuntu双系统删除Ubuntu方法https://www.cnblogs.com/pualus/p/7835422.htmlUEFI启动Windows10+Ubuntu双系统删除Ubuntu方法https://blog.csdn.net/tjuyanming/article/details/64929901win10 查看详情

我收到“运行时 API 错误:设备序号无效。”当我使用 GTX 590 在 Ubuntu 10.04 上运行 cuda 代码时

...收到“运行时API错误:设备序号无效。”当我使用GTX590在Ubuntu10.04上运行cuda代码时【英文标题】:Iget"RuntimeAPIerror:invaliddeviceordinal."whenIruncudacodeonUbuntu10.04usingaGTX590【发布时间】:2012-10-1914:00:49【问题描述】:我正在尝试... 查看详情