{"id":"IL-0412","org":"Meta","date":"2024-10-29","docs":["https://github.com/NVIDIA/nccl-tests"],"title":{"en":"InfiniBand link errors and flapping links cost Meta's RSC-1 fabric as much as 50-75% of its bandwidth during bring-up","ko":"InfiniBand 링크 오류와 링크 flapping 으로 Meta RSC-1 의 bring-up 단계에서 백엔드 패브릭 대역폭이 최대 50~75% 줄었다"},"domain":["ai-infra","networking"],"impact":{"scope":"RSC-1's InfiniBand back-end fabric during bring-up, with as much as 50-75% bandwidth loss; IB link errors also caused job failures on RSC-1 and RSC-2","users":"Researchers running ML jobs on RSC-1 and RSC-2","region":"unknown"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"The network has to remove failures and route around them; without resilience mechanisms over 50% of bandwidth may be lost. Errors with several possible causes, such as NCCL timeouts, are easily blamed on a nearby component like the network, and networking faults spread errors across the stack.","ko":"논문은 네트워크가 고장 난 링크를 빼고 그 주변으로 경로를 돌려야 한다고 밝혔다. 이런 복원 장치가 없으면 50% 넘는 대역폭을 잃을 수 있다. 앞으로는 패브릭이 고장을 피해 토폴로지를 다시 구성하는 식으로, 불안정을 없애기보다 덜 드러나게 하는 인프라가 필요하다고 봤다. NCCL timeout 처럼 원인이 여럿일 수 있는 오류는 네트워크 문제로 성급히 판단하기 쉬우니 조심해야 한다."},"related":[],"sources":[{"url":"https://arxiv.org/abs/2410.21680","kind":"paper","archived":"https://web.archive.org/web/20261102020708/https://arxiv.org/abs/2410.21680"}],"summary":{"en":"The paper, by engineers of FAIR at Meta, analyses 11 months of data from Meta's two research clusters, RSC-1 (16k GPUs, general ML) and RSC-2 (8k GPUs, mostly vision), covering 4 million jobs and over 150 million A100 GPU hours. Both are bare-metal DGX clusters with eight A100 80GB GPUs per server, scheduled by Slurm, and the paper views failures through Slurm job states and node health checks. The servers are connected by an Ethernet front-end network for control and storage traffic and a rail-optimized InfiniBand back-end fabric for gradient exchange: two servers per rack, ten racks form a pod, and pods talk through spine switches. Node health checks every five minutes treat PCI or IB link errors as high severity, so the node is removed and its jobs rescheduled at once.\n\nNetwork links degrade like servers, through changes in their physical or electrical properties, and training at scale will meet faulty links. Even with SHIELD enabled, the threshold for declaring a link down could be too conservative, and in the RSC-1 bring-up phase up to 50-75% of bandwidth was lost. Meta runs Adaptive Routing (AR) in its clusters: AR adjusts routing decisions to real-time network conditions, balances traffic across all links and lets packets avoid congested areas and unhealthy links, so the cost of bad links is spread across jobs instead of falling on the jobs mapped onto them. To show the effect, Meta injected bit errors into the fabric by modifying port registers with the mlxreg tool and ran the NCCL-Tests All-Reduce benchmark across 512 GPUs with and without AR, and AR kept much higher bandwidth under link errors. In a second test, many All-Reduce runs at once across 64 nodes in groups of two nodes (16 GPUs) showed lower performance variation and higher performance with AR.","ko":"Meta FAIR 의 엔지니어들이 자사 연구 클러스터 RSC-1 과 RSC-2 의 11개월치 데이터를 분석한 논문이다. 두 클러스터는 서버당 NVIDIA A100 80GB 8장을 단 DGX 기반 bare-metal 클러스터이고, RSC-1 은 GPU 16k, RSC-2 는 GPU 8k 규모다. 서버는 Ethernet 프런트엔드 네트워크와, 학습 중 모델 gradient 를 낮은 지연으로 주고받는 rail-optimized InfiniBand 백엔드 네트워크로 연결된다. 랙마다 서버 두 대가 있고, 랙 열 개가 rail-optimized 네트워크로 이어져 pod 를 이루며, pod 사이 통신은 spine 스위치를 거친다. 노드는 작업 전후와 5분마다 도는 헬스 체크로 점검하고, InfiniBand 링크 오류, 곧 IB 링크 오류는 노드를 바로 빼는 높은 심각도 점검에 들어간다. 논문은 실패 원인이 작업 수명의 마지막 10분 안이나 끝난 뒤 5분 안에 감지되면 그 원인을 작업 실패의 원인으로 보았다.\n\n실패 분석에서 원인이 밝혀진 하드웨어 실패는 백엔드 네트워크, 파일 시스템, GPU 가 가장 많았고, IB 링크는 실패율에 크게 기여했다. 다만 IB 링크 쪽 수치는 2024년 여름에 소수의 노드에서 IB 링크 관련 작업 실패가 짧게 몰린 영향이 컸다. 서버처럼 네트워크 링크도 물리적이거나 전기적인 성질이 바뀌어 일시적으로 또는 영구적으로 나빠질 수 있다. 오류율이 높은 링크, up 과 down 을 오가는 링크, 영구히 내려간 링크, 혼잡이 모두 패브릭 통신 성능을 떨어뜨린다.\n\n링크를 대규모로 물리 교체하기는 번거로워서 InfiniBand 패브릭은 스위치 수준에서 링크 문제를 견디는 기능을 갖춘다. 그중 SHIELD 는 스위치끼리 고장 난 링크를 피하도록 맞추는 self-healing 기능이지만, 켜 둔 상태에서도 링크를 down 으로 판정하는 기준이 너무 보수적일 수 있어서 프로토콜 수준의 재전송과 네트워크 성능 저하가 생길 수 있다. RSC-1 의 bring-up 단계에서는 대역폭이 최대 50~75% 줄었다. Meta 는 실시간 네트워크 상태에 따라 경로를 바꾸는 Adaptive Routing, 줄여서 AR 을 클러스터에 켰고, 두 가지 실험으로 그 효과를 확인했다. 첫째 실험에서는 mlxreg 도구로 패브릭의 포트 레지스터를 바꿔 Bit Error 를 넣고, 512 GPU 에서 NCCL-Tests 의 All-Reduce 벤치마크를 AR 을 켠 채와 끈 채로 돌렸다. AR 을 켰을 때 링크 오류 속에서도 훨씬 높은 대역폭을 유지했다. 둘째 실험에서는 64개 노드에서 두 노드씩, 16 GPU 묶음으로 All-Reduce NCCL-Tests 를 동시에 여러 번 돌렸다. AR 을 켰을 때 성능 편차가 작고 성능이 높았다."},"trigger":null,"severity":"unknown","symptoms":["throughput-degraded","link-flapping","training-job-failed"],"timeline":{"detected_after":null,"resolved_after":null},"date_kind":"published","detection":{"en":"Node health checks run every five minutes and count PCI or IB link errors among the high-severity checks; the bandwidth loss was observed during the RSC-1 bring-up.","ko":"5분마다 도는 노드 헬스 체크가 IB 링크 오류를 잡았다. IB 링크 오류는 높은 심각도 점검이라 걸리면 스케줄러가 바로 노드를 뺐고, 논문은 작업 실패 전후에 감지된 점검 결과로 실패 원인을 정했다."},"components":["infiniband","network-link"],"root_cause":"dependency-failure","remediation":[{"text":{"en":"Enabled Adaptive Routing on the InfiniBand fabric so traffic avoids congested and unhealthy links","ko":"클러스터에 Adaptive Routing 을 켜서, 패킷이 혼잡한 곳과 상태가 나쁜 링크를 피하도록 해 성능을 예측할 수 있게 했다."}},{"text":{"en":"Removed nodes with IB link errors from scheduling at once through high-severity health checks and rescheduled their jobs","ko":"IB 링크 오류를 높은 심각도 헬스 체크에 넣어, 오류가 나면 스케줄러가 노드를 바로 빼고 그 노드에서 돌던 작업을 모두 다시 스케줄하게 했다."}}],"action_items":[],"contributing":[],"recurrence_of":null,"symptoms_text":{"en":"During the bring-up of Meta's RSC-1 research cluster, the InfiniBand back-end fabric lost as much as 50-75% of its bandwidth. The paper describes the faulty links that degrade communication across such a fabric as links with high error rates, links flapping between up and down states, permanently down links, and links under high congestion in a shared cluster.\n\nIn the job failure data, IB link errors are among the causes that contribute most to the attributed hardware failure rate on both clusters. For IB links this was dominated by a short period in early summer 2024, when a small number of offending nodes caused many IB link job failures and temporarily drove up the failure rate on both RSC-1 and RSC-2. On RSC-1 2% of IB link failures, and on RSC-2 6%, came together with GPU failures such as a GPU falling off the bus, which may point to a correlation with PCIe.\n\nThe switches had SHIELD, a self-healing feature that lets InfiniBand switches coordinate around failed links, but even with it enabled the threshold for counting a link as down could be too conservative, which led to retransmissions at the protocol level and possible network degradation. In the job logs, network faults are hard to tell apart from other causes: NCCL timeouts may be blamed on the network when the real cause is a deadlock, and networking problems produce errors across the whole stack.","ko":"RSC-1 의 bring-up 단계에서 InfiniBand 백엔드 패브릭의 대역폭이 최대 50~75% 줄었다. InfiniBand 링크 오류, 줄여서 IB 링크 오류는 RSC-1 과 RSC-2 에서 학습 작업 실패의 큰 원인이기도 했다.\n\n논문은 패브릭 전체의 통신 성능을 떨어뜨리는 링크 문제로 오류율이 높은 링크, up 과 down 상태를 오가는 flapping 링크, 아예 내려간 링크, 여러 사용자가 함께 쓰는 환경의 심한 혼잡을 꼽았다.\n\n스위치에는 self-healing 기능인 SHIELD 가 있다. SHIELD 는 스위치끼리 고장 난 링크를 피하도록 맞추는 기능이지만, 켜 둔 상태에서도 링크를 down 으로 판정하는 기준이 너무 보수적일 수 있다. 그러면 프로토콜 수준에서 재전송이 일어나고 네트워크 성능이 떨어질 수 있다.\n\nIB 링크 실패는 시간에 따라 몰려 나타났다. 2024년 초여름에 소수의 노드에서 IB 링크 실패가 치솟아 두 클러스터의 실패율을 한동안 끌어올렸고, IB 링크가 실패율에서 큰 비중을 차지한 것은 대부분 이 짧은 기간 때문이었다. RSC-1 에서는 IB 링크 실패의 2%, RSC-2 에서는 6% 가 GPU 가 버스에서 떨어지는 것 같은 GPU 실패와 함께 났다.\n\n이런 링크 문제는 작업에서 NCCL timeout 으로 나타날 수 있었다. 논문은 NCCL timeout 의 실제 원인이 교착 상태여도 네트워크 문제로 성급히 판단하기 쉽고, 네트워크 문제는 피해 범위가 넓어 스택 전체에 오류를 낸다고 적었다."},"updated_at":"2026-11-14T12:34:06.288670Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0412","org_slug":"meta"}