Centos 6.5 install caffe+Nvidia driver+cuda 6.5

Centos 6.5安装caffe全纪录

前不久,在一台新机器上安装了caffe,用于深度学习。其实本人小白一个,在安装caffe的过程中走了很多弯路。在遇到问题时,还好有**google**,可以得带、哦一些解答。但是悲剧的是,有一些问题还真是搜不到答案。比如:

NVCC src/caffe/layers/relu_layer.cu
src/caffe/layers/prelu_layer.cu(58): error: a host function call cannot be configured
detected during instantiation of "void caffe::PReLULayer::Forward_gpu(const std::vectorcaffe::Blob<Dtype *, std::allocatorcaffe::Blob<Dtype *>> &, const std::vectorcaffe::Blob<Dtype *, std::allocatorcaffe::Blob<Dtype *>> &) [with Dtype=float]" (127): here

当时google一下这个报错,竟然有人和我遇到了同样的错误。简直开心得不行不行的,但这并没有什么卵用,因为没有人解答。 当然后来我解决了这个问题,因为之前大部分caffe所依赖的库都是我手动编译的,很有可能问题出在这点上。但具体为什么会有这样的问题我也不太清楚,其中涉及到各个库的版本兼容问题,不行,头疼。望大神指点。

说了这么多废话,也该开始步入正题了。安装caffe可以分成两步走。

  • 安装CPU only caffe
  • 再安装GPU加速 caffe

这样方便我们在出现错误时能够快速定位问题,解决问题。

1. 安装CPU only caffe

在写这一小节前有必要,交代一下linux系统的基本信息。

$ lsb_release -a
LSB Version:	:base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID:	CentOS
Description:	CentOS release 6.5 (Final)
Release:	6.5
Codename:	Final

$ uname -r
2.6.32-431.el6.x86_64

安装caffe的大虾们,肯定已经阅读过
RHEL / Fedora / CentOS Installation章节。

1.1 基本库安装
  • 基本开发工具

    sudo yum -y groupinstall "Development Tools"
    
  • 添加**EPEL repositories**

sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

然后就可以愉快的安装库了。

sudo yum install protobuf-devel leveldb-devel snappy-devel hdf5-devel

  • 安装**boost-devel**

rpm -qa boost 查看CentOS是否已有boost, 如果有会显示版本,我的自带版本是1.44.1, 版本太低,

$ wget -O boost_1_55_0.tar.bz2 http://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fboost%2Ffiles%2Fboost%2F1.55.0%2F&ts=1385953406&use_mirror=softlayer-ams

$ tar jxvf  boost_1_55_0.tar.bz2
$ cd boost_1_55_0
$ ./bootstrap.sh
$ ./b2
$ sudo ./b2 install

- 安装**opencv-devel**

$ sudo yum -y install cmake pkgconfig gtk2-devel python-devel numpy tbb-devel libpng-devel
$ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.10/opencv-2.4.10.zip
$ unzip opencv-2.4.10.zip
$ cd opencv-2.4.10
$ mkdir build
$ cd build
$ cmake ../ -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_EXAMPLES=ON -DBUILD_NEW_PYTHON_SUPPORT=ON -DINSTALL_PYTHON_EXAMPLES=ON
$ make -j 2
$ sudo make install
1.2 os的依赖

上来就敲下面的命令
sudo yum install gflags-devel glog-devel lmdb-devel,发现glog-devel找不到。这个时候只能上Github上下一个glog.zip

$ unzip glog-master.zip
$ cd glog-master
$ ./configure
$ make -j4
$ sudo make install
1.3 BLAS

sudo yum install atlas-devel

1.4 编译
$ cp Makefile.config.example Makefile.config
# Adjust Makefile.config (for example, if using Anaconda Python)
$ make all
$ make test
$ make runtest
  • For cuDNN acceleration, you should uncomment the USE_CUDNN := 1 switch in Makefile.config.
  • For CPU-only Caffe, uncomment CPU_ONLY := 1 in Makefile.config.

