-
[Machine Learning] Colab에 GPU 개발환경 구축하기개발 프로세스/Machine Learning 2021. 3. 30. 18:41
Colaboratory (Colab) 이란 무엇인가
환경 설정이 필요 없고 GPU환경을 클라우드로 제공해주는 파이썬 개발환경이다. 다양한 환경마다 설치 방법이 다른 불편함과 GPU 유무에 따른 성능 문제를 해결해준다.
무료 버전의 단점
세션 유지 시간이 12시간이다. Google Drive를 Colab과 연동하여 데이터와 모델을 저장하면서 사용하는 것이 유리하다.
GPU 환경으로 설정
1. 메뉴에서 'Runtime - Change runtime type'을 선택한다.
2. Hardware accelerator를 'GPU'로 설정하고 저장한다.
Goole Drive 연동
1. 아래와 같은 명령어를 실행하면 계정 인증을 위한 링크가 뜬다.
from google.colab import drive drive.mount('/content/gdrive')
링크를 타고 들어가 Colab에 로그인해 있는 계정을 선택한다. 약관에 동의 후 나오는 인증 코드(authorization code)이다. Colab으로 돌아가 붙여넣는다. 2. Google drive 연동 확인하기
!ls
Google drive와 연동하여 생성된 폴더들을 확인할 수 있다. cuDNN(GPU 환경 딥러닝 라이브러리) 설치하기
1. 'cuDNN'이란 무엇인가
cuDNN(CUDA Deep Neural Network library)는 GPU 환경에 최적화된 Deep Neural Network 라이브러리이다. CUDA(Compute Unified Device Architecture)는 GPU(그래픽 처리 장치)에서 수행하는 병렬 처리 알고리즘에 관한 아키텍처이다. NVIDIA가 개발해오고 있다.
2. CUDA 버전 확인
!/usr/local/cuda/bin/nvcc --version
11.0 버전인 것을 확인하였다 3. cuDNN 설치파일 다운로드
3-1. NVIDIA 개발자 홈페이지에 접속
cuDNN 다운로드 파일 URL https://developer.nvidia.com/rdp/cudnn-download
NVIDIA에 회원가입 후 별도로 'NVIDIA Developer Program'에 등록해야 cuDNN을 다운로드 받을 수 있다. 'NVIDIA Developer Program'에 등록하는 데 별도의 비용을 요구하지는 않는다.
cuDNN 다운로드 페이지에 처음 접속하면 'NVIDIA Developer Program'에 가입하라는 안내 페이지가 뜬다. 회원가입 후 접속한 'NVIDIA Developer Program' 안내 페이지. 중앙에 'Join the NVIDIA Developer Program'을 클릭하면 회원가입한 메일 주소로 승인 메일이 온다. 3-2. Linux버전의 cuDNN 설치파일 다운로드
Colab이 Linux 환경을 바탕으로 하고 있기 때문에 Linux 버전의 cuDNN을 설치한다. 설치 파일이 1.2GB에 달해 15분이 걸렸다.
자신의 CUDA 버전에 맞춰 cuDNN을 선택한다. 64비트 8 버전의 cuDNN 라이브러리를 선택했다. 4. cuDNN 설치파일 압축 해제
4-1. 구글 드라이브로 설치파일 옮기기
구글 드라이브에 'darknet-cuDNN' 폴더를 만들고, 다운받은 cuDNN 설치파일을 Google drive의 'cuDNN' 폴더로 옮겨준다. 폴더 이름은 임의로 해도 상관 없다.
cuDNN 설치파일을 위한 폴더를 생성하여 옮겨두었다 4-2. cuDNN 설치파일의 경로 복사
Colab 왼쪽 탭에 폴더 모양 아이콘을 클릭하면 파일 탐색창이 뜬다. Colab을 구글드라이브와 연동시키면 'gdrive'폴더가 생성되는데, 이 'gdrive' 폴더를 찾아 cuDNN의 설치파일의 경로를 복사(Copy path)해둔다. 구글 드라이브와 연동할 때 "drive.mount('/content/gdrive')" 라는 명령어를 사용했으므로 'gdrive' 폴더는 'content' 폴더 아래에 있다.
4-3. cuDNN 설치파일의 압축 해제
아래의 명령어를 통해 구글 드라이브의 cuDNN 파일을 Colab에 있는 폴더로 압축을 해제(tar)한다. 그리고 가상환경에서 파일을 실행시킬 수 있도록 수행권한을 변경(chmod)한다.
!tar -xzvf [cuDNN 설치파일 경로] -C /usr/local/ !chmod a+r /usr/local/cuda/include/cudnn.h
< 예시 >
!tar -xzvf gdrive/MyDrive/darknet/cuDNN/cudnn-11.2-linux-x64-v8.1.1.33.solitairetheme8 -C /usr/local/ !chmod a+r /usr/local/cuda/include/cudnn.h
Colab의 local 폴더에 cuDNN이 압축 해제되고 있는 상황을 보여준다 4-4. cuDNN 설치 확인
설치 버전을 확인하여 정상적으로 완료되었는지 확인한다.
!cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
Colab에 설치된 cuDNN 파일과 설치파일의 버전이 일치함을 확인하였다 < 참고자료 >
NVIDIA cuDNN Documentation : Installation Guide
Installation Guide :: NVIDIA Deep Learning cuDNN Documentation
The NVIDIA® CUDA® Deep Neural Network library™ (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, normalizati
docs.nvidia.com
[Colab] Google Drive 연동하기, 디렉토리 접근하기
[Colab] 구글 드라이브 연동하기 & 디렉터리 접근하기
구글의 코랩(Colab)에서 구글 드라이브(Google Drive)를 연동해서 구글 드라이브에 있는 디렉터리에 접근해보자. 1. 구글 드라이브 연동하기 코랩에서 노트북을 생성한 후, 다음의 명령어를 입력한다.
starrykss.tistory.com
'개발 프로세스 > Machine Learning' 카테고리의 다른 글
[Machine Learning] Colab에서 YOLO 테스트 하기 (0) 2021.04.05 [Machine Learning] Colab에 Darknet 설치하기 (0) 2021.04.04 [Machine Learning] Anaconda에 가상환경을 생성하고 OpenCV 설치하기 (0) 2021.03.29 [Machine Learning] YOLO 학습데이터 파일 구성 (0) 2021.03.25 [Machine Learning] LabelImg를 통해 원하는 이미지를 YOLO 데이터 만들기 (0) 2021.03.24