第一步:安装nvidia显卡驱动 由于是台式机,显示器屏幕比较大,所以刚装好Ubantu16.04系统后分辨率比较 低,看起来很不舒服,所以可以手动修改一下grub文件从而来提高分辨率,所以我们可以在终端输入 sudo vim/etc/default/grub 找到下面这几行: # The resolution used on graphicalterminal # note that you can use only modeswhich your graphic card supports via VBE # you can see them in real GRUB withthe command 'vbeinfo' # GRUB_GFXMODE=640×480 往最后添加一行设置自己想要的分辨率,推荐1920x1080,只需要增加下面一行: GRUB_GFXMODE=1920×1080 #这里分辨率自行设置 理论上设置完以后只需要在终端编辑 sudo update-grub 从而进行更新grub,重新启动Ubuntu系统后就能生效了,但是,我们现在还没有安装显卡驱动,所以该次分辨率设置不能生效,所以现在我们应该做的工作是下载显卡驱动进行安装。 我们打算直接使用Ubuntu命令进行安装,要使用Ubuntu的命令进行安装,首先要做的就是更新Ubuntu16.04的源,终端输入 cd /etc/apt/ #进入Ubuntu高级软件包工具目录 sudo cp sources.list sources.list.bak #先备份原来的源 sudo vi sources.list #编辑sources.list 把下面的源添加到source.list中: deb http://mirrors.ustc.edu.cn/ubuntu/ xenial mainrestricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-securitymain restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updatesmain restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposedmain restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backportsmain restricted universe multiverse deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial mainrestricted 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-updatesmain 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 我们继续来使用add-apt-repository脚本添加英伟达驱动ppa到当前库中并且自动导入公钥。 sudo add-apt-repositoryppa: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-dev 安装完成后就可以重启系统,然后GTX1060显卡驱动就会生效,由于先前我们设置好了分辨率,所以重新启动后我们的显示器显示的图像就会舒服多了。 重启完以后进行测试: 终端输入: nvidia-smi 出现下面这种效果就表示安装成功了。 第二步:cuda安装 所需文件:cuda_8.0.27_linux.run、cudnn-8.0-linux-x64-v5.1.tgz 我的百度云盘链接:http://pan.baidu.com/s/1boC8NAB 密码:sbzk 安装cuda8.0 进入到cuda_8.0.27_linux.run所在目录,在终端执行命令如下: sh cuda_8.0.27_linux.run -override 按下上面命令后,安装程序随即便启动了。接下来执行这几步操作: 1、一直按空格到最后,然后输入accept接受条款。 2、输入n不安装nvidia图像驱动,因为我们先前已经安装过了。 3、输入y安装cuda8.0工具。 4、回车确认cuda默认安装路径:/user/local/cuda-8.0。 5、输入y用sudo权限运行安装,输入密码。 6、可以输入y或者n安装或者不安装指向/usr/local/cuda的符号链接。 7、输入y安装CUDA8.0Samples,以便后面进行测试。 8、回车确认CUDA8.0Samples默认安装路径:/home/自己的用户名,该安装路径测试完就可以删除了。 安装cudnnv5.1 先进入到cudnn-8.0-linux-x64-v5.1.tgz所在目录,然后解压该文件: tar zxvf cudnn-8.0-linux-x64-v5.1.tgz 解压后会产生一个cuda目录,进入cuda/include目录下,执行如下操作: cd cuda/include/ sudo cp cudnn.h /usr/local/cuda/include/ #复制头文件 再进入cuda/lib64目录下,执行如下操作: cd ../lib64 #打开lib64目录 sudo cp lib* /usr/local/cuda/lib64/ #复制库文件 给所有用户增加这些文件的读权限 sudo chmod a+r/usr/local/cuda/include/cudnn.h sudo chmod a+r /usr/local/cuda/lib64/libcudnn* 建立软链接 首先在终端输入如下命令: cd /usr/local/cuda/lib64/ sudo rm -rf libcudnn.so libcudnn.so.5 sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5 sudo ln -s libcudnn.so.5 libcudnn.so 设置环境变量,终端输入 sudo gedit /etc/profile 在末尾加入 PATH=/usr/local/cuda/bin:$PATH export PATH 保存后,创建链接文件 sudo vim /etc/ld.so.conf.d/cuda.conf 按a进入插入模式,增加下面一行 /usr/local/cuda/lib64 最后在终端输入sudo ldconfig使链接生效 ldconfig原理为如下链接 链接:http://blog.csdn.net/huangjin0507/article/details/50372721 注意:我在执行ldconfig命令时候遇到下面的错误: /sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符号连接 /sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符号连接 原因为:系统找的是一个符号连接,而不是一个文件。这应该是个bug。 解决方法: 1、对这两个文件更名 2、重新建立符号连接 在终端执行下面的命令 sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1 sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1 cuda Samples测试 打开cuda 8.0 Samples默认安装路径,终端输入 cd /home/username/NVIDIA_CUDA-8.0_Samples #username是自己的用户名 sudo make all -j4 #4核 小技巧: 查看CPU核心数:grep "cpu cores" /proc/cpuinfo|uniq 查看CPU个数:grep "physical id"/proc/cpuinfo|sort -u|wc -l 每个物理CPU上逻辑CPU个数:grep "siblings"/proc/cpuinfo|uniq 用上面的命令查看自己电脑的CPU核数。 执行完上面的make all –j4命令后会出现“unsupported GNU version! gcc versions later than 5.3 arenot supported!”的错误。这是由于GCC版本过高导致的。 解决办法: 终端执行如下命令 cd /usr/local/cuda-8.0/include sudo cp host_config.h host_config.h.bak sudo gedit host_config.h 接着可以通过ctrl+f寻找有“5.3”的地方,因为该文件只有一处5.3,如下 # if __GNUC__ > 5 || (__GNUC__ == 5&& __GNUC_MINOR__ > 3) #error -- unsupported GNU version! gccversions later than 5.3 are not supported! 将两个5改成6,即 #if __GNUC__ > 6 || (__GNUC__ == 6&& __GNUC_MINOR__ > 3) 保存退出,继续在终端输入 cd /home/username/NVIDIA_CUDA-8.0_Samples #username是自己的用户名 sudo make all -j4 #4核 等待编译完成 完成后继续向终端输入 cd bin/x86_64/linux/release ./deviceQuery 然后出现如下场景,表示已经成功安装了cuda了: 三、依赖包安装 终端输入 sudo apt-get install build-essential #必要的编译工具依赖 sudo apt-get install libprotobuf-devlibleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommendslibboost-all-dev sudo apt-get install libatlas-base-dev sudo apt-get install libgflags-devlibgoogle-glog-dev liblmdb-dev 四、安装python的pip和easy_install 终端输入 cd wget --no-check-certificatehttps://bootstrap.pypa.io/ez_setup.py sudo python ez_setup.py --insecure wget https://bootstrap.pypa.io/get-pip.py sudo python get-pip.py 五、安装科学计算和python所需的部分库 终端输入 sudo apt-get install libblas-devliblapack-dev libatlas-base-dev gfortran python-numpy 六、安装git,拉取源码 终端输入 sudo apt-get install git git clone https://github.com/BVLC/caffe.git 七、安装python依赖 先执行命令 cd /home/username/caffe/python #username是你自己的用户名 终端输入 sudo apt-get install python-pip 安装pip sudo su for req in $(cat"requirements.txt"); do pip install -ihttps://pypi.tuna.tsinghua.edu.cn/simple $req; done 最后按Ctrl+D退出sudo su模式 八、编译caffe 终端输入 cd /home/pawn/caffe cp Makefile.config.example Makefile.config gedit Makefile.config 然后将USE_CUDNN := 1取消注释, 然后将INCLUDE_DIRS :=$(PYTHON_INCLUDE) /usr/local/include后面打上一个空格 然后添加/usr/include/hdf5/serial如果没有这一句可能会报一个找不到hdf5.h的错误 接着在终端输入 make all -j4 make过程中出现找不到lhdf5_hl和lhdf5的错误, 解决方案: 在计算机中搜索libhdf5_serial.so.10.1.0,在终端执行如下命令: sudo find -name libhdf5_serial.so.10.1.0 找到后进入所在目录下 sudo ln libhdf5_serial.so.10.1.0 libhdf5.so sudo ln libhdf5_serial_hl.so.10.0.2libhdf5_hl.so 最后在终端输入sudo ldconfig使链接生效 原终端中输入make clean清除第一次编译结果 再次输入make all -j4重新编译 最后在终端输入 make test -j4 make runtest -j4 make pycaffe -j4 make distribute 生成发布安装包 这时候可以测试一下python,终端输入 cd /home/pawn/caffe/python python import caffe 如果不报错就说明编译成功 九、设置python路径 在使用make pycaffe -j4命令完成caffe的python接口生成之后,还需要将python接口的路径进行设置。 终端执行 gedit ~/.bashrc 来对路径进行设置,在文件最后一行加入路径: exportPYTHONPATH=/home/startag/caffe/python/:/home/startag/caffe/python/caffe/ 注销或者重启,路径生效。 解释:PYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面寻找。 敲下import urllib后,Python解释器会逐个从上面的路径列表选出一个路径然后搜索urllib模块直到找到为止。这里最后在 D:\Python3\lib 下找到(ubuntu自带python3) 十、mnist测试 下载mnist数据集,终端输入 cd /home/pawn/caffe/data/mnist/ /get_mnist.sh #获取mnist数据集 在/home/pawn/caffe/data/mnist/目录下会多出训练集图片、训练集标签、测试集图片和测试集标签等4个文件 mnist数据格式转换,终端输入 cd /home/pawn/caffe/ ./examples/mnist/create_mnist.sh 必须要在第一行之后运行第二行,即必须要在caffe根目录下运行create_mnist.sh 此时在/caffe/examples/mnist/目录下生成mnist_test_lmdb和mnist_train_lmdb两个LMDB格式的训练集和测试集 LeNet-5模型描述在/caffe/examples/mnist/lenet_train_test.prototxt Solver配置文件在/caffe/examples/mnist/lenet_solver.prototxt 训练mnist,执行文件在/caffe/examples/mnist/train_lenet.sh 终端输入 cd /home/pawn/caffe/ ./examples/mnist/train_lenet.sh (责任编辑:IT) |