若无意外caffe.so应该就会诞生了。若make runtest过程中,若出现关于**protobuf**相关的错误,应该卸载protobuf-devel,手动下载**protobuf**源码,手动编译。

$ wget -O protobuf.zip https://github.com/google/protobuf/archive/master.zip

$ unzip protobuf.zip
$ cd protobuf-master
$ ./autogen.sh
$ make && make check
$ sudo make install

——

2. 再安装GPU加速 caffe

这一阶段,我们又分成两步走。:( 受不了,真当我们是小白呀<-_->

2.1 安装Nvidia显卡驱动
  • 首先得知道自己的显卡型号。
    楼主是电脑显卡型号 GTX 970,怎么感觉不是土豪版。然后去Nvidia官网下载最新的驱动。趁着下载驱动的时候,我们来做一些羞羞的事情。

    $ lspci -nn | grep VGA
    
  • 禁止默认显卡驱动
    打开**/etc/modprobe.d/blacklist.conf**文件,添加**blacklist nouveau**禁止centos默认安装的显卡驱动。阻止kernel加载nouveau模块(非必要操作)修改**/boot/grub/grub.conf**,【#vim /boot/grub/grub.conf】,在kernel行的末尾加上 rdblacklist=nouveau
blacklist nouveau
  • 安装 kernel-devel,**DKMS**与 kernel-headers
    若你使用*yum*安装,就会发现安装的内核源码版本是*2.6.32-504.el6.x86_64*,什么鬼?若你不知不觉的往下做,毫无疑问,在编译内核时会给你一个大大的错。若聪明的你绕过了找不到源码的错无,成功编译出新内核,那只有恭喜你。因为,会在某个风和日丽的早上,你打开电脑发现自己的系统怎么成了**centos 6.6**了。什么?你能忍受。可是作为人送诚信小郎君的我,不能忍呀。解决方法如下:
    上这个网站,找到*kernel-devel-2.6.32-431.29.2.el6.x86_64.rpm*与*kernel-devel-2.6.32-431.29.2.el6.x86_64.rpm*下载到本地。
$ sudo yum install kernel-devel-2.6.32-431.29.2.el6.x86_64.rpm kernel-devel-2.6.32-431.29.2.el6.x86_64.rpm

然后你就可以在**/usr/src/kernels/**下找到源码了。还需一步,安装**dkms**,让它帮助我们编译安装驱动模块。

$ yum install dkms
$ sudo cp -r /usr/src/kernels/2.6.32-431.29.2.el6.x86_64/ /usr/src/kernels/2.6.32-431.el6.x86_64/
  • 重新建立**initramfs image**文件
$ mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
$ dracut /boot/initramfs-$(uname -r).img $(uname -r)
  • 文本模式
    修改**/etc/inittab**,使系统开机进入init 3文本模式:#vim /etc/inittab
    将最后一行“id:**5**:initdefault:”修改成“id:**3**:initdefault:”(不包含引号)。等安装驱动文件下载完成之后
$ reboot
  • 安装
    启动后,会进入文本界面。然后*cd*进入驱动程序所在目录,开始安装
$ chmod +x NVIDIA-Linux-XXXX.run
$ ./NVIDIA-Linux-XXXX.run

在一番同意,确定之后,驱动就安装好了。修改**/etc/inittab**,改回图形界面。

$ reboot

安装成功,登陆后在系统- 首选项里可以看到NVIDIA X Server Settings菜单,可以查看基本信息及进行一些设置。

2.1 安装CUDA
$ chmod +x cuda_6.5_XXXX.run
$ ./cuda_6.5_XXXX.run

跳过第一项的驱动安装,后面要么yes要么默认就可以了。注意最后将

  • /usr/local/cuda/bin加入**PATH**
  • /usr/local/cuda/lib64加入**/etc/ld.so.conf**
  • 安装
    然后就是回安装caffe的流程上了。注释 CPU_ONLY := 1,再次编译。当做到这一步时,你的小脸上是否出现了笑容。
时间: 2024-10-03 09:44:44

Centos 6.5 install caffe+Nvidia driver+cuda 6.5的相关文章

Install Nvidia driver 367.18 or later

Install Nvidia driver 367.18 or later from ppa:graphics-drivers/ppa as follows: sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-367 sudo apt-get install mesa-common-dev sudo apt-get install freeglut3-d

CentOS 7中以runfile形式安装CUDA 9.0

GPU: NVIDIA Tesla K40C Enter the 'root' mode: $ su - 1. Pre-installation 1.1 Verify you have a CUDA-capable GPU $ lspci | grep -i nvidia 1.2 Verify you have a supported version of Linux $ uname -m && cat /etc/*release 1.3 Verify the system has gcc

Ubuntu 18.04 nvidia driver 390.48 安装 TensorFlow 1.12.0 和 PyTorch 1.0.0 详细教程

最近要在个人台式机上搭建TensorFlow和PyTorch运行环境,期间遇到了一些问题.这里就把解决的过程记录下来,同时也可以作为安装上述环境的过程记录. 如果没有遇到类似的问题,想直接从零安装上述两个包的运行环境的,请直接阅读第三部分. 一.硬件和环境配置: 1)操作系统:Ubuntu 18.04: 2)NVIDIA Driver Version :390.48:(可通过nvidia-smi命令查到) 3)GPU:GTX 1080: (可通过nvidia-smi命令查到) 4)已安装CUDA

Install Tensorflow GPU with CUDA 10.1 for python on Windows

How to install Tensorflow GPU with CUDA 10.0 for python on Windows 在cuda 10.0的windows上安装Tensorflow GPU, python ref: https://www.pytorials.com/how-to-install-tensorflow-gpu-with-cuda-10-0-for-python-on-windows/ Before start, Notations neet to know: Ta

# Ubuntu16.04安装nvidia驱动+CUDA+cuDNN

Ubuntu16.04安装nvidia驱动+CUDA+cuDNN 准备工作 1.查看GPU是否支持CUDA lspci | grep -i nvidia 2.查看Linux版本 uname -m && cat /etc/*release nvidia驱动 1. 先卸载原有N卡驱动 #for case1: original driver installed by apt-get: sudo apt-get remove --purge nvidia* #for case2: original

Compile NVIDIA driver on Lenovo W520 with Debian

Originally, I installed an Ubuntu using Wubi on my company's laptop (Lenovo W520). One purpose is for fun, the other is to use some instant messengers, which are blocked by default on our Windows system. Now, having come to Switzerland, Skype is no d

centos 5.10 install lnmp

一.Install MySQL on CentOS/Red Hat (RHEL) 6.5/5.10 二.Install Nginx/PHP-FPM on CentOS/RHEL centos 5.10 install lnmp

Centos 6.3 install Darwin Streaming Server 6.0.3

网上说的天花乱坠,都是抄来抄去,没有一个是经过自己试验,然后才写的 周氏一族,整理技术文档,给下一代留点教程...... 1.服务器系统准备 2.安装文件准备 2.1  源码文件,请上官网,下载,或者用我下面的地址也可以. http://dss.macosforge.org/downloads/DarwinStreamingSrvr6.0.3-Source.tar 2.2  下载附件  dss_patch [里面有两个文件 dss-6.0.3.patch 和 dss-hh-20080728-1.

Failed to install the hcmon driver

在安装虚拟机的时候出现"Failed to install the hcmon driver"错误,是之前VM没有卸载干净,提供两个参考解决方法: 1:在C盘的驱动文件夹也就是"C:\Windows\System32\drivers"下 把hcmon.sys驱动文件删除,然后重启,就OK了. 2:如果在删除的时候遇到权限问题,尝试下直接重启再安装VM.