{"id":"IL-0482","org":"NERSC","date":"2025-09-04","docs":[],"title":{"en":"Bursts of uncorrectable A100 memory errors on Perlmutter and Polaris reached over 1,000 double-bit errors a day","ko":"Perlmutter와 Polaris의 A100 GPU에서 정정할 수 없는 메모리 오류가 하루 1,000건 넘게 몰려 터졌다"},"domain":["ai-infra"],"impact":{"scope":"A100 GPUs on Perlmutter (7,604 GPUs) and Polaris (2,240 GPUs): DBEs on 35 and 68 GPUs, each DBE event terminating the GPU application","users":"unknown","region":"unknown"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"SBEs on a GPU can indicate a coming DBE, and the GPUs with errors change over time, so watching only GPUs with a history of errors is not enough. Because errors come in bursts, a single mean time between errors misleads, and the authors suggest checkpoint intervals that adapt to observed memory errors. Hourly error counts still captured the bursts, but finer monitoring lets administrators react sooner. Error rates differ so much between systems that conclusions from one supercomputer may not hold for another.","ko":"클러스터 하나의 결과만 믿으면 오류 특성을 크게 잘못 볼 수 있다. 오류가 몰려 터지므로 오류 사이 평균 시간인 MTBE 숫자 하나로는 복원력을 제대로 평가할 수 없고, 오류 간격의 분포를 봐야 한다. 기록 주기가 길어도 정보 손실은 크지 않지만, 짧은 주기로 모니터링해야 오류에 더 빨리 대응할 수 있다. SBE는 앞으로 날 DBE의 신호가 될 수 있다. 오류가 많은 GPU는 시간에 따라 바뀌므로, 과거에 오류가 많았던 GPU만 지켜보는 것은 좋은 전략이 아니다. 고정 간격 체크포인트는 안정성 요구를 못 맞추거나 부담이 크므로, 오류가 몰리는 패턴에 맞춘 동적 체크포인트가 필요하다. V100과 A100은 둘 다 HBM2를 쓰며 메모리 오류 특성이 비슷하다."},"related":[],"sources":[{"url":"https://arxiv.org/abs/2508.03513","kind":"paper","archived":"https://web.archive.org/web/20260718023238/https://arxiv.org/abs/2508.03513"}],"summary":{"en":"The paper, written with staff of the three operating centres, characterises GPU memory errors from ECC logs covering 67.77 million GPU device-hours on 10,693 NVIDIA Ampere GPUs in three production supercomputers: Delta at NCSA (849 GPUs, A40 and A100, 388 days logged every minute), Polaris at the Argonne Leadership Computing Facility (2,240 A100 GPUs, 259 days logged every 4 seconds, DBEs only) and Perlmutter at NERSC (7,604 A100 GPUs, 326 days logged every hour), with log periods between December 2022 and January 2025. The A100's HBM2 memory is protected by single-error correction double-error detection (SECDED) ECC, so a double-bit error is detected but cannot be corrected, and the GPU application is terminated.\n\nErrors were bursty on all three systems, and DBEs exceeded 1,000 a day on 9.32% of Perlmutter days and 4.55% of Polaris days, even though fewer than 0.53% of GPUs ever had a DBE. Error rates differed by more than three orders of magnitude between systems, the standard deviation of the mean time between errors was large, and the autocorrelation of interarrival times was high within 24 hours with no periodicity. Summit's V100 GPUs, also with HBM2, had at most 138 DBEs in a day, a milder burstiness than the A100 systems. The authors note that one DBE can stop a long training job without ending its batch job, such as a SLURM job, so allocated GPUs sit idle unless monitoring and restart are prompt, and that a static checkpoint interval fits these bursts poorly.","ko":"NERSC, NCSA, Argonne의 운영 인력이 함께 쓴 이 연구는 NVIDIA A100 GPU를 쓰는 운영 중인 슈퍼컴퓨터 Delta, Polaris, Perlmutter 세 대에서 모은 GPU 메모리 오류 기록 6,777만 GPU 시간 분량을 분석했다. 오류는 DCGM이 GPU마다 누적하는 ECC SBE와 DBE 개수가 늘어나는 것으로 찾았다. SBE는 ECC가 고치는 단일 비트 오류이고, DBE는 ECC가 잡지만 고치지 못하는 이중 비트 오류다. DBE가 나면 개수와 관계없이 ECC가 예외를 던져 GPU 애플리케이션이 종료되므로, DBE 이벤트 한 번이 작업 한 번의 중단이다.\n\nDBE는 Polaris와 Perlmutter에서 특정한 날에 몰려 터졌다. 하루 DBE가 1,000건을 넘은 날이 Polaris는 4.55%, Perlmutter는 9.32%였다. 시스템 사이 오류율 차이는 천 배를 넘어, Polaris의 DBE 비율은 Delta의 2,555.56배였다. 오류를 겪은 GPU 수는 적어서 DBE가 난 GPU는 모든 시스템에서 0.53% 미만이었다. Perlmutter에서 SBE와 DBE를 모두 겪은 GPU 29개에서는 DBE 이벤트 대부분이 같은 날 같은 GPU의 SBE와 함께 났다. 오류가 많은 GPU는 몇 주 단위로 바뀌었고, 오류에 주기가 없었으며, 환경 요인과 강한 상관관계도 없었다.\n\n대규모 모델 학습에서는 DBE 하나가 하드웨어 예외로 프로그램 전체를 멈추게 해도 SLURM 작업은 끝나지 않는다. 그래서 모니터링과 재시작이 늦으면 할당된 자원이 낭비될 수 있다. 저자들은 오류가 몰려 터지므로 고정 간격 체크포인트로는 부족하고, 오류 모니터링에 따라 간격을 바꾸는 동적 체크포인트가 필요하다고 보았다."},"trigger":null,"severity":"unknown","symptoms":["gpu-unavailable"],"timeline":{"detected_after":null,"resolved_after":null},"date_kind":"published","detection":{"en":"DCGM collected the ECC error counts of each GPU, every 4 seconds on Polaris, every minute on Delta and every hour for Perlmutter.","ko":"DCGM이 GPU마다 ECC가 보고한 SBE와 DBE의 누적 개수를 주기적으로 갱신했고, 이 개수가 늘어나면 새 오류로 보았다. 기록 주기는 Polaris가 4초, Delta가 1분, Perlmutter가 1시간이었다."},"components":["gpu-hardware"],"root_cause":"hardware-failure","remediation":[],"action_items":[{"text":{"en":"Develop proactive and dynamic GPU monitoring based on predicting which GPUs will have errors","ko":"오류가 날 GPU를 예측해 그에 맞춰 GPU를 미리, 유연하게 모니터링하는 방법을 만든다."}}],"contributing":[],"recurrence_of":null,"symptoms_text":{"en":"On the Perlmutter and Polaris supercomputers, NVIDIA A100 GPUs reported uncorrectable double-bit memory errors (DBEs) in bursts: 9.32% of days on Perlmutter and 4.55% of days on Polaris had more than 1,000 DBEs. Each DBE event makes ECC raise an exception that terminates the GPU application, however many errors the event holds.\n\nThe errors were reported by ECC and collected with NVIDIA DCGM, which keeps aggregated counts of single-bit errors (SBEs), which ECC corrects, and DBEs for each GPU; a new error shows as an increase in the count. Polaris logged 39,837 DBEs in 44 events on 68 GPUs, Perlmutter 17,926 DBEs in 77 events on 35 GPUs, and Delta only 9 DBEs in 2 events. On 10/26/2023 alone Polaris logged 39,144 DBEs, while 66.02% of days on Polaris and 84.97% on Perlmutter had no DBE at all.\n\nError rates differed between the systems by over three orders of magnitude: the DBE rate of Polaris was 0.069 per GPU per day, 2555.56 times that of Delta and 8.41 times that of Perlmutter. The bursts also showed in the gaps between events: 27.27% of DBE interarrival times on Polaris and 51.56% on Perlmutter were under one day, while the longest gaps were 42 and 23 days.\n\nOn Perlmutter, 29 GPUs had both SBEs and DBEs, and for most DBE events there were SBEs on the same GPU on the same day. The GPUs with errors changed over time instead of staying the same, and no strong correlation was found with temperature, power or GPU utilization.","ko":"Perlmutter와 Polaris의 A100 GPU에서 ECC가 정정하지 못하는 이중 비트 메모리 오류인 DBE가 특정한 날에 몰려 쏟아졌다. DBE 이벤트가 나면 ECC가 예외를 던져 그 GPU의 애플리케이션이 종료되었다.\n\nDCGM이 GPU마다 누적해 올리는 ECC SBE와 DBE 개수가 늘어나는 것으로 새 오류가 드러났다. Polaris에서는 하루에 DBE가 1,000건을 넘은 날이 전체의 4.55%였고 Perlmutter에서는 9.32%였다. Polaris에서는 2023년 10월 26일 하루에 DBE가 39,144건 나왔다. DBE가 없는 날은 Polaris가 66.02%, Perlmutter가 84.97%였다.\n\n오류를 겪은 GPU는 많지 않았다. DBE가 난 GPU는 Perlmutter 7,604개 중 35개, Polaris 2,240개 중 68개였다. Perlmutter의 DBE 이벤트는 77건, Polaris는 44건이었다.\n\nPerlmutter에서 SBE와 DBE를 모두 겪은 GPU는 29개였고, DBE 이벤트 대부분은 같은 GPU에서 같은 날 SBE가 함께 났다. SBE는 ECC가 정정하지만, 앞으로 DBE가 날 수 있다는 신호가 되었다.\n\n오류율은 시스템마다 크게 달랐다. Polaris의 DBE 비율은 GPU 하루당 0.069로 Delta의 2,555.56배, Perlmutter의 8.41배였다. 오류가 많은 GPU는 시간에 따라 바뀌었고, 오류 발생에 주기는 보이지 않았다. 온도, 전력, GPU 사용률 같은 환경 요인과도 강한 상관관계가 없었다."},"updated_at":"2026-11-14T12:34:12.788563Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0482","org_slug":"nersc"}