{"id":"IL-0414","org":"NCSA","date":"2025-03-14","docs":["https://doi.org/10.5281/zenodo.15287639"],"title":{"en":"Uncorrectable memory errors on NCSA Delta's H100 GPUs failed user jobs, at a 3.2× lower per-GPU MTBE than on A100","ko":"NCSA Delta 의 H100 GPU 에서 uncorrectable 메모리 오류가 A100 보다 잦게 나 사용자 작업이 실패하고 노드가 내려갔다"},"domain":["ai-infra"],"impact":{"scope":"Delta's 608 H100 GPUs over 146 days: 24 uncorrectable ECC memory errors, failed user jobs, and 19 hours of node unavailability in one incident","users":"Delta users from universities running HPC and ML jobs","region":"unknown"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"The memory error recovery of the H100 GPUs, row remapping and error containment, does not keep up with the larger memory: the spare rows stay at 512 while capacity grew 2.4×. Application-level recovery is largely ineffective against these errors, so resilience has to improve at the GPU memory and hardware level, and shorter recovery time cuts the overprovisioning large jobs need.","ko":"논문은 H100 에서 복원력이 가장 취약한 부분이 메모리이고, 메모리 오류 복구 장치가 늘어난 메모리 용량과 그만큼 늘어난 row remapping 이벤트를 감당하지 못한다고 밝혔다. uncorrectable 메모리 오류 하나가 여러 GPU 를 쓰는 작업을 실패시킬 수 있어서, 큰 규모에서 이런 경우에도 작업을 멈추지 않게 하는 일은 아직 풀리지 않은 과제다. MMU 와 NVLink 오류를 빼면 애플리케이션 수준의 복구로는 GPU 오류를 다루지 못했으므로 GPU 메모리와 하드웨어 수준에서 복원력을 높여야 한다. 체크포인트는 관리, 저장, 복원을 합쳐 최대 40% 의 오버헤드가 든다. 608장의 H100 을 한 달 쓰는 작업이 작업 수준 가용성 99.9% 를 지키려면 복구 시간이 2.2시간일 때는 GPU 를 5% 더 확보해야 하지만, 복구 시간을 5분으로 줄이면 2% 만 더 있으면 된다. 그래서 복구 시간을 줄이는 일이 중요하다."},"related":[],"sources":[{"url":"https://arxiv.org/abs/2503.11901","kind":"paper","archived":"https://web.archive.org/web/20261102020706/https://arxiv.org/abs/2503.11901"}],"summary":{"en":"Delta is an HPC system operated by the National Center for Supercomputing Applications (NCSA) at the University of Illinois Urbana-Champaign. It has 448 A100 40 GB GPUs in 106 4- and 8-way nodes and 608 H100 96 GB GPUs in 152 4-way GH200 nodes, 1,056 GPUs in all, serving HPC and ML users from universities nationwide. The paper uses 2.5 years of GPU error data, 11.7 million GPU hours: 895 days from October 2022 to March 2025 on the A100 GPUs and 146 days from October 2024 to March 2025 on the H100 GPUs. GPU errors were extracted from the system logs as NVIDIA XID messages with regular expressions, identical errors on the same GPU within 5 seconds were merged into one, job outcomes came from the Slurm database, and a job counted as failed by a GPU error when the error came within 20 seconds before the job failed.\n\nA double-bit error or consecutive single-bit errors at the same address are uncorrectable ECC memory errors. They trigger row remapping, which replaces the faulty row with a spare row at the next GPU reset; when no spare rows are left the GPU reports a row remapping failure. Error containment terminates the processes using the faulty address, and dynamic page offlining marks the page unusable without a reset. On H100 the per-GPU MTBE for uncorrectable memory errors was 88,768 hours against 283,271 hours on A100, 3.2× lower, and the per-GB MTBE was 8,521,728 hours against 11,330,826 hours, 24% lower. The authors attribute this mainly to the higher memory capacity (96 GB against 40 GB, 2.4×) and also suspect HBM3's lower signalling voltage, which makes bit flips more likely, and its larger number of stacks, which makes heat harder to dissipate. The recovery mechanisms eased the impact of 92% of uncorrectable memory errors on H100, but the spare rows for remapping are capped at the same 512 rows, and 8 row remapping failures appeared on H100 early in operation while none appeared on A100 over its much longer period. Two H100 GPUs were replaced for uncorrectable memory errors and row remapping failures.\n\nExpected time to service a failed node was 2.2 hours for H100 against 0.88 hours for A100, and node availability was about 99.3% against 99.4%. In the paper's simulation, a month-long job on all 608 H100 GPUs with 2.2 hours of recovery needs 5% overprovisioning, 31 extra GPUs, to keep 99.9% availability at the job level, and 2% if recovery takes 5 minutes.","ko":"University of Illinois Urbana-Champaign, Nokia Bell Labs, IBM Research 의 연구진이 NCSA 가 운영하는 HPC 시스템 Delta 의 GPU 오류 로그를 분석한 논문이다. Delta 는 A100 40 GB GPU 448장을 단 4·8-way 노드 106대와, H100 96 GB GPU 608장을 단 4-way GH200 노드 152대로 이루어지며 GPU 는 모두 1,056장이다. A100 은 2022년 10월부터 2025년 3월까지 895일, H100 은 2024년 10월부터 2025년 3월까지 146일을 보았고, 합쳐 1,170만 GPU 시간이다. 데이터는 모든 계산 노드의 시스템 로그에서 정규식으로 뽑은 XID 오류와 복구 기록, Slurm 스케줄러 데이터베이스, 1분 단위의 NVIDIA DCGM 지표다. 같은 GPU 에서 짧은 시간 간격 안에 반복된 같은 오류는 하나로 묶었고, uncorrectable ECC 메모리 오류 수는 row remapping event 인 RRE 와 row remapping failure 인 RRF 를 더해 셌다. 작업 실패 20초 전 안에 GPU 오류가 나면 그 작업을 GPU 때문에 실패한 작업으로 분류했다.\n\nA100 과 H100 은 uncorrectable ECC 메모리 오류를 주로 row remapping 으로 막는다. row remapping 은 고장 난 메모리 행을 예비 행으로 바꾸고 RRE 를 남긴다. 실제 교체는 다음 GPU 리셋 때 일어나고, 예비 행이 없으면 RRF 가 난다. 노드 중단을 줄이는 온라인 장치로 error containment 와 dynamic page offlining 도 있다. error containment 는 고장 난 메모리 주소를 쓰는 사용자 프로세스를 종료해 오류가 다른 애플리케이션으로 번지지 않게 하고, dynamic page offlining 은 GPU 리셋 없이 고장 난 페이지를 못 쓰게 표시한다. row remapping 이나 error containment 가 실패하면 GPU 리셋이나 노드 재부팅이 필요한 GPU 실패로 이어질 수 있다.\n\nH100 은 uncorrectable ECC 메모리 오류 사이의 평균 시간인 MTBE 가 GPU 하나당 A100 보다 3.2배 낮았고, GB 당 MTBE 도 24% 낮았다. 논문은 그 주된 이유를 메모리 용량이 96 GB 대 40 GB 로 2.4배 커져 비트가 뒤집힐 기회가 늘어난 데서 찾았다. HBM3 의 신호 전압이 낮아 비트가 뒤집히기 쉬워진 것과 스택 수가 늘어 열을 빼기 어려워진 것도 가설로 들었다. 복구 장치는 H100 에서 uncorrectable 메모리 오류의 영향을 92% 의 경우에 덜어 GPU 를 계속 쓸 수 있게 했다. 하지만 row remapping 에 쓸 예비 행은 용량이 2.4배 늘어도 같은 512행이었다. H100 은 RRE 가 훨씬 잦았고, 운영 초기에 예비 행이 바닥나 RRF 가 8건 났다. Contained ECC, GPU DBE, Row remapping failed, Row remapping event 를 만난 H100 작업은 모두 실패했다. 146일 동안 H100 두 장이 uncorrectable 메모리 오류와 row remapping 실패로 교체됐고, A100 은 895일 동안 부팅 실패로 네 장이 교체됐다. GPU 노드당 가용성은 H100 이 약 99.3%, A100 이 약 99.4% 로 하루 9~10분의 다운타임에 해당했다."},"trigger":null,"severity":"unknown","symptoms":["gpu-unavailable","training-job-failed"],"timeline":{"detected_after":null,"resolved_after":null},"date_kind":"published","detection":{"en":"The errors are logged as NVIDIA XID errors in the node system logs, and Delta site reliability engineers continuously monitor uncorrectable ECC memory errors and error-recovery failures so faulty GPUs are replaced in time.","ko":"노드 시스템 로그에 XID 오류와 복구 이벤트가 기록됐다. Delta SRE 는 uncorrectable ECC 메모리 오류와 오류 복구 실패를 계속 모니터링해 고장 난 GPU 를 제때 교체한다."},"components":["gpu-hardware"],"root_cause":"hardware-failure","remediation":[{"text":{"en":"Drained the node and reset the GPU to complete row remapping after a double-bit error","ko":"XID 48 사례에서는 row remapping 복구를 마치려고 노드를 drain 하고 GPU 를 리셋했다. 복구에 19시간이 걸렸고 그동안 노드는 새 작업을 받지 못했다."}},{"text":{"en":"Rebooted the node after a contained uncorrectable memory error","ko":"error containment 가 사용자 작업을 종료해 오류를 막은 사례에서는 오류에서 회복하려고 노드를 재부팅했고, 노드가 2분 내려갔다."}},{"text":{"en":"Replaced two H100 GPUs for uncorrectable memory errors and row remapping failures","ko":"146일 동안 uncorrectable 메모리 오류와 row remapping 실패 때문에 H100 GPU 두 장을 교체했다."}},{"text":{"en":"Replaced GPUs that repeatedly emitted row remapping failures","ko":"Delta SRE 는 row remapping 실패를 모니터링하고, 이 오류를 거듭 내는 GPU 를 교체했다."}}],"action_items":[],"contributing":[],"recurrence_of":null,"symptoms_text":{"en":"On NCSA's Delta system, uncorrectable ECC memory errors on the H100 GPUs ended the user jobs running on the affected GPU, and the node then needed a reboot, or a drain and GPU reset, before it was fully recovered. In the study, every job that met an H100 memory error failed.\n\nThe errors appear in the system logs as NVIDIA XID errors: XID 48 for a double-bit ECC error (DBE), XID 63 for a row remapping event (RRE), XID 64 for a row remapping failure (RRF), XID 94 for a contained memory error and XID 95 for an uncontained one. Over 146 days the H100 GPUs had 17 DBEs, 7 consecutive single-bit errors (SBEs), 24 uncorrectable ECC memory errors in all, 16 RREs, 8 RRFs, 14 contained and 19 uncontained memory errors; the consecutive SBE and uncorrectable totals are inferred from the RRE and RRF counts. The jobs that met contained ECC errors (5 of 5), DBEs (5 of 5), RRFs (3 of 3) and RREs (2 of 2) all failed.\n\nIn one incident a double-bit error (XID 48) on an H100 failed the job scheduled on that GPU, and completing the row remapping needed a node drain and reset that kept the node from accepting new jobs for 19 hours. In another, error containment stopped an uncorrectable memory error by terminating the user's job, and the node reboot that followed caused two minutes of node downtime; GPU utilisation dropped as the job ended.\n\nRow remapping triggered by an uncorrectable error succeeded at a rate of 0.59 on H100. When it failed, the GPU still contained the error by terminating only the affected jobs and offlining the faulty page, and containment itself failed 8% of the time. Delta site reliability engineers reported that uncontained memory errors can be highly bursty and persistent, spam the console logs and leave the GPU inoperable, although the study did not observe such bursts on A100 or H100.","ko":"Delta 의 H100 GPU 에서 uncorrectable ECC 메모리 오류가 나면 그 GPU 에서 돌던 사용자 작업이 실패했다. 노드 시스템 로그에는 XID 48 같은 XID 오류가 남았고, 복구하는 동안 노드는 새 작업을 받지 못했다.\n\n오류는 XID 48 double bit ECC 메모리 오류, 같은 메모리 위치의 consecutive single-bit ECC 오류, XID 63 row remapping event, XID 64 row remapping failure, XID 94 Contained Memory Error, XID 95 Uncontained Memory Error 로 나타났다. H100 을 관찰한 146일 동안 uncorrectable ECC 메모리 오류는 24건이었고, 그 가운데 double bit ECC 오류인 DBE 가 17건, 같은 위치의 single-bit 오류가 잇따른 consecutive SBE 가 7건이었다. 같은 기간 row remapping event 인 RRE 는 16건, row remapping failure 인 RRF 는 8건, Contained Memory Error 는 14건, Uncontained Memory Error 는 19건이었다.\n\nH100 의 메모리 오류는 A100 보다 잦았다. uncorrectable ECC 메모리 오류 사이의 평균 시간인 MTBE 는 GPU 하나당 H100 이 88,768 시간, A100 이 283,271 시간으로 H100 이 3.2배 낮았다. GB 당 MTBE 는 H100 의 HBM3 가 8,521,728 시간, A100 의 HBM2e 가 11,330,826 시간으로 24% 낮았다. uncorrectable ECC 메모리 오류의 H100 시스템 전체 MTBE 는 146 시간이었다.\n\n오류를 만난 작업은 거의 모두 실패했다. H100 에서 Contained ECC 를 만난 작업 5개, GPU DBE 를 만난 작업 5개, Row remapping failed 를 만난 작업 3개, Row remapping event 를 만난 작업 2개가 모두 실패해 실패 확률이 100% 였다. error containment 가 오류를 막아도 그 작업은 종료됐고, 한 사례에서는 노드 재부팅으로 노드가 2분 내려갔다.\n\n복구도 오래 걸릴 수 있었다. XID 48 이 난 한 사례에서는 작업이 실패한 뒤 row remapping 을 마치려고 노드를 drain 하고 GPU 를 리셋해야 했고, 오류를 감지하고 복구를 마치기까지 19시간 동안 노드가 새 작업을 받지 못했다. 실패한 노드를 복구하는 데 드는 예상 시간은 H100 이 2.2 시간, A100 이 0.88 시간이었다.\n\n복구 장치는 따라가지 못했다. H100 에서 uncorrectable ECC 메모리 오류로 시작된 RRE 의 성공률은 0.59 였고, error containment 는 8% 의 경우에 실패했다. H100 은 운영 초기에 이미 RRF 를 8건 냈는데, 이는 예비 메모리 행이 바닥나 메모리 복구가 실패했다는 뜻이다. 훨씬 오래 운영한 A100 에서는 RRF 가 한 건도 없었다."},"updated_at":"2026-11-14T12:34:06.492032Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0414","org_slug":"ncsa"}