โ””โ”€โ”€ README.md /README.md: -------------------------------------------------------------------------------- 1 | How to install Caffe on Ubuntu 16.04 with GPU (Cuda 8.0.61, CuDNN 6.0) 2 | 3 | (Tested on GeForce GT 635M and GeForce GTX 660) 4 | 5 | 6 | 7 | install nvidia drivers (go to software&updates - choose last proprietary tested) - not needed if use cuda.run file 8 | 9 | download cuda 8.0 https://developer.nvidia.com/cuda-release-candidate-download 10 | 11 | download cudnn 6.0 Library for Linux https://developer.nvidia.com/rdp/cudnn-download 12 | 13 | 14 | ```shell 15 | 16 | sudo apt-get install -y build-essential cmake git pkg-config 17 | 18 | sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler 19 | 20 | sudo apt-get install -y libatlas-base-dev 21 | 22 | sudo apt-get install -y --no-install-recommends libboost-all-dev 23 | 24 | sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev 25 | 26 | sudo apt-get install -y python-pip 27 | 28 | sudo apt-get install -y python-dev 29 | 30 | sudo apt-get install -y python-numpy python-scipy 31 | 32 | sudo apt-get install -y libopencv-dev 33 | ``` 34 | 35 | CUDA 36 | 37 | ```shell 38 | 39 | #for cuda.deb (I got Error Unmet dependencies for last vesrion of cuda 8.0.61 so better download .run file): 40 | #sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb 41 | #sudo apt-get update 42 | #sudo apt-get install cuda 43 | #sudo apt-get install cuda-drivers 44 | 45 | #for cuda.run file (follow the on-screen prompts): 46 | 47 | sudo sh cuda_8.0.61_375.26_linux.run 48 | 49 | #next for both 50 | 51 | echo 'export PATH=/usr/local/cuda-8.0/bin:$PATH' ยป ~/.bashrc 52 | 53 | echo 'export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc 54 | 55 | #restart terminal 56 | 57 | cd /usr/local/cuda-8.0/samples/ 58 | 59 | sudo make all -j8 60 | ``` 61 | 62 | CUDNN 63 | 64 | ```shell 65 | 66 | #create folder in home directory. for example 67 | 68 | mkdir ~/code 69 | 70 | cd ~/code 71 | 72 | tar -xzvf cudnn-8.0-linux-x64-v5.1.tgz #or extract cudnn file 73 | 74 | cd cuda/lib64/ 75 | 76 | sudo cp lib* /usr/local/cuda-8.0/lib64/ 77 | 78 | cd cuda/include/ 79 | 80 | sudo cp cudnn.h /usr/local/cuda-8.0/include/ 81 | ``` 82 | 83 | CAFFE 84 | 85 | ```shell 86 | 87 | cd code 88 | 89 | git clone https://github.com/BVLC/caffe.git 90 | 91 | cd caffe/python/ 92 | 93 | for req in $(cat requirements.txt); do sudo -H pip install $req --upgrade; done 94 | 95 | sudo apt-get update 96 | 97 | #export PYTHONPATH to your python folder in caffe folder (don't forget to write your user name and folder correctly) 98 | #for example: 99 | 100 | echo 'export PYTHONPATH=/home/user/code/caffe/python:$PYTHONPATH' >> ~/.bashrc 101 | 102 | 103 | cd /usr/lib/x86_64-linux-gnu 104 | 105 | sudo ln -s libhdf5_serial.so.10.1.0 libhdf5.so 106 | 107 | sudo ln -s libhdf5_serial.so.10.1.0 libhdf5_hl.so 108 | 109 | 110 | cd caffe 111 | 112 | cp Makefile.config.example Makefile.config 113 | 114 | 115 | #check make.config file in caffe folder: 116 | ``` 117 | uncomment: 118 | 119 | >USE_CUDNN := 1 120 | 121 | >WITH_PYTHON_LAYER := 1 122 | 123 | change: 124 | 125 | >CUDA_DIR := /usr/local/cuda-8.0 126 | 127 | >PYTHON_INCLUDE := /usr/include/python2.7 /usr/lib/python2.7/dist-packages/numpy/core/include 128 | 129 | >INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial 130 | 131 | >LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial 132 | 133 | ```shell 134 | cd caffe/build 135 | 136 | cmake .. 137 | 138 | cd code/caffe 139 | 140 | make all -j8 141 | 142 | make test 143 | 144 | sudo reboot 145 | 146 | make runtest 147 | 148 | cd code/caffe 149 | 150 | make pycaffe 151 | 152 | make distribute 153 | 154 | python 155 | 156 | import caffe 157 | ``` 158 | CONGRATS! 159 | --------------------------------------------------------------------------------