1.进行配置,首先刚装的系统需要
sudo apt-get update
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
sudo apt-get install build-essential
2.NVIDIA驱动安装
禁用 nouveau
安装好依赖包后需要禁用 nouveau,只有在禁用掉 nouveau 后才能顺利安装 NVIDIA 显卡驱动,禁用方法就是在 sudo vim /etc/modprobe.d/blacklist.conf文件中添加几条禁用命令
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
执行以下命令来禁止内核中nouveau
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
之后按照教程重启
sudo update-initramfs -u
reboot
此时已经禁用ubuntu自带的显卡驱动,界面分辨率暂时不正常,没关系,进行下一步。
安装NVIDIA驱动
进入Ubuntu, 按 ctrl+alt+F1 进入tty1, 登录tty1后输入如下命令:
sudo service lightdm stop
sudo ./NVIDIA.run -no-x-check -no-nouveau-check -no-opengl-files
-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
这样再reboot,就不会出现循环登录的问题。
重启后,界面分辨率就正常了
nvidia-smi可以查看驱动版本
3.CUDA10.0安装
$ sudo ./cuda-linux.10.0.130-24817639.run
安装完成后需要在/etc/profile中
①添加环境变量,
$ PATH=/usr/local/cuda-10.0/bin:$PATH$ export PATH
保存后, 执行下列命令, 使环境变量立即生效
$source /etc/profile
②添加lib路径,
在/etc/ld.so.conf.d/新建文件cuda.conf,并编辑
cd /etc/ld.so.conf.d
$ sudo touch cuda.conf
$ sudo gedit cuda.conf
/usr/local/cuda-10.0/lib64
执行下列命令使之立刻生效
$ sudo ldconfig
继续,安装CUDA SAMPLE,安装下列依赖包
$sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
然后用下述命令安装sample文件
$sudo ./cuda-samples.10.0.130-24817639-linux.run
完成后编译Sample文件,更若干分钟后
$ cd /usr/local/cuda-10.0/samples
$ sudo make
编译完成后, 进入 samples/bin/x86_64/linux/release
$ sudo ./deviceQuery
如果出现下列显卡信息,则驱动及cuda安装成功:
./deviceQuery Starting...
CUDA Device Query (Runtime API) version (CUDART static linking)
Detected 1 CUDA Capable device(s)
Device 0: "GeForce GTX 1080 Ti"
CUDA Driver Version / Runtime Version 10.0 / 10.0
CUDA Capability Major/Minor version number: 6.1
Total amount of global memory: 11175 MBytes (11718230016 bytes)
(28) Multiprocessors, (128) CUDA Cores/MP: 3584 CUDA Cores
GPU Max Clock rate: 1582 MHz (1.58 GHz)
Memory Clock rate: 5505 Mhz
Memory Bus Width: 352-bit
L2 Cache Size: 2883584 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 supports Compute Preemption: Yes
Supports Cooperative Kernel Launch: Yes
Supports MultiDevice Co-op Kernel Launch: Yes
Device PCI Domain ID / Bus ID / location ID: 0 / 3 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 10.0, CUDA Runtime Version = 10.0, NumDevs = 1
Result = PASS
4.安装blas
==============================BLAS=============================
$sudo apt-get install libatlas-base-dev
$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
5.python安装
选择一个适合你的IDE运行环境,我是用的是Spyder,因为它内置了 iPython 环境,Caffe有不少的程序是基于 iPython 环境完成的。安装方法很简单,直接在Ubuntu软件中心搜索“spyder”即可安装。
6.MATLAB2018a安装
matlab2018a 文件在下面吾爱破解给出:
https://www.52pojie.cn/thread-713093-1-1.html
最好在百度网盘下载,文件太大容易挂掉,下载完成后有3个文件
这里写图片描述
crack文件里面有密钥、许可证文件和需要替换的文件,和win版本是一样的。
(1)在安装包目录下打开Linux终端,执行下列命令:
$ sudo mkdir /mnt/matlab
$ sudo mount -o loop R2018a_glnxa64_dvd1.iso /mnt/matlab
$ cd /mnt/
$ sudo ./mnt/matlab/install
经过上面步骤就能看到安装界面了,默认安装路径在/usr/local/MATLAB/R2018a/ ,
(2)注意,上面只是挂载了第一个安装包,等安装到60%左右的时候会提示插入第二张CD,此时在刚才安装包目录下再次打开一个终端,执行
sudo mount -o loop R2018a_glnxa64_dvd2.iso /mnt/matlab
挂载第二张CD。
(3)安装完成后,将crack里面的R2018a/bin 文件复制替换到安装目录下/usr/local/MATLAB/R2018a/
这里写图片描述
$ sudo cp -rvf R2018a/bin /usr/local/MATLAB/R2018a/
(4)接下来在/usr/local/MATLAB/R2018a/bin 目录下打开matlab
$ sudo ./matlab
7. 升级GCC-6.3.0,为了可以调用caffe的matlab接口:
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libisl-dev
sudo apt-get install flex
sudo apt-get install zlib1g-dev
接下来就是编译安装gcc6.3,源码在官网的镜像里可以找到,随便选一个ftp服务器,然后在releases分支里找到gcc6.3下载,之后解压:
cd gcc-6.3.0/
mkdir build
cd build/
sudo ../configure --prefix=/usr/local/gcc-6.3 --disable-multilib --with-system-zlib --enable-languages=c,c++ --with-gmp --with-mpfr --with-mpc --with-isl
sudo make -j12
sudo make install
如果你需要gcc编译其他语言的话,可以在languages那里添加。make的过程非常漫长,就算我用了12个线程跑,也花了10分钟左右。
因为我们删除了gcc的链接,因此为了更方便地使用gcc,需要重新链接
cd /usr/bin
sudo rm gcc
sudo ln -s /usr/local/gcc-6.3/bin/gcc gcc
sudo rm g++
sudo ln -s /usr/local/gcc-6.3/bin/g++ g++
8. caffe的安装
先下载caffe,https://github.com/BVLC/caffe
(1). 安装pycaffe必须的一些依赖项:
$ sudo apt-get install -y python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags cython ipython
$ sudo apt-get install -y protobuf-c-compiler protobuf-compiler
(2).切换到Caffe的文件夹,生成Makefile.config配置文件,执行:
$ cp Makefile.config.example Makefile.config
(3). 配置Makefile.config文件(仅列出修改部分)
a. 启用GPU,添加注释"#"
# CPU_ONLY := 1
b. 配置一些引用文件(增加部分主要是解决新版本下,HDF5的路径问题)
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
d. 配置路径,实现caffe对Python和Matlab接口的支持
PYTHON_LIB := /usr/local/lib
MATLAB_DIR := /usr/local/MATLAB/R2018a
(4)编译caffe
(-j8)是使用CPU的多核进行编译,可以极大地加速编译的速度,建议使用。
$ make all -j12
$ make test -j12
$ make runtest -j12
编译Python和Matlab用到的caffe文件
$ make pycaffe -j12
$ make matcaffe -j12