Inductor simple_overlap가 기본 켜지며 컴파일된 분산 학습에서 집단통신과 연산을 자동으로 겹칩니다 | DAKER 커뮤니티

한 줄 요약
PyTorch 2.14 Inductor의 simple_overlap 재정렬이 기본으로 켜집니다. torch.compile된 분산 학습에서 집단통신이 독립 연산과 겹치도록 스케줄되어, 별도 설정 없이 GPU 유휴를 줄입니다.
예전에는 통신이 임계 경로에 남거나, overlap를 직접 켜야 했습니다. 오늘은 작은 모델에 all-reduce가 있는 한 스텝을 torch.compile한 뒤, 프로파일에서 통신과 연산이 겹치는지부터 보십시오. 참가자 노트에는 백엔드·월드 사이즈·컴파일 여부·프로파일 한 줄 관찰을 남깁니다. “설정 파일을 바꿨다”보다 “기본값으로 겹침이 보이는지”가 재현에 도움이 됩니다.
재현해 볼 실험 조건
- 간단한 선형층과 손실, 그리고 한 번의 집단통신(예: all-reduce)이 있는 미니 루프를 만듭니다.
- 같은 루프를 eager와
torch.compile로 각각 돌리고, 프로파일러나 NCCL/통신 타임라인에서 통신·연산 겹침을 비교합니다. - 가능하면 overlap를 끈 설정과 기본값을 한 줄로 대비해, 2.14 기본 동작 차이를 남깁니다.
컴파일-온-원-랭크나 Flight Recorder는 다른 축입니다. 이번 실습은 Inductor 기본 overlap만 확인합니다. 실험이 끝나면 PyTorch 버전·디바이스·월드 사이즈를 고정해 두십시오.
실무에서 바로 볼 포인트
- 분산 +
torch.compile워크로드는 2.14에서 overlap 기본값을 전제로 벤치마크하십시오. - 학습 노트에 eager vs compile 프로파일 관찰을 남깁니다.
- 백엔드 전용 훅 실습과 섞지 말고, 이번엔 스케줄 겹침만 확인하십시오.
관련 DAKER 학습
출처: https://pytorch.org/blog/pytorch-2-14-release-blog/
설명용 생성 이미지입니다. 동작은 로컬에서 compile 프로파일로 확인하십시오.