# 세줄요약 #
- ps aux | grep python 명령어를 사용하여 딥러닝 학습을 실행시킨 python 파일의 실행 ID를 찾는다.
- 찾은 아이디가 예를 들어 '1234' 라면, sudo kill -9 1234 명령어를 사용하여 Kill 명령어를 내린다.
- nvidia-smi 명령어로 GPU 메모리가 정리되었는지 확인한다.
# 상세리뷰 #
* 리눅스 터미널에서 ctrl+c 등으로 머신러닝 학습 프로세스를 강제로 종료할 시에는 간혹 프로세스가 완전히 종료되지 않고 GPU 메모리에 데이터가 남아있는 경우를 볼 수 있다.
* 이를 확인하려면 터미널 상에 nvidia-smi 명령어를 입력하여 GPU 가동 현황을 볼 수 있다.
>>> nividia-smi |
- 위와 같이 4개의 GPU 모두 사용 현황을 확인할 수 있는데 오른쪽에 'GPU-Util'을 보면 GPU가 가동 중이진 않으나(머신러닝 학습 시 GPU 가동 중일 경우 90% 이상으로 표시된다) 중간에 'Memory-Usage'를 보면 메모리가 가득 차 있는 것을 알 수 있다.
- 이러한 경우에는 다시 학습을 실행시키려할 경우 메모리가 가득차서 학습이 되지 않는다. 해결책은 아래와 같다.
1. ps aux | grep python 명령어를 사용하여 딥러닝 학습을 실행시킨 python 파일의 실행 ID를 찾는다.
>>> ps aux | grep python |
jovyan 4894 63.6 18.5 136732984 48807976 pts/2 Tl Apr06 565:54 python main.py |
- 터미널에 명령어를 치면 위와 같이 나온다. python이 실행 중인 프로세스를 찾는 것.
- 실행 ID는 위의 예시의 경우에는 '4894'이다.
2. 찾은 아이디가 예를 들어 '1234' 라면, sudo kill -9 1234 명령어를 사용하여 Kill 명령어를 내린다.
>>> sudo kill -9 4894 |
3. nvidia-smi 명령어로 GPU 메모리가 정리되었는지 확인한다.
>>> nividia-smi |
- 처음 그림과 비교하면 이번에는 메모리도 모두 비워져있고, 아래에 프로세스 현황 또한 없는 것(No running processes found)을 확인할 수 있다.
'AI프로그래밍 리뷰 > 프로그래밍' 카테고리의 다른 글
딥러닝을 위한 리눅스(Ubuntu) GPU 서버 구축하기 - 3. 추가 설정(도커, NFS) (0) | 2023.04.02 |
---|---|
딥러닝을 위한 리눅스(Ubuntu) GPU 서버 구축하기 - 2. GPU Setting (0) | 2023.04.02 |
딥러닝을 위한 리눅스(Ubuntu) GPU 서버 구축하기 - 1. Server setting (0) | 2023.04.01 |
리눅스 터미널에서 텐서플로가 GPU를 잡고 있는지 확인하는 방법 (0) | 2021.08.19 |
리눅스 터미널 백그라운드에서 프로세스 돌리기 (tmux or nohup) (0) | 2020.04.29 |
댓글