TensorRT를 실행하려면 NVIDIA GPU 드라이버와 CUDA와 관련한 환경 설치를 먼저 진행하고 이후 NGC 컨테이너를 이용해 TensorRT를 실행할 수 있다.
출처 : Optimizing and Accelerating AI Inference with the TensorRT Container from NVIDIA NGC
TensorRT 환경 설치
TensorRT 설치를 위해서는 GPU가 있는 우분투 환경이 필요하다. 이어서 다음 순서대로 설치를 진행한다.
NVIDIA GPU 드라이버
를 설치- Cuda 설치
먼저 NVIDIA GPU 드라이버
설치를 진행한다. 권장 드라이버를 자동으로 설치하려면 아래 명령을 입력한다.
sudo ubuntu-drivers autoinstall
원하는 버전으로 수동 설치하려면 아래 명령을 입력한다. (버전 확인)
sudo apt install nvidia-driver-440
이후 리부팅을 한다.
sudo reboot
이어서 nvidia-smi를 확인한다. 작동하지 않는다면 문제점 점검이 필요하다.
nvida-smi
이어서 cuda 배포판을 다운로드 후 설치한다.
sudo dpkg -i cuda-repo-ubuntu1804–10–0-local-10.0.130–410.48_1.0–1_amd64.deb
sudo apt-key add /cuda-repo-10–0-local-10.0.130.410.48/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda
TensorRT 설치
NVIDIA GPU 드라이버와 CUDA 설치가 완료되었다면 TensorRT 실행 환경 설치를 진행한다. NVIDIA 시스템에 맞는 TensorRT를 직접 설치할 수 있다.
[직접설치 명령 예시]
sudo dpkg -i nv-tensorrt-repo-ubuntu1804-cuda10.0-trt6.0.1.5-ga-20190913_1-1_amd64
sudo apt-key add /var/nv-tensorrt-repo-ubuntu1804-cuda10.0-trt6.0.1.5-ga-20190913_1-1_amd64/7fa2af80.pub
sudo apt-get update
sudo apt-get install tensorrt
# this is for python2 installation
sudo apt-get install python-libnvinfer-dev
#this is for python3 installation
sudo apt-get install python3-libnvinfer-dev
sudo apt-get install uff-converter-tf
sudo apt-get install onnx-graphsurgeon
dpkg -l | grep TensorRT
NVIDIA GPU를 이용한다면 NVIDIA 공식 컨테이너인 NVIDIA NGC 딥 러닝 프레임워크 컨테이너(이하 NGC 컨테이너)를 이용한다. NGC 컨테이너는 도커 기반으로 TensorRT를 실행할 수 있게 해 준다. 도커 19.03 이상 기준으로 컨테이너 시작 명령은 다음과 같다.
docker run --gpus all -it --rm -v local_dir:container_dir nvcr.io/nvidia/tensorrt:xx.xx-py3
도커 19.03 미만이라면 아래 명령어를 이용한다.
nvidia-docker run -it --rm -v local_dir:container_dir nvcr.io/nvidia/tensorrt:xx.xx-py3
컨테이너 내에서 TensorRT C++ 샘플 실행이 가능하다.
cd /workspace/tensorrt/samples
make -j4
cd /workspace/tensorrt/bin
./sample_mnist
공간 절약을 위해 파이썬 종속성이 설치 되지 않았기 때문에 다음 명령을 실행해 파이썬을 설치한다.
/opt/tensorrt/python/python_setup.sh