LightGBM 소스코드로 설치하기 (Linux, RTX30)

Kitsunetic·2020년 12월 23일
0

RTX30을 쓸 때는 Tensorflow, Pytorch 등 cuda를 쓰는 다른 프레임워크들도 잘 작동 안했듯이 LightGBM도 설치할 때 오류가 발생하는 것처럼 보여서 그냥 소스코드에서 직접 빌드해서 쓰기로 했다.

필요 소프트웨어

sudo apt update
sudo apt-get install --no-install-recommends git cmake build-essential libboost-dev libboost-system-dev libboost-filesystem-dev
sudo apt install cmake

그리고 CUDA 11.0 이상의 버전이 설치되어 있어야 함

LightGBM 빌드

빌드

git clone --recursive https://github.com/microsoft/LightGBM
cd LightGBM
mkdir build
cd build
cmake -DUSE_GPU=1 ..
make -j6

cmake에서 Could NOT find OpenCL (missing: OpenCL_INCLUDE_DIR) 오류가 나면 opencl 경로를 못찾아서 그런 것이므로 옵션으로 추가해준다.

cmake -DUSE_GPU=1 -DOpenCL_LIBRARY=/usr/local/cuda/lib64/libOpenCL.so -DOpenCL_INCLUDE_DIR=/usr/local/cuda/include/ ..

LightGBM 폴더에 lightgbm, lib_lightgbm.so 파일이 생성되었다면 빌드 성공

Python Interface 설치

cd ../python-package
conda activate lgbm # conda를 안 쓴다면 그냥 pip3로 해도 될 것같음
python install setup.py --precompile

참고로 GPU 버전으로 설치했다고 GPU에서 연산이 되는게 아니라, parameter에서 device 옵션을 gpu로 줘야지 GPU에서 연산이 된다.

참고자료

0개의 댓글