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)
上一篇 2025年6月22日 下午4:43
下一篇 2025年6月22日 下午5:15


相关推荐

  • 用了半年 OpenRouter 后我换了,聊聊国内开发者选 API 聚合平台踩过的坑

    用了半年 OpenRouter 后我换了,聊聊国内开发者选 API 聚合平台踩过的坑

    2026年3月12日
    4
  • SplitContainer控件设置固定比例

    SplitContainer控件设置固定比例SplitContainer控件2个panel如何设置均等大小.(竖直拆分)先随意设置空间高的大小,然后如果想要均等显示,则直接设置SplitterDistance为高的一半,即可!随后任意改变控件大小,都不会改变均等显示比例。同理3:7,4:6…

    2022年7月18日
    15
  • MATLAB安装配置libsvm(附MinGW64配置)

    MATLAB安装配置libsvm(附MinGW64配置)首先声明版本 本人 PC 系统 Windows1064b matlab 安装的 2016b libsvm 安装的 version3 2 21 首先需要下载 libsvm 包 从林教授的网站上下载 nbsp http www csie ntu edu tw cjlin libsvm 2 将 libsvm3 2 2 解压到 matlab toolbox 目录下 解压后 D matlab2016b toolbox libs

    2026年3月18日
    1
  • stringbuffer stringbuilder区别_javastringbuffer

    stringbuffer stringbuilder区别_javastringbufferString、StringBuffer和StringBuilder的区别:文章目录StringStringBufferStringBuilderStringBuffer是如何实现线程安全的呢?Java9的改进String  String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁。  这个是String类的解释,之前小咸儿看…

    2022年4月19日
    52
  • tail 命令详解

    tail 命令详解一、tail命令介绍tail命令可以将文件指定位置到文件结束的内容写到标准输出。如果你不知道tail命令怎样使用,可以在命令行执行命令tail–help就能看到tail命令介绍和详细的参数使用介绍,内容如下(我帮大家翻译了一下)。[root@yanggongzi~]#tail–helpUsage:tail[OPTION]…[FILE]…Printthelast10linesofeachFILEtostandardoutput.Withmore

    2022年6月4日
    44
  • pycharm2022.01.13怎么激活_在线激活[通俗易懂]

    (pycharm2022.01.13怎么激活)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~1PA3AFINM4-eyJsaWNlb…

    2022年3月31日
    65

发表回复

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

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