현재 학교에서 '대규모병렬컴퓨팅'이라는 과목을 수강 중이다.
이 강의에서 실습을 진행하려면 NVIDIA GPU가 필요하다는데 나는 LG Gram을 사용하고 있어 GPU가 Intel이기 때문에 클라우드 컴퓨팅을 해보려고 한다.
클라우드 컴퓨팅? 들어만 봤지 한 번도 해본 적이 없어서 감도 안오고 어떻게 해야할 지 모르겠던 와중 에브리타임에서 어떤 분이 Google Colab으로 실습할 것이라고 말씀하신 것을 보고 나도 코랩으로 해보기로 했다. (감사합니다🥹)

구글 드라이브에 들어오면, 좌측 상단에 '+ 신규' 버튼이 있다.

신규 버튼을 누르면 가장 아래 '더보기'에 들어가야 하는데, Google Colab을 사용해본 적이 없다면 코랩이 뜨지 않을 것이다. 그러면 '+ 연결할 앱 더보기' 를 눌러서 마켓플레이스에서 Google Colab을 설치해야 한다.
설치하면 위 더보기 란에 자동으로 추가된다. 다시 돌아와서 Google Colab을 열어주면 Google Colab 설치는 끝이다.

Google Colab에 들어오면 이렇게 보인다.
먼저, CUDA 실행을 위한 GPU 설정부터 해야하는데,

상단의 '런타임' - '런타임 유형 변경'을 눌러 들어간다.

우리는 GPU를 사용해야 하기 때문에
- 런타임 유형 : Python3
- 하드웨어 가속기 : T4 GPU
로 설정해준다.
내가 서치해서 본 글들은 전부 2018~2022년 글이라서 이 부분의 UI가 조금씩 달랐다. '런타임 유형 변경' 이 아닌 '노트 설정', 하드웨어 가속기도 'T4 GPU'가 아닌 그냥 'GPU'였다. 그래서 조금 헷갈리긴 했는데, 일단 설정해보고 실행해보니 돼서 이 설정이 맞는 듯하다.
Google Colab에는 이미 CUDA가 설치되어 있기 때문에 잘 설치되어 있는지만 확인하면 된다.
!nvcc --version
위 코드를 넣고 실행하면
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Thu_Jun__6_02:18:23_PDT_2024
Cuda compilation tools, release 12.5, V12.5.82
Build cuda_12.5.r12.5/compiler.34385749_0
이렇게 결과가 나오면 NVIDA GPU에서 CUDA가 정상적으로 실행된다는 의미이다.
우리는 CUDA에서 C/C++을 이용할 것이기 때문에 플러그인을 설치해주어야 한다.
!pip install nvcc4jupyter
Collecting nvcc4jupyter
Downloading nvcc4jupyter-1.2.1-py3-none-any.whl.metadata (5.1 kB)
Downloading nvcc4jupyter-1.2.1-py3-none-any.whl (10 kB)
Installing collected packages: nvcc4jupyter
Successfully installed nvcc4jupyter-1.2.1
이렇게 nvcc4jupyter을 설치해주면 위와 같이 성공적으로 설치가 완료되었다는 문구가 뜨고, 이제 이 nvcc4jupyter을 사용하기 위해 로드를 해주면 끝이다.
%load_ext nvcc4jupyter
Detected platform "Colab". Running its setup...
Source files will be saved in "/tmp/tmpzftpf343".
성공적으로 로드되었다.
플러그인 설치-로드 과정에서 시행착오를 겪었는데, 2022년 글을 참고해서 그런지 intall도 github 저장소의 패키지를 설치하고, 플러그인 로드도 'nvcc4jupyter'가 아닌 'nvcc_plugin'이었다. 그래서 %load_ext nvcc_plugin을 하는 과정에서 계속 오류가 뜨고, Google Colab 내부의 AI도 해결하지 못해서 구글링을 해서 다른 방안을 찾아냈고, 찾아낸 것이 이 방법이다.
사실 영어를 못하는 건 아닌데 읽기가 너무 귀찮아서 여태까지 프로그래밍을 하면서 최대한 영어 문서를 피해다녔다. 그런데 오늘, 무슨 심정의 변화가 있었는지 영어로된 AI 말을 읽고, 영어로 검색하고, 영어 문서를 읽었는데 생각보다 힘들지 않았다. 앞으로 영문 검색과 영문서 읽기를 습관화 해봐야겠다.
설치가 완료되었다면 마지막으로 CUDA에서 C/C++ 코드가 실행되는지 확인해야한다.
%%cuda
#include <iostream>
int
main()
{
std::cout << "Hello, World\n";
return 0;
}
위 코드를 실행해보고 'Hello, World'가 잘 뜨는지 확인해보면 된다.
[참고문서]