IL-0126 Meta AI · 2021-12-03 (게시일)ai-infra
Meta AI 는 2021년 하반기 안에 학습을 마친 175B 모델을 내놓아야 했다. 그 일정 때문에 이 규모에서 하드웨어 문제가 생길 줄 알면서도 대응 도구 없이 OPT-175B 학습을 시작했다. 11월 17일 업데이트 이후 2주 동안 실험은 40번 넘게 재시작했고, 대부분은 하드웨어 결함과 고장 노드를 바꿔 끼울 여분 노드를 충분히 확보하지 못한 탓이었다.
ECC 오류로 노드가 내려가면 클라우드 화면으로 노드 한 대를 교체하는 데 몇 시간이 걸렸다. 같은 불량 노드가 다시 오거나, 새 노드가 NCCL 이나 InfiniBand 문제 또는 같은 ECC 오류를 안고 올라왔다. 재시작 때 1.6TB 체크포인트를 blob 저장소에서 내려받는 과정도 일정한 규칙 없이 멈추곤 해서 복구가 더 늦어졌다. 팀은 결국 노드 교체 스크립트, 메모리 오류를 잡는 GPU burn-in 테스트, InfiniBand 자동 테스트, train.log 모니터링을 직접 만들었고, 체크포인트 다운로드 문제에도 당장 쓸 만한 해결책을 찾았다.
지난 2주 동안 팀 시간의 대부분은 인프라 문제를 피해 가는 데 들어갔다. 팀은 가장 흔한 문제를 다루는 런북과 도구를 갖추고, 다운타임을 줄이려고 다른 사람들을 온콜에 불러 모으기 시작했다.
2021년 11월 17일 업데이트 이후 2주 동안 175B 실험은 하드웨어, 인프라, 학습 안정성 문제로 40번 넘게 재시작했다. 재시작의 대부분은 하드웨어 결함 때문이었고, 노드가 ECC 오류로 내려가면 실험이 멈췄다. 이런 하드웨어 문제 때문에 실험은 하루 중 아무 때나 몇 시간씩 멈췄다.
고장 난 노드를 대신할 여분 노드를 충분히 확보할 수 없었다. 클라우드 화면에서 노드 한 대를 교체하는 데 몇 시간이 걸렸고, 같은 불량 노드를 다시 받는 일이 잦았다. 새로 받은 노드가 NCCL 이나 InfiniBand 문제를 안고 올라오거나 같은 ECC 오류를 내기도 했다.
재시작할 때마다 blob 저장소에서 1.6TB 크기의 모델 체크포인트 하나를 내려받아야 했다. 체크포인트는 약 1.7GB 짜리 파일 992개였고, 이 다운로드가 일정한 규칙 없이 멈추곤 해서 학습 복구가 더 늦어졌다. 클라우드 업체의 Python API 는 문서가 부실해 상당한 디버깅이 필요했다.
추수감사절 연휴에도 하드웨어 장애가 실험을 멈췄고, 팀은 재시작을 로그북에 기록하며 대응했다.
원인 ? 의존성 장애
이 2주 동안 팀은 train.log 모니터링, 메모리 오류를 찾는 GPU burn-in 테스트, InfiniBand 자동 테스트를 넣었다.
이 규모로 학습할 때는 하드웨어 장애 대응을 자동화해야 한다. 밑단 하드웨어를 직접 통제할 수 없는 클라우드에서는 인프라 불안정에 늘 대비해야 한다.
같은 원인 · 공통 NCCL, InfiniBand 패브릭
같은 원인 · 공통 NCCL, InfiniBand 패브릭
같은 원인 · 공통 InfiniBand 패브릭
IL-0134 AUS01 데이터센터에 전력 문제가 생겨 GPU 노드 246대와 스파인 스위치, VAST 스토리지가 한꺼번에 재부팅됐고, 워크로드가 실패하고 NFS 마운트가 끊겼다.같은 원인 · 공통 InfiniBand 패브릭