ubuntu+docker+nvidia/cuda로 YOLO 환경 구축

이것은 YOLO를 실행하는 환경을 구축할 때의 노트입니다.구름의 선택은 있지만 물리적 환경에서 구축되었다.실제로 컴퓨터를 조립한 후에 시간이 있기 때문에 회상하면서 쓴다.

하드웨어 구성


하드웨어 구성은 다음과 같은 형식을 채택한다.조립할 때 GPU를 설치하지 않고 운영 체제를 설치하고 GPU 드라이버를 설치한 후 하드웨어에 포함합니다.
마더보드: PRIME H270-PRO
CPU: Core i7 7700K BOX
GPU: ROG STRIX-GTX1070-O8G-GAMING
기본 메모리: Corsair CMK8GX4M2A2666C16 [DDR4PC4-21300 4GB2 그룹]
스토리지: ST4000DM004 [4TB SATA6007200]
전원: RM650x CP-9020091-JP
CPU 냉각기 H100iV2CW-9060025-WW
LAN 케이블 케이블 연결

Ubuntu16.04 LTS 데스크탑 USB 미디어 제작


위에서 운영체제이 문장를 확정한 토대에서 usb에서 시작하는 미디어를 만듭니다.

USB에서 OS 시작


BIOS를 통해 USB 부팅을 설정하고 Ubuntu를 시작하여 설치합니다.마법사가 표시되고 화면에 따라 설치됩니다.

하드 드라이브에서 운영 체제 시작


USB 설치가 완료되면 USB를 뽑고 BIOS 설정에 따라 HDD에서 시작합니다.

Nvidia-Driver 설치


여기 드라이버 버전을 확인합니다.


“384.90”.

드라이버 설치


다음은 명령으로 설치합니다.
sudo add-apt-repository ppa:xorg-edgers/ppa -y
sudo apt-get update
sudo apt-get install -y nvidia-384

마더보드에 GPU 설치


컴퓨터 전원을 끄고 GPU를 마더보드에 설치하십시오.설치가 완료되면 다음 명령을 통해 설치할 수 있는지 확인하고 시작합니다.
nvidia-smi

SSH 설정


마스터 컴퓨터는 MacBook Pro이기 때문에 동일한 네트워크에서 작업하기 위해 SSH 서버를 구축합니다.아주 간단한 설정만 했어요.

SSH 서버 설치

sudo apt-get install openssh-server

SSH 설정

vi /etc/ssh/sshd_config
루트 로그인 금지
PermitRootLogin no
재부팅
sudo systemctl restart ssh 

고정 IP 설정


SSH를 통한 연결을 위해 고정 IP를 설정합니다.버전이 좀 낡았지만이 문장
ipv4 192.168.1.200
네트워크 마스크 255.255.255.0
게이트웨이 192.168.1.1
DNS 서버 192.168.1.1
모범 사례를 찾습니다.
다시 시작합니다.

SSH 연결 확인


Mac의 터미널 열기
ssh [email protected]

넣었어.

CUI 모드에서 서버 시작


꼬르륵이면 아래면 돼요.
sudo systemctl set-default multi-user.target 

Nvidia-Docker 준비하세요.


호스트 환경을 오염시키지 않도록 Nvidia-docker를 설치합니다.호스트에 드라이버가 필요하지만 설치가 완료되었기 때문에 Docker를 설치합니다.
Docker는 여기를 따라 넣기만 합니다.
절차에 따라 진행하다.

Docker 설치 준비


패키지 업데이트
sudo apt-get update
HTTPS를 통한 apt 사용에 필요한 설치
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
docker 공식 GPG 키 추가
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
안정판을 넣기 위해 다음과 같은 조작을 실행합니다
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

Docker 설치


패키지 업데이트
sudo apt-get update
설치
sudo apt-get install docker-ce

sudo가 없는 상황에서docker를 실행합니다.

sudo usermod -aG docker user
다음 로그인 시 유효할 것 같습니다.

Nvidia-Docker 설치


Nvidia-Docker에 필요한 Nvidia-Driver와 Docker 설치가 완료되면 공식. 설치 절차에 따라 설치됩니다.
# Install nvidia-docker and nvidia-docker-plugin
wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.1/nvidia-docker_1.0.1-1_amd64.deb
sudo dpkg -i /tmp/nvidia-docker*.deb && rm /tmp/nvidia-docker*.deb

# Test nvidia-smi
nvidia-docker run --rm nvidia/cuda nvidia-smi

YOLO 환경 만들기


다음 명령을 사용하여 컨테이너 시작
nvidia-docker run nvidia/cuda:8.0-runtime-ubuntu16.04 bash

YOLO 설치


우리도 공식. 사이트에 따라 작업을 진행할 것이다.
cd ~/
git clone https://github.com/pjreddie/darknet
cd darknet
vim Makefile
GPU 활성화
GPU=1
make
make

욜로의 동작 확인


학습 결과 다운로드
wget https://pjreddie.com/media/files/yolo.weights
권장 프로세스 실행
./darknet detect cfg/yolo.cfg yolo.weights data/dog.jpg
결과
layer     filters    size              input                output
    0 conv     32  3 x 3 / 1   416 x 416 x   3   ->   416 x 416 x  32
    1 max          2 x 2 / 2   416 x 416 x  32   ->   208 x 208 x  32
    .......
   29 conv    425  1 x 1 / 1    13 x  13 x1024   ->    13 x  13 x 425
   30 detection
Loading weights from yolo.weights...Done!
data/dog.jpg: Predicted in 0.016287 seconds.
car: 54%
bicycle: 51%
dog: 56%
욜로를 시작할 환경이 됐습니다.

좋은 웹페이지 즐겨찾기