torch.distributed.set_timeout으로 초기화 뒤에도 집단통신 타임… — DAKER에서 자

2026.09.19 09:07 77 Views

PyTorch 2.14의 torch.distributed.set_timeout은 ProcessGroup을 만든 뒤에도 집단통신 타임아웃을 바꿉니다. 느린 체크포인트 로드 구간만 늘리고, 끝난 뒤에는 다시 짧게 둘 수 있습니다. 예전 _set_pg_timeout 자리를 이 API가 대신합니다. 기본 타임아웃이 길면 한 랭크가 멈춰도 오래 기다립니다. 너무 짧으면 체크포인트 로드처럼 원래 …


기본 타임아웃이 길면 한 랭크가 멈춰도 오래 기다립니다. 너무 짧으면 체크포인트 로드처럼 원래 느린 구간에서 잡이 끊깁니다. 오늘은 작은 월드에서 그룹을 연 뒤, set_timeout으로 값을 늘렸다가 줄인 다음, 그 값이 이후 콜렉티브에 반영되는지부터 확인하십시오. 참가자 노트에는 초기화 직후 값, 바꾼 값, 콜렉…


원문에서 이어서 확인하실 수 있습니다.


• 작은 ProcessGroup을 열고, 초기화 직후 타임아웃을 기록합니다.

• 같은 API로 값을 다시 짧게 줄인 뒤, 의도적으로 느린 콜렉티브가 빨리 실패하는지 비교합니다. 가능하면 연산별 타임아웃도 한 줄로 적어 둡니다.

• 타임아웃은 초기화 때만 정하지 마십시오. 느린 로드 구간과 일반 스텝 구간을 나눠 바꾸십시오.


https://daker.ai/community/torch-distributed-set-timeout-adjust-comm-timeout