< 동기 >
1. 코랩 개발로는 딥러닝 개발에 한계가 있을때
2. 채용 조건에 AWS , GCP 클라우드 서비스 경험 우대
🙇♀️ 안녕하세요 !
위의 Reference들과 공식문서를 참고하여 GCP에서 딥러닝 개발(Computer vision 졸업 프로젝트 / llm 대회)을
진행했습니다.
Reference대로 따라가되 , 마주치는 에러는 제 상황에 맞게 수정했음을 알려드립니다 ~
제가 생각하는 큰 단계는 다음과 같습니다.
GCP 인스턴스 설정 ▶️ Vscode SSH 접속 ▶️ miniconda 설치 ▶️ Google Cloud Storage에서 VM 간의 파일 전송
▶️ GPU 드라이버 - CUDA - CUDAnn-Pytorch 버전 맞춰 설치 ▶️ nvidia-smi 및 테스팅
1. GCP 인스턴스 생성
저는 큰 LLM을 구동해야해서 , VRAM 을 주의깊게 봤습니다.
✏️ VRAM
: 주로 모델 파라미터 , 입력 데이터 , 중간 계산 결과 저장할 수 있는 크기와 관련있습니다.
✏️ vCPU (x2 코어 갯수)
: 데이터 전처리, 모델 로딩, GPU와의 데이터 통신.
코어 수가 많으면 동시에 처리할 수 있는 스레드 수가 증가해서
병렬 프로세싱이 가능하게 되어 속도가 빨라집니다.
2. Vscode SSH 접속
예전 프로젝트할땐 뭣도 모르고 vi 로 힘들게 코딩해서 팀원이 큭큭대긴했는데 ..
SSH 접속하여 Vscode 를 활용하니 너무 편했습니다 ! 윈도우라면 위 링크가 친절하니 따라가보도록 하세욥
3. miniconda 설치
✏️ Miniconda는 Anaconda의 경량 버전으로, 기본적으로 파이썬과 conda 패키지 관리자만을 포함하고 있습니다.
export PATH="/home/{ACCOUNT_NAME}/bin/miniconda3/bin:$PATH"
명령어로 환경 변수 설정까지 완료했습니다.
4. Google Cloud Storage에서 VM 간의 파일 전송
클라우드 환경이라 제 로컬에 있는 파일을 VM에 마음대로 업로드를 못합니다 !
5. 에서 cudann 설치파일의 경우 깔아야하는 일이 생기는데요 , 미리 GCS에서 IAM 권한을 수정한뒤 GCS에서 자유자재로 파일을 전송하도록 했습니다.
winscp 쓰는 분들도 있는데
저는,
1. GCS 에서 버킷을 파낸다.
2. 그 버킷에 파일을 업로드 한뒤, 아래의 명령어를 수행
gsutil cp 소스 경로 대상 경로
gsutil cp gs://ai-bucket-24/quickstart-folder/cudnn-11.2-linux-x64-v8.1.0.77.tgz
5. GPU 설정하기
위의 링크에서 저는
1. Jupyter Notebook 세팅 대신 Vscode로 ssh 접속을 진행했습니다.
2. Driver 535 - cuda 12.2
2번 조합을 찾는게 은근 애먹었는데요 , 공식 문서를 무시했다가는 뺑뺑 돌아가는 경험 했습니다. 좀 복잡하더라도 천천히
GPU 드라이버 - CUDA - CUDAnn-Pytorch 버전 을 맞춰주세요 !
+ 번외 - GPU 할당량 증가 요청
LLM 을 구동할때 , GPU 분산처리할 일이 생겼습니다.
코랩은 pro 계정도 GPU 1개 , GCP에서 기본적으로 할당받았던 GPU도 한개인데요.
그래서 !프로젝트를 하나 더 파서! GPU 할당량 증가를 요청했습니다.
간곡하게 난 딥러닝 개발하는 학생이고 ~ 프로젝트할때 꼭 이래저래 2개가 필요하고 ~ 영어로 구구절절 써서 늘려준건지, 아님 원래 프로젝트를 하나 더 파면 늘려주는지 모르겠지만 ..!
어쨌든 늘어났습니다 하하
환경설정이 이래저래 복잡했지만, 무료 크레딧이 다 소진되고
연구실에 들어가는 그 날까지 잘 쓸것 같습니다 ☺️