c10d 단방향 RMA 윈도우로 피어 메모리에 Get/Put하면 임베딩·전문가 라우팅 불규칙 접근이 맞습니다 | DAKER 커뮤니티

단방향 RMA 창
설명용 생성 이미지입니다.

한 줄 요약
PyTorch 2.14에서 Backend·ProcessGroup에 단방향(RMA) 윈도우 인터페이스가 들어갑니다. 피어가 맞춰 호출하지 않아도 한 랭크가 상대 메모리를 읽거나 쓸 수 있어, 임베딩 조회·가중치 전달·전문가 라우팅처럼 불규칙한 접근에 맞습니다. 재작성 NCCL 경로의 Get/Put을 이 면으로 노출합니다.

양방향 집단통신만으로는 한 피어만 당겨오는 패턴이 비쌉니다. 오늘은 작은 대칭 버퍼로 윈도우를 연 뒤, 단방향 Get 또는 Put 한 번이 통과하는지만 확인하십시오. all-gather로 전체를 모으는 경로와 지연·트래픽을 비교하면 됩니다.

재현해 볼 실험 조건

  1. 작은 world size로 ProcessGroup을 열고, 문서화된 단방향 윈도우 API로 피어 버퍼를 등록합니다.
  2. 한 랭크에서 Get 또는 Put만 호출해 값이 맞는지 검사합니다. 피어는 맞춰 호출하지 않습니다.
  3. 같은 데이터를 all-gather로 모았을 때와 바이트·왕복 시간을 비교합니다. Flight Recorder·재구성 실험과 한 번에 섞지 마십시오.

nccl2 백엔드 미리보기와 맞물릴 수 있지만, 오늘의 축은 “단방향 창으로 불규칙 접근”입니다. 재현 노트에 백엔드·윈도우 크기·Get/Put 방향을 고정합니다.

실무에서 바로 볼 포인트

관련 DAKER 학습

설명용 생성 이미지입니다. 동작은 작은 분산 잡에서 Get/Put 값 일치로 확인하십시오.