섹션별 상세
대규모 학습 인프라의 효율성을 정량화하기 위해 유효 학습 시간(ETT%) 지표를 도입했습니다. ETT%는 전체 벽시계 시간(Wall Time) 대비 실제 데이터 학습 시간의 비율로 정의되며, 하드웨어 할당 후 학습 시작까지의 시간(TTS)과 장애 복구 시간(TTR)을 주요 관리 대상으로 삼습니다. 이를 통해 인프라의 유휴 상태와 안정성을 동시에 모니터링하고 최적화 우선순위를 결정합니다.


트레이너 초기화 단계에서 불필요한 통신을 제거하고 프로세스를 파이프라인화하여 시작 속도를 개선했습니다. 기존에는 샤드 메타데이터를 구축하기 위해 수많은 all_gather 호출이 발생했으나, 로컬 메타데이터를 활용하는 방식으로 변경하여 통신 오버헤드를 줄였습니다. 또한 데이터 로딩(DPP)과 PyTorch 2.0 컴파일을 병렬로 실행하여 대규모 모델의 초기 대기 시간을 단축했습니다.

PyTorch 2.0의 컴파일 시간과 재컴파일 오버헤드를 줄이기 위한 최적화를 수행했습니다. 동적 셰이프(Dynamic Shapes)로 인한 잦은 재컴파일을 방지하기 위해 파라미터를 동적으로 마킹하는 도구를 개발하고, 여러 캐시 요소를 통합한 MegaCache를 도입하여 컴파일 시간을 약 40% 절감했습니다. 이는 특히 분산 환경이나 클라우드 환경에서 재시도 작업의 신뢰성을 높이는 데 기여했습니다.
체크포인트 저장 시 발생하는 GPU 차단 시간을 최소화하기 위해 비동기 체크포인팅 기술을 적용했습니다. 체크포인트를 CPU 메모리에 먼저 복사한 뒤 백그라운드에서 업로드를 진행함으로써 트레이너가 즉시 학습 루프로 복귀할 수 있게 했습니다. 또한 장애 발생 시 손실되는 학습량을 최소화하기 위해 실패율에 따른 최적의 체크포인트 저장 간격을 산출하여 적용했습니다.

모델 퍼블리싱 과정을 학습 프로세스에서 분리하여 종료(Shutdown) 시간을 약 30분 단축했습니다. 기존에는 학습 종료 직전 GPU를 점유한 상태에서 추론용 모델 최적화 작업을 수행했으나, 이를 별도의 CPU 기반 독립 실행형 파이프라인으로 전환했습니다. 이를 통해 고비용 자원인 GPU의 유휴 점유 시간을 줄이고 전체적인 자원 활용 효율을 높였습니다.
용어 해설
- 유효 학습 시간(Effective Training Time (ETT%))
- — 전체 E2E 실행 시간 중 실제 모델 학습(데이터 소비)에 사용된 시간의 비율입니다. 초기화, 체크포인팅, 장애 복구 등 오버헤드를 제외한 순수 학습 효율을 측정하는 핵심 지표입니다.
- 체크포인팅(Checkpointing)
- — 학습 중인 모델의 상태(파라미터, 옵티마이저 등)를 특정 시점에 저장하는 과정입니다. 시스템 장애 시 처음부터 다시 시작하지 않고 마지막 저장 지점부터 복구할 수 있게 해줍니다.
- 샤딩 계획(Sharding Plan)
- — 대규모 모델의 텐서를 여러 GPU 장치에 분산 배치하는 전략입니다. 효율적인 샤딩 계획은 초기화 시 통신 오버헤드를 줄이고 메모리 활용도를 최적화하는 데 필수적입니다.
- 동적 셰이프(Dynamic Shapes)
- — 입력 데이터의 크기나 차원이 실행 시마다 변하는 특성입니다. PyTorch 2.0 컴파일러에서 잦은 재컴파일을 유발하는 주요 원인이며, 이를 최적화하는 것이 학습 시작 속도 개선의 핵심입니다.
기술
- PyTorch 2.0
- TorchRec
- Triton
- MegaCache
- Async Checkpointing
활용 사례
- 대규모 파운데이션 모델 학습
- 분산 학습 인프라 효율화
- 학습 비용 최적화
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
원문 발행 2026. 04. 18.수집 2026. 04. 18.출처 타입 RSS
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
