ubuntu16.04安装cuda10.2_opencv cuda

ubuntu16.04安装cuda10.2_opencv cuda由于实验需要,在实验室电脑上搭建深度学习Caffee框架。一共花了两天的时间,其中遇到了不少的问题,记录一下。Caffee在配置上相对来说比较麻烦,需要前期安装的东西比较多,逐一介绍。CUDA:NVIDIA系列显卡支持的GPU编程框架,其实如果本身电脑是AMD的显卡,不用装也可用Caffee,只是速度会比较慢。所以最好有一块像样的显卡,最后我就败在这个上面了。。。MKA或是OpenAtlas

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

由于实验需要,在实验室电脑上搭建深度学习Caffee框架。一共花了两天的时间,其中遇到了不少的问题,记录一下。
Caffee在配置上相对来说比较麻烦,需要前期安装的东西比较多,逐一介绍。

  1. CUDA:NVIDIA系列显卡支持的GPU编程框架,其实如果本身电脑是AMD的显卡,不用装也可用Caffee,只是速度会比较慢。所以最好有一块像样的显卡,最后我就败在这个上面了。。。
  2. MKA或是OpenAtlas或atlas:这个是科学计算库,三种选安装一个就行了。MKA是Intel公司推出的,性能以及服务上会比较好,学生的话可以上官网上申请学生试用版。但是这个比较大,建议安装atlas就可以了,Caffee默认用的就是这个。
  3. OpenCV:这个做图像的都知道,我就不多说了。
  4. Python:现在流行的脚本编程语言,Caffee支持使用。或者安装Anaconda2也行,Anaconda2是独立于Python的一个库,用这个也可以。
  5. 最后这个也是最重要的,操作系统。linux就可以了,我用的是Ubuntu14.04。

下面一步步来详细说,默认你已经安装好Ubuntu系统,如果还没有,网上教程找找看。

CUDA安装

  1. NVIDIA显卡驱动安装
    Ubuntu14.04默认安装的显卡驱动是nouveau,这个不适合。所以需要安装新的显卡驱动。这部分查看我的一篇博客 Ubuntu 14.10安装显卡驱动 ,方法是一样的。

  2. CUDA6.5安装
    从官网上下载对应的安装包,我这里下载的是cuda_6.5.14_linux_64.run。这个安装包里其实有三个部分,包括一个显卡驱动、CUDA安装包还有一个CUDA例子。在安装过程中注意显卡驱动不需要安装了,注意!

sudo ./cuda_6.5.14_linux_64.run

这样CUDA应该已经安装了,但是安装最后会提示会有些问题,这个其实是samples编译需要的库没有安装,后续安装即可,暂时不管。安装CUDA需要最后完成三件事。默认的安装目录为/usr/local/cuda-6.5
第一:把CUDA安装后的bin加入到系统环境变量中

sudo vim /etc/profile
文件中添加 export PATH=/usr/local/cuda-6.5/bin/:$PATH

Jetbrains全家桶1年46,售后保障稳定

执行使配置生效

source /etc/profile

第二:把CUDA编程需要的库加入到系统链接库中
在/etc/ld.so.conf.d/目录下建立cuda.conf文件,写入

/urs/local/cuda-6.5/lib64

执行使配置生效

sudo ldconfig

第三:编译CUDA提供的samples,samples默认的安装目录为/home/yourname/NVIDIA_CUDA-6.5_Samples
下载需要的库,这个是上面安装CUDA时最后提示问题需要的库,这里安装就可以了。

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa-dev

编译samples,进入到samples目录下面

sudo make

完成后,测试一下有没有成功。进入samples/bin/x86_64/linux/release目录,里面有个deviceQuery程序,执行即可

sudo ./deviceQuery

如果出现下面的信息,则表示CUDA已经没有问题了。。。(电脑显卡太差了。。。)

jianghh@jianghh-Precision-T1500:~/NVIDIA_CUDA-6.5_Samples/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 310"
  CUDA Driver Version / Runtime Version          6.5 / 6.5
  CUDA Capability Major/Minor version number:    1.2
  Total amount of global memory:                 512 MBytes (536477696 bytes)
  ( 2) Multiprocessors, (  8) CUDA Cores/MP:     16 CUDA Cores
  GPU Clock rate:                                1402 MHz (1.40 GHz)
  Memory Clock rate:                             790 Mhz
  Memory Bus Width:                              64-bit
  Maximum Texture Dimension Size (x,y,z)         1D=(8192), 2D=(65536, 32768), 3D=(2048, 2048, 2048)
  Maximum Layered 1D Texture Size, (num) layers  1D=(8192), 512 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(8192, 8192), 512 layers
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       16384 bytes
  Total number of registers available per block: 16384
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  1024
  Maximum number of threads per block:           512
  Max dimension size of a thread block (x,y,z): (512, 512, 64)
  Max dimension size of a grid size    (x,y,z): (65535, 65535, 1)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             256 bytes
  Concurrent copy and kernel execution:          Yes with 1 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):      No
  Device PCI Bus ID / PCI location ID:           1 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = GeForce 310
