일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- #Jetson nano
- #annotation
- #Linux
- #선형
- #gpu training
- #비선형
- #torchvision
- pytorch
- #landmark
- #object detection
- #activation function
- #Anaconda
- Linux
- #pytorch
- Today
- Total
Wooks_learning
linux(서버) 딥러닝 학습을 위한 GPU 사용 방법 본문
현재 회사에서 인턴으로 근무하고 있는데 처음 사용하다보니 실수가 잦아 정리를 해놓아야 할 것 같다!
순서대로 진행하면 무난히 학습할 수 있을 것 같다.
1. 가상환경 실행
conda activate 가상환경 이름
혹은
source activate 가상환경 이름
위와 같이 (base)로 되어있는 환경이 activate한 가상환경이름으로 변경되는 상태에서 실행한다.
2. GPU정보 확인
nvidia-smi
1. 자신의 현재 cuda version이 아닌 추천 cuda version.
2. gpu 번호 : 0 , gpu 이름 : GeForce MX250. 회사 서버에 접속하면 여러개 있는데(0,1,2,...) 자신이 사용할 gpu번호를 설정하여 사용하면 된다.
3. 현재 GPU사용량
4. 사용 중인 process 정보
3. GPU번호 지정
3-1) 터미널에서 코드 실행 시 (대부분 해당 방법으로 실행함.)
CUDA_VISIBLE_DEVICES=사용할 GPU번호 python 실행시킬 파이썬 파일 이름.py
3-2) 파이썬 내부 코드로 실행 시
GPU_NUM = 0 # 원하는 GPU 번호 입력
device = torch.device(f'cuda:{GPU_NUM}' if torch.cuda.is_available() else 'cpu')
torch.cuda.set_device(device)
해당 스텝까지 실행하면 학습이 잘 진행될 것이다.
------------------------------------------------------------------------------------------------------------------------------
만약 학습을 진행하다 도중에 멈추고 학습을 다시 진행할 때 RuntimeError: CUDA out of memory 블라블라
에러가 뜰 수 있는데, 그럴 경우 다음 과정을 진행하면 해결할 수 있다.
4) 어떤 명령어를 통해 실행되는지 확인.
ps -p PID번호 -o args
nvidia-smi명령어에서 4번 박스에 사용하는 gpu목록들이 나올텐데 어떤 명령어로 돌리고 있는지 알 수 없다. 만약 잘못 건드리면 다른 사람이 학습하는 것이 꺼질 수 있어서 해당 코드로 어떤 명령어를 통해 돌고있는지 확인할 수 있다.
만약 자신이 python test.py라고 입력하여 gpu를 사용했고, 다시 학습할 때 CUDA memory에러가 났다면 해당 코드로 어떤 명령어로 gpu를 사용했는지 알아야한다. 그럼 자신이 사용했던 python test.py가 나올것이고 다음 코드를 사용하면 해당 gpu memory만 삭제할 수 있다.
5) gpu 삭제
kill -9 PID이름
kill -15 PID이름
위에서 PID이름을 찾았다면, 다음 명령어를 통해 memory를 삭제할 수 있다.
왠만하면 kill -15를 먼저 사용해보는 것이 좋다.
kill -15의 경우 조금 더 안전하게 종료하고, kill -9의 경우 강제종료를 하는 느낌이라 kill -15를 먼저 사용해보고 그래도 메모리가 삭제되지 않는다면 kill -9를 사용하는 것을 추천한다.
'OS > Linux' 카테고리의 다른 글
tmux를 이용한 서버 사용법 (0) | 2021.10.13 |
---|---|
Linux명령어 모음(1) (0) | 2021.09.11 |