기초 모델 학습 데이터 준비용 분산 처리 엔진 RayOrch
원제 RayOrch: Programming and Executing Lineage-Controlled Multi-Grain Dataflows for Foundation-Model Data Preparation
추천 37댓글 1
Key Point
파운데이션 모델의 대규모 학습 데이터 파이프라인에서 기존 시스템의 계보 추적 한계를 제거해 GPU 활용률과 처리 속도를 크게 향상시키는 실질적 해결책이다.
핵심 요약
- 파운데이션 모델 학습을 위해 이질적인 문서·동영상을 정형 데이터로 변환하는 확장 가능한 파이프라인이 필요하다.
- 각 부모 항목이 자식으로 확장될 때 자식의 개수가 들쭉날쭉하고, GPU가 부모 관계와 자식 순서·처리 상태를 유지하면서 배치 처리해야 한다.
- 기존 시스템은 병렬 처리를 숨기거나 평탄한 레코드를 노출해 애플리케이션이 계보와 재그룹화를 직접 관리하도록 강제한다.
- RayOrch는 실행 전반에서 부모-자식 관계를 보존하는 프로그래밍 모델과 분산 실행 엔진으로, 순서있는 가변 크기 확장과 그 수집을 선언한다.
- 컴파일러가 각 쌍을 검증하고 런타임이 자식 멤버십·상위 부모·순서·종료 상태를 기록하며, 호출별 FIFO 준비 큐가 여러 부모의 준비된 자식을 배치 처리한다.
- 수집은 배치 경계나 완료 순서가 아닌 선언된 멤버십과 순서로 결과를 재구성하고, 부모는 필수 자식이 모두 종료되면 진행할 수 있다.
- 부모 범위의 타입화된 오류는 실패한 부모의 미발송 형제를 억제하면서 관련 없는 부모는 계속 진행하게 한다.
- NVIDIA H20 GPU에서 MinerU를 4개에서 64개로 확장 시 15.14배, 동영상 파이프라인을 8개에서 64개로 확장 시 7.82배 성능 향상을 달성했다.
- MinerU에서 Ray Data 대비 13.1%, Daft 대비 29.0% 종료 시간 단축, Docling에서 Ray Data 대비 16.0% 단축을 기록했다.