AI/Trouble Shooting 3

[PyTorch 에러 해결] CUDA out of memory (feat. 주피터 노트북)

실행 환경 OS: Ubuntu 18.04.5 PyTorch 버전: 2.0.1 CUDA 버전: 11.0 문제 상황 모델 크기가 23GB인 LLM을 GPU 메모리에 로드하던 중, CUDA out of memory 에러가 발생했다. GPU 메모리 크기가 32GB인데다, 주피터 노트북 파일에서 테스트 했을 때 문제 없이 실행되었기 때문에 코드 구현 상에 메모리 누수가 있는지 확인했으나, 별다른 문제를 찾지 못했다. 문제 해결 nvidia-smi 명령어로 GPU의 상태를 확인해 본 결과, 파이썬 스크립트를 동작시키지 않은 상황에서 GPU 메모리가 23GB가 할당되어 있는 것을 확인할 수 있었다. 알고보니 주피터 노트북 파일을 실행시켰을 때 GPU 메모리에 올라갔던 모델을 해제하지 않아서 메모리가 반환되지 않고 있..

AI/Trouble Shooting 2023.07.06

conda 가상환경에서 pip 분리하기

프로젝트를 진행할 때 패키지의 버전을 독립적으로 관리하기 위해 conda 가상환경을 생성해 본 적이 있을 것이다. 새로운 가상환경을 통해 환경을 분리하면 local에서 전역으로 설치된 패키지들은 이 가상환경 내부에서 사용할 수 없어야 한다고 생각할 것이다. (적어도 나는 그렇게 생각했다...) 그러나, 새롭게 생성한 가상환경에서 pip list 명령어를 통해 설치된 패키지를 확인해 보면 local에서 pip로 설치한 패키지를 모두 확인할 수 있다. > conda create -n myenv > conda activate myenv > pip list # 전역에 설치된 패키지가 모두 표시된다. 그로 인해, 현재 가상환경에서 패키지를 설치하지 않아도 전역에 설치된 패키지가 자동으로 실행된다. 또한, cond..

AI/Trouble Shooting 2023.05.22

[PyTorch 에러 해결] Bert 모델 token embedding layer 차원 오류

실행 환경 OS : Linux PyTorch : 2.0.0 version 첫번째 에러 RuntimeError: CUDA error: device-side assert triggered CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect. For debugging consider passing CUDA_LAUNCH_BLOCKING=1. Compile with TORCH_USE_CUDA_DSA to enable device-side assertions. 에러 메시지에서 확인할 수 있듯이, stacktrace의 내용만으로는 어디에서 에러가 발생했는지 ..

AI/Trouble Shooting 2023.05.11