RDMA · RoCEv2 · 무손실 이더넷

RDMA란 무엇입니까?

RDMA(Remote Direct Memory Access)는 한 머신이 CPU와 운영체제를 모두 우회하여 네트워크를 통해 다른 머신의 메모리를 직접 읽거나 쓸 수 있게 합니다. 네트워크 어댑터가 양쪽 끝의 애플리케이션 메모리 사이에서 바이트를 직접 이동하므로 지연이 매우 낮고 CPU 오버헤드가 거의 없습니다. 이더넷에서는 RoCEv2가 RDMA를 전달하여 라우팅할 수 있게 하며, RDMA가 패킷 드롭이 없다고 가정하기 때문에 무손실 패브릭에서 실행됩니다.

Zero-copy커널 우회, 어댑터 대 어댑터
Near zero데이터 경로의 CPU 오버헤드
UDP 4791RoCEv2 인캡슐화, 라우팅 가능
LosslessBroadcom TH5의 OcNOS-DC
동작 원리

제로 카피, CPU 우회, 그리고 그것이 핵심인 이유

일반적인 네트워크 전송은 데이터를 커널을 통해 복사하고 양쪽 끝에서 CPU에 의존합니다. RDMA는 둘 다 제거합니다. 어댑터가 송신 측의 애플리케이션 메모리에서 직접 읽고 수신 측의 애플리케이션 메모리에 직접 쓰며, 데이터 경로에서 어떤 것도 CPU를 거치지 않습니다. 이것이 RDMA의 매우 낮은 지연, 매우 높은 처리량, 거의 없는 CPU 비용의 조합을 제공하는 요소이며, RDMA가 GPU 대 GPU 통신의 표준이 된 이유입니다.

  • Zero-copy: 바이트가 양쪽 끝의 애플리케이션 메모리 사이에서 직접 이동하며, 중간 커널 버퍼를 결코 거치지 않습니다.
  • 커널 우회: 운영체제가 아니라 네트워크 어댑터가 전송을 주도하므로, CPU가 데이터 경로에서 벗어납니다.
  • 거의 제로에 가까운 오버헤드: CPU가 패킷을 옮기는 대신 워크로드를 실행하도록 해방되며, 이는 GPU 규모에서 결정적입니다.
이더넷 위의 RDMA

RoCEv2가 이더넷 위에서 RDMA를 전달하는 방식

RoCEv2(RDMA over Converged Ethernet, version 2)는 RDMA를 UDP와 IP로 인캡슐화하고 목적지 UDP 포트 4791을 사용하므로, 별도의 네트워크 없이 표준 Layer 3 이더넷 패브릭 전반에서 라우팅할 수 있습니다. RDMA 연산은 여전히 동일한 제로 카피 동작으로 어댑터 대 어댑터로 실행되며, RoCEv2는 단지 이를 라우팅 가능한 이더넷 경로로 제공할 뿐입니다. 이것이 멀티벤더 이더넷 패브릭이 GPU 클러스터에서 InfiniBand를 대신할 수 있게 하는 요소입니다.

라우팅 가능한 트랜스포트

RDMA는 다음 내부에서 전달됩니다 포트 4791의 UDP와 IP, 따라서 전용 패브릭이 필요 없이 표준 라우팅 데이터센터를 가로지릅니다.

무드롭 네트워크

RDMA는 네트워크가 결코 패킷을 드롭하지 않는다고 가정하므로, 다음에서 실행됩니다 무손실 패브릭 , PFC와 ECN이 모든 홉을 무드롭으로 유지합니다.

AI 패브릭

이 트랜스포트는 다음의 기반입니다 AI 패브릭: the GPU-to-GPU network that carries every collective during training.

AI에 중요한 이유

AI collective가 RDMA에 의존하는 이유와 패브릭이 무손실이어야 하는 이유

