[개발환경] 구글 GCP로 GPU 환경설정

구글 GCP에서 GPU를 활용하여 딥러닝 작업을 하기 위한 환경설정 과정입니다.
개발환경
avatar
2025.02.21
·
5 min read

새 인스턴스 생성

  • 구글 클라우드 > computer engine > VM 인스턴스 > 인스턴스 생성

  • 부팅 디스크도 넉넉하게 잡아주고, 해당 인스턴스에 SSH 키 항목을 추가해준다.

window에서 ssh-key를 발급받는 방법은 ?

  • 윈도우 검색창에서 cmd or powershell 실행

  • ssh-keygen 명령어를 통해 key 생성

  • .pub 확장자는 공개키이고 나머지는 개인키이다.

그리고 Visual Studio 에 접속해 Ctrl + Shift + P 를 눌러 Remote-SSH : Open SSH Configuration File 클릭하여 해당 경로에 아래와 같이 작성

Host GCP_A100 
    HostName 외부IP 
    IdentityFile ssh 공개 키 경로 
    User 유저이름

GPU 설정

처음 VM 인스턴스를 생성하게 되면 GPU 드라이버가 설치되어 있지 않기 때문에 직접 설치해줘야 한다.

$ sudo apt-get install ubuntu-drivers-common 
$ ubuntu-drivers devices #설치 가능한 GPU 드라이버 목록 확인 
$ sudo apt-get upgrade 
$ sudo apt-get install nvidia-driver-535 
$ sudo reboot #재부팅 $ nvidia-smi #설치 확인

CUDA 설치

CUDA는 자신의 GPU 드라이버 버전에 맞게 설치하면 된다. GPU 드라이버의 법전마다 호환가능한 CUDA 버전은 다음 링크를 참고하자

CUDA Toolkit Archive
https://developer.nvidia.com/cuda-toolkit-archive

설치 버전에는 3가지가 존재하는데, runfile(local)로 설치를 진행했다. Deb을 통한 설치 방법은 GPU 드라이버를 따로 설치하게 되어서 기존에 설치한 드라이버 버전과 충돌이 일어나 설치 과정에 오류가 발생할 수도 있다고 한다.

$ wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run
$ sudo sh cuda_12.4.0_550.54.14_linux.run --slient --toolkit

--slient --toolkit 명령어를 사용하게 되면 UI 없이 CUDA Toolkit만 설치가 가능하다. 정상적으로 설치가 완료되면 터미널에는 아무것도 출력되지 않는다.

이제 설치가 완료되면 CUDA PATH를 설정해줘야한다. .bashrc 파일을 열어서 설정할 수 있다. .bashrc 파일을 열어 가장 아래로 내려 다음 코드를 입력하면 된다.

$ ls /usr/local
$ vi ~/.bashrc
export PATH=/usr/local/cuda-12.2/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

vi 편집기에서 파일을 편집하려면 입력모드로 변경해야한다.

  • i 키를 눌러 입력모드로 전환 > 내용 수정

  • ESC 키를 눌러 입력모드 종료

  • :wq 을 입력해 저장 파일 닫기 ( 저장 후 종료 )

CuDNN 설치

cudnn은 CUDA와 다르게 파일을 직접 다운로드 해서 설치해야한다. 따라서 로컬에서 다운로드 받은 후 VM 인스턴스로 업로드 하는 과정이 필요하다.

cuDNN Archive
Download releases from the GPU-accelerated primitive library for deep neural networks.
https://developer.nvidia.com/rdp/cudnn-archive
scp 로컬파일경로 username@외부IP:디렉토리경로

VM 인스턴스로 업로드가 완료되면 파일 위치로 이동 후 압축을 해제해준다.

$ tar -xvJf /home/minkyeong/mink/cudnn-linux-x86_64-8.9.6.50_cuda12-archive.tar.xz #압축해제 
$ sudo cp ./include/cudnn*.h /usr/local/cuda-12.2.0/include 
$ sudo cp ./lib/libcudnn* /usr/local/cuda-12.2.0/lib64 
$ sudo chmod a+r /usr/local/cuda-12.2.0/include/cudnn*.h /usr/local/cuda-12.2.0/lib64/libcudnn*

이렇게 하게 되면 이제 GPU을 활용하여 작업을 할 수 있는 환경이 설정된다. 작업을 하기 전에도 이렇게 환경설정에 있어 시간이 오래 걸린다는 게 조금은 힘들었다.

참고자료

[개발 환경] GCP에서 GPU를 이용해 개발해보자! - 03
지난 게시글에서는 GCP에서 GPU를 할당받고 VM 인스턴스를 생성해보았습니다. 이번 게시글에서는 GPU 설정을 진행해보도록 하겠습니다.
https://velog.io/@hun_dev/%EA%B0%9C%EB%B0%9C-%ED%99%98%EA%B2%BD-GCP%EC%97%90%EC%84%9C-GPU%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4-%EA%B0%9C%EB%B0%9C%ED%95%B4%EB%B3%B4%EC%9E%90-03






- 컬렉션 아티클