본문 바로가기
개발환경/Tensorflow

NVIDIA NGC를 이용한 Tensorflow 개발환경구축 (Windows)

by misty2913 2022. 2. 22.
반응형

개요

이 글은 NVIDIA에서 제공하는 NGC (Nvidia GPU Cloud)에서 Tensorflow 이미지를 다운로드하여 간단한 개발환경을 구축하는 방법을 설명합니다.

 

Nvidia GPU Cloud (NGC)

NGC(Nvidia GPU Cloud)는 NVIDIA에서 제공하는 GPU 소프트웨어 패키지 플랫폼입니다. NVIDIA GPU를 사용하고 있는 연구자, 데이터 분석가, 개발자등을 대상으로 편리하게 컨테이너와 소프트웨어, 모델 등을 사용할 수 있도록 합니다. NGC 컨테이너 레지스트리의 컨테이너는 NVIDIA GPU에 최적화되었으며, 상위 클라우드 제공업체의 NVIDIA GPU, NVIDIA DGX™ 시스템, NGC Ready 시스템, 일부 NVIDIA TITAN 및 NVIDIA Quadro® GPU를 포함하는 PC 및 워크스테이션을 비롯한 다양한 NVIDIA GPU 플랫폼에서 작동합니다.

 

 
  • 도커 컨테이너 기반의 개발환경을 제공해함으로써 안정되고 간편한 설치 지원
  • Pytorch, Tensorflow, MATLAB 등 다양한 개발 컨테이너 지원
  • 미리 학습된 딥러닝 모델 지원

 


 

설치

설치 환경

PC Legion Y540-15IRH
GPU NVIDIA GeForce GTX 1660 Ti
GPU Driver GeForece Game Ready Driver 496.49, 2021.10.26
OS Windows 11

 


 

사전 설치

Docket Docker Desktop for Windows

 

설치방법

Docker Desktop 실행

  • 명령 프롬프트 실행
  • docker 명령어 입력을 통한 docker 정상 동작 확인

 

 

  • 명령 프롬프트 창에 복사한 명령을 붙여넣고 엔터를 치면 자동으로 tensorflow 이미지를 다운받는다. 약 10GB 정도의 대용량 파일임으로 다소 시간이 소모됨

 

  • 이미지가 다운로드 완료되면 Docker Desktop 에서 다운로드된 이미지 파일을 확인할 수 있으며, RUN 버튼 클릭 시 간편하게 컨테이너 생성 및 사용이 가능하다

 

 


 

컨테이너 상세 설정

GPU 연동 컨테이너 생성

    • PC의 GPU 연동, jupyter notebook 원격 연동 포트 설정, 호스트 PC와 공유폴더 설정을 반영한 컨테이너 생성 명령
      docker run -i -t --gpus all -p 8888:8888 --name tf2_py3 -v E:\Docker_ws\tf2_py3:/workspace/host_ws f6a96c23dd73 /bin/bash
      • run : 도커 컨테이너 생성 및 실행
      • — gpus all : 컴퓨터에 탑재된 GPU 모두 연결
      • -i -t : 컨테이너를 종료하지 않은체로 터미널의 입력을 계속해서 컨테이너에 전달하기 위해 사용
      • -p : 호스트 PC와 컨테이너 간의 포트(Port) 연결을 위해 사용 (호스트 포트:컨테이너 포트)
        • Jupyter Notebook으로 접속하기 위해 8888 포트 사용
      • -v : 호스트 PC와 컨테이너 간의 공유폴더 설정
        • 데이터 및 자료 이동 목적으로 설정 가능
      • --name tf_py3 : 컨테이너 이름 설정
      • f6a96c23dd73 : 이미지 ID
생성된 컨테이너
— gpus all 옵션으로 GPU 사용이 가능한 Tensorflow 컨테이너 생성
-v 옵션으로 컨테이너 내부 공유 폴더 생성 (컨테이너 내부)
-v 옵션으로 컨테이너 내부 공유 폴더 생성 (컨테이너 내부)
 

 

 

컨테이너 내부 GPU 연결 확인

nvidia-smi

 

 

컨테이너 저장 (Commit)

 

docker commit tf2_py3 jsha/tf2:21.11.05
 
 

 

참고자료

 

반응형

댓글