AI 학습은 AllReduce와 같은 collective 연산을 실행합니다. 각 스텝 후에 모든 GPU가 다른 모든 GPU와 gradient를 교환한 뒤, 다음 스텝 전에 그 교환을 기다립니다. 데이터 양이 많고 일정이 빠듯하므로, RDMA는 각 교환을 빠르고 CPU에서 벗어나게 유지합니다. 단일 패킷 손실이 테일 레이턴시를 급증시키는 복구를 강제하고 전체 collective를 정체시킬 수 있기 때문에, 이더넷 위의 RDMA는 항상 무손실 패브릭에서 실행됩니다.

  • collective는 교환이 완료될 때까지 모든 GPU를 차단하므로, 더 낮은 지연이 스텝을 단축합니다 전체 클러스터가 기다리고 있는 스텝을.
  • RDMA는 교환을 유지합니다 CPU에서 벗어나고 복사가 없는 상태로, 이는 수백만 스텝에 걸쳐 곱해지면 총 학습 시간에 대한 직접적인 지렛대가 됩니다.
  • OcNOS-DC는 다음과 함께 무드롭 패브릭을 공급합니다 PFC, ECN, 동적 로드 밸런싱 을 Broadcom Tomahawk 5에서, 혼잡한 링크에서 플로우를 회피시킵니다.
자주 묻는 질문

RDMA란 무엇인가, 자주 묻는 질문

RDMA란 무엇입니까?
RDMA stands for Remote Direct Memory Access. It lets one machine read or write another machine's memory directly over the network, without involving either machine's CPU and without copying the data through the operating system kernel. The network adapter moves the bytes straight between application memory on both ends. The result is very low latency and very high throughput with almost no CPU overhead, which is why RDMA is the standard way GPUs exchange data during AI training.
RoCEv2는 이더넷 위에서 RDMA를 어떻게 전달합니까?
RoCEv2(RDMA over Converged Ethernet, version 2)는 RDMA를 UDP와 IP로 인캡슐화하고 목적지 UDP 포트 4791을 사용하므로, 별도의 네트워크가 필요 없이 표준 Layer 3 이더넷 데이터센터 전반에서 RDMA를 라우팅할 수 있습니다. RDMA 연산은 여전히 동일한 제로 카피, CPU 우회 동작으로 어댑터 대 어댑터로 실행되며, RoCEv2는 단지 이를 라우팅 가능한 이더넷 경로로 제공합니다. 이것이 멀티벤더 이더넷 패브릭을 GPU 클러스터에서 InfiniBand의 실행 가능한 대안으로 만드는 요소입니다.
제로 카피와 CPU 우회가 AI에 중요한 이유는 무엇입니까?
AI training runs collective operations such as AllReduce, where every GPU exchanges gradients with every other GPU after each step, moving enormous amounts of data on a tight schedule. If the CPU had to copy every message through the kernel, it would become the bottleneck and burn power doing it. RDMA removes the CPU and the copies from the data path, so a GPU's data lands in the peer GPU's memory with minimal latency, which shortens the exchange every GPU is waiting on.
RDMA는 왜 무손실 패브릭이 필요합니까?
RDMA는 네트워크가 패킷을 드롭하지 않는다고 가정하고 설계되었습니다. 패킷이 손실되면 복구 비용이 크고 테일 레이턴시를 급증시키며, 이는 전체 GPU collective를 정체시킬 수 있습니다. 따라서 이더넷 위의 RDMA는 무손실 패브릭에서 실행됩니다. Priority Flow Control과 ECN이 네트워크를 무드롭으로 유지합니다. OcNOS-DC는 Broadcom Tomahawk 5 하드웨어에서 PFC, ECN, 동적 로드 밸런싱으로 그 패브릭을 제공합니다. 상세는 무손실 이더넷 및 RoCEv2 페이지를 참조하십시오.

RDMA 패브릭을 설계 중이신가요? 무손실로 구축합시다

워크로드와 GPU 규모를 알려주시면 IP Infusion 엔지니어가 OcNOS-DC를 실행하는 개방형 하드웨어에서 RoCEv2 및 무손실 패브릭 설계를 함께 살펴봐 드립니다.