OpenBLAS

Ubuntu 14.04 LTS에 기본적으로 설치된 BLAS(Basic Linear Algebra Subprograms)는 속도가 느리기 때문에, OpenBLAS를 설치한다.

OpenBLAS를 컴파일하기 위해서는 gfortran이 필요하므로 아래와 같이 의존 패키지를 설치힌다.

$ sudo apt-get install gfortran

아래와 같이 설치한다.

# GitHub에서 저장소를 복제한다.
$ git clone https://github.com/xianyi/OpenBLAS.git
$ cd OpenBLAS

# 현재 공사중이다. 최신 릴리즈 버전으로 checkout
$ git checkout v0.2.15

# -j 옵션은 동시에 처리할 job의 수, 보통 코어 또는 논리 프로세서 수로 설정
# NO_AFFINITY와 USE_OPENMP는 OpenMP를 사용하기 위해 설정 (설정하지 않을 경우, Torch에서 오류 발생)
$ make FC=gfortran -j8 NO_AFFINITY=1 USE_OPENMP=1 
$ sudo make PREFIX=/opt/OpenBLAS install

# 라이브러리 설정
$ echo "/opt/OpenBLAS/lib" | sudo tee /etc/ld.so.conf.d/openblas.conf
$ sudo ldconfig

# OpenBLAS 라이브러리의 우선순위 설정 - SciPy 모듈 사용시 필요
$ sudo update-alternatives --install /usr/lib/libblas.so.3 libblas.so.3 /opt/OpenBLAS/lib/libopenblas.so 50