Skip to content

install_ubuntu_12.04

Young H. Oh edited this page Aug 26, 2015 · 14 revisions

Neuralix님이 올려주신 14.04 설치가이드


Caffe 설치 성공한 환경

  • Ubuntu 12.04 (3.2.0-84-generic)
  • Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
  • Nvidia GeForce GTX 650

본 문서가 설명하는 Caffe 설정 및 주의사항

  • GPU 사용가능(cuDNN은 제외1)
  • BLAS 라이브러리로 vecLib 사용(다만, 안정성에 문제가 있다고 알려져 있음.2)
  • Boost 1.55 사용

설치 과정

1) Homebrew 설치

Homebrew. OSX의 패키지 관리 툴입니다. Mac 유저면 대부분 아실것 같아서 구체적인 설치법은 생략합니다.

2) Anaconda 파이썬 설치

Anaconda Python. 파이썬의 한 종류인데, 여기서 설치되는 hdf5가 Caffe에서 사용된다고 합니다.

  • 사이트 들어가셔서 패키지 다운받고, 홈 폴더에 설치합니다.
  • .bash_profile에 PATH 추가합니다. 패키지 설치할 때, 자동으로 추가해주기도 합니다.
  export PATH=~/anaconda/bin:$PATH

6) Caffe 설치

  • Github에서 caffe를 다운 받습니다.
  git clone https://github.com/BVLC/caffe.git
  • 다운 받은 caffe 디렉토리에서 Makefile example을 복사해줍니다.
  cd caffe
  cp Makefile.config.example Makefile.config
  • 같은 디렉토리에서 Makefile.config 설정이 아래와 같이 되어있는지 확인합니다. PYTHON_INCLUDE 이하를 comment-out하시고, Anaconda python을 위한 설정을 해줍니다.
# Comment-out 해야하는 부분
# PYTHON_INCLUDE := /usr/include/python2.7 \
# 		/usr/lib/python2.7/dist-packages/numpy/core/include
...
# PYTHON_LIB := $(ANACONDA_HOME)/lib

# Anaconda python을 설치하였을 시의 setting
ANACONDA_HOME := $(HOME)/anaconda
PYTHON_INCLUDE := $(ANACONDA_HOME)/include \
		$(ANACONDA_HOME)/include/python2.7 \
		$(ANACONDA_HOME)/lib/python2.7/site-packages/numpy/core/include \
  • BLAS 설정을 확인합니다.
# BLAS는 Default 설정을 그대로 둠.(vecLib의 사용 여부는 확인되지 않음.)
BLAS := atlas
  • Cmake를 이용해 컴파일하기위해 annaconda python의 경로를 추가합니다.(HDF5 라이브러리를 인식하기위함.)
export CMAKE_PREFIX_PATH=~/anaconda:$CMAKE_PREFIX_PATH
  • caffe의 루트디렉토리에서 build 디렉토리를 생성하고 빌드합니다.
mkdir build
cd build
cmake ..
make
  • compile된 Caffe가 정상적으로 동작하는지 확인하기 위해 test를 수행합니다.
  make runtest

저는 아래와 같은 결과가 나왔습니다. 여기까지 되었으면 일단 성공적입니다.

[----------] Global test environment tear-down
[==========] 1160 tests from 198 test cases ran. (242354 ms total)
[  PASSED  ] 1160 tests.

  YOU HAVE 2 DISABLED TESTS
  • Python에서 caffe를 이용하시려는 분들은 아래와 같이 빌드 명령어를 실행합니다.
  make pycaffe

이후에 PYTHONPATH를 지정해주어야 합니다.

vi ~/.bash_profile
PYTHONPATH = CAFFE ROOT 디렉토리/python
source ~/.bash_profile

파이선에서 잘 돌아가는지 확인하기 위해, python을 실행한 뒤에

  import caffe

를 수행해봐서 정상적으로 라이브러리가 import되는지 확인해보시면 됩니다. (저 같은 경우에는 homebrew를 이용해서 설치하다보니 /usr/local/Cellar에 protobuf 등의 파이썬 라이브러리가 설치되는 바람에 PYTHONPATH에 protobuf의 라이브러리 위치를 더 추가해야했습니다.)

Footnotes

  1. 문서에서는 cuDNN을 사용한 caffe가 가장 빠르다고 되어있으나, cuDNN 6.5은 현재 OSX에서 CUDA 7.0과 호환이 되지 않는다는 이야기가 있어서 제외했습니다. CUDA 7.0을 설치하고, cuDNN만 써봤는데 예제 코드가 돌아가지 않았습니다.
  2. Apple에서 기본적으로 제공하는 BLAS 라이브러리입니다. 하지만, caffe repository에서는 vecLib이 약간의 문제가 있다고 합니다. 때문에, 다른 BLAS 라이브러리(Intel MKL 등)를 설치하는 방법이 있는데, 이와 관련해서는 hoondy님의 블로그를 참고하시면 될 것 같습니다.
Clone this wiki locally