TroubleShooting 5

[PyTorch] Error 늪에서 빠져나오기 | Troubleshooting, OOM, GPU Util

가끔 내가 짠 코드도 아닌데 에러 났다고 하고... 그냥 다른 거 하나 고쳐봤는데 디버깅이 되는 어이없는 상황들을 마주하기 쉽다. 이번 포스팅은 그 늪에서 탈출하기 위한 방법들이다. Troubleshooting OOM (Out-Of-Memory) 이런 문제는 왜 발생했는지, 어디서 발생했는지 알기 어렵다... Error backtracking이 이상한데로 갈 때도 있고 메모리 이전 상황을 파악하기도 어렵다. 그러면 이런 문제들은 어떻게 해결할까? 가장 기본적인 방법으로는 Batch Size 줄이고 ⇒ GPU clean ⇒ RUN GPU Util 사용하기 nvidia-smi 처럼 GPU의 상태를 보여주는 모듈이다. Colab 환경에서 GPU상태 보기 편하다. Iter마다 메모리가 늘어나는지 확인할 수 있다..

TroubleShooting 2024.01.12

Prometheus active:Failed 상태 해결하기

Node exporter 설치 후 prometheus에 node exporter 연결을 위해 설정을 업데이트하였다. 그리고 다시 systemctl을 멈추고 시작하려하니까 올라가지를 않았다. sudo systemctl status prometheus.service 이걸로 상태를 확인해보았다. 왜 그러니... reboot도 해보고 프로세스들도 계속 확인해보고 새롭게 작성한 코드들에 문제가 있는지도 확인해보았다. 문제가 없는것 같아서 일단 프로메테우스 동작이라도 하는 지 확인하자는 마음에 ./prometheus --config.file=prometheus.yml 이것도 동작을 안해서 에러메세지를 확인하니 yml 형식에 맞지 않는다고 한다. 그제서야.... yml 파일도 수정을 했었다는 것을 깨달았다. 다시 들..

TroubleShooting 2023.12.30

AWS Public IP 접속 불가

AWS로 로드밸런싱 실습 하던 도중 IP 포트 접속이 안되는 문제가 생겼다. curl: (28) Failed to connect to ~.~.~.~ port 8080 after 75007 ms: Couldn't connect to server 가장 기본적인 원인으로는 "보안규칙" 이다. EC2 인스턴스 > 보안 에서 보안그룹을 들어가 인바운드 규칙을 변경해준다. 이때 처음에는 TCP 프로토콜로 8080포트를 열었는데, DBMS가 쓰는 지 엄청난 요청이 계속 생겼다. 8080 대신 3000포트로 변경했더니 문제가 해결되었다.

TroubleShooting 2023.12.25

IProgress not found. Please update jupyter and ipywidgets

파이토치 Efficient Net이나 RegNet을 쓰려고 하니까 IProgress not found. Please update jupyter and ipywidgets 이런 에러가 떴다. jupyter와 ipywidgets를 업데이트도 해봤는데 계속해서 떴다. 그러다가 콘솔에 downloading "http~~" to 현재dir/torch/hub/checkpoints 라는 출력을 보았다. 해당 url에 들어가니까 직접 pth파일을 다운 받을 수 있었고 이를 위의 dir로 이동시켜주니 바로 해결되었다.

TroubleShooting 2023.12.24