Result = PASS

OpenCV安装
关于OpenCV在ubuntu下的安装方法,有人写了完整的脚本,直接用就行了。下载地址:https://github.com/jayrambhia/Install-OpenCV
下载适合自己的版本脚本,执行即可

sudo ./opencv2_4_9.sh

atlas安装
这个直接安装即可

sudo apt-get install libatlas-base-dev 

安装后,把相应的库添加到系统的链接库路径中。atlas默认安装目录为/usr/lib/atlas-base/
在/etc/ld.so.conf.d/目录下添加atlas.conf,文件中添加

/usr/lib/atlas-base
/usr/lib/altas-base/atlas

执行使配置生效

sudo ldconfig

安装其他的依赖库

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler

安装Python环境
系统默认有python环境,我们先安装pip

sudo apt-get install python-pip

下载caffee包,解压后进入python目录,执行下面命令

for req in $(cat requirements.txt); do sudo pip install $req; done

这样前面部分就差不多了,开始安装caffee
Caffee安装
进入caffee目录,先复制一下配置文件Makefile.config,这个里面是一些参数可能需要修改。大家直接看自己配置情况修改就没问题了,下面开始编译Caffee。

make all -j4
make test
maket runtest

这样整个就没问题了,剩下你就可以看caffee提供的例子了。我试了一下mnist这个数据,正确率有99.07%!!!很牛叉呀。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226887.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Poetry(1)Poetry介绍与安装

    Poetry(1)Poetry介绍与安装介绍Poetry是Python中的依赖管理和打包工具,当然它也可以配置虚拟环境。它允许您声明项目所依赖的库,并为您管理(安装/更新)它们。之前一直使用virtualenvwrapper管理虚拟

    2022年7月29日
    28
  • SSM项目部署到阿里云服务器。只需要五个步骤。

    SSM项目部署到阿里云服务器。只需要五个步骤。最近在看很多ssm项目部署到阿里云的教程:踩了很多坑,所以希望大家部署时候有所借鉴吧。有什么不懂可以联系qq交流:980631161.主要分为五个步骤:1.购买服务器2下载xshell和Xftp63.在服务器上安装jdk,mysql,tomcat。4.数据库准备数据5.maven项目生成war文件。1.购买服务器在阿里云购买一个ESC服务器网址是:https://www….

    2022年6月20日
    58
  • 深度残差网络(ResNet)之ResNet34的实现和个人浅见[通俗易懂]

    深度残差网络(ResNet)之ResNet34的实现和个人浅见[通俗易懂]残差网络是由来自MicrosoftResearch的4位学者提出的卷积神经网络,在2015年的ImageNet大规模视觉识别竞赛(ImageNetLargeScaleVisualRecognitionChallenge,ILSVRC)中获得了图像分类和物体识别的优胜。**残差网络的特点是容易优化,并且能够通过增加相当的深度来提高准确率。其内部的残差块使用了跳跃连接(shortcut),缓解了在深度神经网络中增加深度带来的梯度消失问题**。残差网络(ResNet)的网络结构图举例如下:

    2022年10月6日
    3
  • pytest skipif_pytest不是内部或外部命令

    pytest skipif_pytest不是内部或外部命令前言pytest.mark.skip可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能Skip和xfail:处理那些不会成功的测试用例你可以对那些在某些特定平台上不能运行的测试用

    2022年7月29日
    11
  • servlet中使用db4o

    servlet中使用db4o   在web的工程如果想使用db4o,是不能直接使用的,如果想使用的就得做一些初始化的工作,以便在servlet中使用,具体可以看下面的两个网页有详细的介绍:   http://java.dzone.com/articles/db4o-java http://community.versant.com/documentation/reference/db4o-8.1/java/re…

    2022年7月21日
    16
  • impala中转换字段类型,类型强转

    impala中转换字段类型,类型强转cast(字段名as要转换为的类型)例如:要将student表中的age字段(原本是int类型)转成string类型,如下:cast(student.ageasstring)asage–年龄

    2025年9月18日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号