Deep Learning용 Workstation 구축 기록 그 4(nVidia Docker의 인스톨)
그 3 에서 Fedora25 및 CUDA 설치가 완료되었습니다.
드디어 Deep Learning을 시작하고 싶다! 그렇다는 것을 알 수 있지만, 그 전에 Docker와 nvidia-docker를 설치합시다.
Docker 컨테이너에서 작업을 수행해야 하는 세 가지 이유
Deep Learning은 아직 새로운 기술이며 (정평은 있지만) 시든 방법이라는 것이 없습니다.
앞으로도 다양한 수법이 나올 것이며, 정답이라는 방법도 아직 없는 것이 현상입니다.
뭔가 환경을 바꾸고 싶었을 때, Docker 컨테이너로 새롭게 구축하는 것으로 「이전의 환경이 남아 있었기 때문에 안정하지 않는다」라고 하는 일이 없어집니다.
또, 「새로운 환경을 시험해 보았지만 역시 전의 쪽이 좋았다」가 되었을 때도 절환을 비교적 간단하게 할 수 있습니다.
그렇다면 ESXi 또는 VirtualBox에서도 좋습니까?
ESXi나 VirtualBox에서도 GPU를 패스 스루 할 수 있으면 문제없이 사용할 수 있다고 생각합니다.
하지만 오버헤드가 Docker에 비해 높은 일이나, "한 번에 하나의 가상 머신 밖에 GPU를 사용할 수 있는 것"이 단점이 됩니다.
호스트 직접 쪽이 오버헤드는 적다!
제발 호스트에서 직접 사용하십시오.
그 쪽이 제일 성능을 발휘할 수 있는 것은 틀림없고, 우선은 해 본다는 것은 무엇보다 중요합니다.
KickStart를 사용하면 거기까지 재구축하는 번거로움이 없다고 생각합니다.
그래도 Docker도 재미있을 것 같다면,이 기사가 뭔가 도움이되면 다행입니다.
Docker 설치
Docker CE 설치
공식 사이트 와 같이 실행하면 됩니다.
특히 달리 명시하지 않는 한 모두 root로 실행합니다.
기존 Docker 제거
dnf remove docker docker-common container-selinux docker-selinux docker-engine
리포지토리 설치
dnf install dnf-plugins-core
dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
dnf config-manager --set-enabled docker-ce-edge
Docker CE (Comunity Edition) 설치
dnf install docker-ce
Docker Compose 설치
업데이트에 쉽게 대응하기 위해 pip를 사용하여 설치합니다.
pip3 업데이트
pip3 install -U pip
docker-compose 설치
pip3 install docker-compose
일반 사용자의 Docker 이용 등록
Docker는 모든 프로세스가 루트로 실행됩니다.
따라서 일반적으로 일반 사용자는 실행할 수 없습니다.
일반 사용자에게 Docker 실행 권한을 부여하려면 다음을 수행합니다.
usermod -aG docker <ユーザー名>
nVidia Docker 설치
여기 의 CentOS 절차에 따라 설치합니다.
wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.1/nvidia-docker-1.0.1-1.x86_64.rpm
rpm -i /tmp/nvidia-docker*.rpm && rm /tmp/nvidia-docker*.rpm
systemd 수정
systemctl edit nvidia-docker
다음을 추가합니다.
[서비스]
ExecStart=
ExecStart=/usr/bin/nvidia-docker-plugin -s $SOCK_DIR -d/usr/local/nvidia
드라이버 배포 디렉토리 만들기
mkdir -p /usr/local/nvidia
chown -R nvidia-docker. /use/local/nvidia
실행 테스트
Docker를 실행하려는 사용자로 다음을 수행합니다.
nvidia-docker run --rm nvidia/cuda nvidia-smi
아래와 같은 표시가 나오면 완료입니다.
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 381.22 Driver Version: 381.22 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 108... Off | 0000:05:00.0 On | N/A |
| 23% 27C P8 10W / 250W | 223MiB / 11169MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX 108... Off | 0000:06:00.0 Off | N/A |
| 23% 30C P8 8W / 250W | 138MiB / 11172MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 2 GeForce GTX 108... Off | 0000:09:00.0 Off | N/A |
| 23% 27C P8 9W / 250W | 138MiB / 11172MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 3 GeForce GTX 108... Off | 0000:0A:00.0 Off | N/A |
| 23% 31C P8 8W / 250W | 138MiB / 11172MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
+-----------------------------------------------------------------------------+
Reference
이 문제에 관하여(Deep Learning용 Workstation 구축 기록 그 4(nVidia Docker의 인스톨)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kunitaya/items/4cc88aeeaf0e9eaf9b6b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)