코딩/pytorch

ddp 학습 중단 오류--한번에 프로세스 죽이기

curious_cat 2023. 1. 23. 17:14
728x90
728x90

저는 pytorch lightning을 사용해서 ddp로 학습을 자주 돌리는데, 가끔 ctrl+c로 학습 중단을 하면 프로세스들이 죽지 않고 남는 경우가 생깁니다.

매번 이 프로세스들을 일일이 찾아서 죽이는 것은 매우 귀찮습니다.

이럴 때 다음과 같이 한번에 다 죽일 수 있습니다:

nvidia-smi | grep 'python' | awk '{ print $5 }' | xargs kill -9

이 커맨드는 nvidia-smi 에서 python 프로세스가 있는 줄을 찾아서, 5번째 열에 있는 값을 (process id) 사용해서 프로세스를 죽입니다.

비슷하게, train.py라는 스크립트를 통해서 학습을 시켰으면 

ps -aux | grep 'train.py' | awk '{ print $2 }' | xargs kill -9

로 죽지 않은 프로세스들을 다 잡을 수 있습니다.

이 커맨드를 사용하기 전에, ps -aux | grep 'train.py'의 출력 값을 보고 프로세스를 잘못 죽이는 것이 아닌지 먼저 확인하는 것을 추천합니다.

 

728x90
728x90