-
ML/AI - GPU OOM 문제카테고리 없음 2022. 11. 13. 23:43반응형
학습가능 환경
- 로컬
- GPU: RTX 4090
- GPU RAM: 24GB
- 코랩 프로 플러스
모델 요약(파라미터 수)
문제 상황
<로컬에서 학습 돌릴 때 다음과 같은 문제 발생>
<코랩 프로 플러스에서 동일한 학습 돌렸을 때 최대 메모리 사용량>
최대 메모리 사용량 체크: https://stackoverflow.com/questions/70763324/how-to-print-the-maximum-memory-used-during-kerass-model-fit
-> 31 gb
해결 방법
오픈 채팅방 질문에 대한 답변
1. 모델 사이즈가 커서 모델자체를 gpu에 올리지 못할 경우 : 방법 없음. 더 큰 gpu를 써야함
2. 모델은 gpu에 올릴 수 있지만 배치가 커서 oom이 뜨는 경우 : 오프라인으로 배치 만들어서 돌리는 방법등이 있음<답변 by "자연어처리와 딥러닝" 오픈 채팅방의 "."님>
'''배치를 줄이면 되지 않을까요?
bert에 레이어 하나 올리신거 같은데 22g로 못 돌릴 크기는 아닙니다'''<답변 by "자연어처리와 딥러닝" 오픈 채팅방의 "마이크를 든 라이언"님>
적용한 해결책: batch size 줄이기.
32 -> 8로 줄였더니, 최대 사용량 20gb로 줄음. OOM 문제 발생하지 않음.
새롭게 알게된 부분
batch가 존재하는 목적이 여러가지다.
더 나은 학습을 위함도 존재하고, 메모리 사용량을 줄이기 위함도 있다.
구글 코랩 플러스는 런타임 유지시간 빼고는 참 괜찮은 서비스이다.
반응형