SKA 데이터 흐름 최적 분할과 그래프 실행
초록
본 논문은 SKA 과학 데이터 프로세서의 핵심인 그래프 실행 엔진을 위해, 데이터 흐름을 효율적으로 파티셔닝하는 알고리즘을 제안한다. DALiuGE 엔진의 두 단계 스케줄링 구조 중 파티셔닝 단계에 초점을 맞추어, 작업 간 데이터 이동 비용을 최소화하면서 각 파티션이 갖는 자원 한계를 만족하도록 하는 제약 최적화 모델과 그 구현을 소개한다. 실험은 세 개의 전형적인 전파천문 파이프라인에 적용되어, 파티션 수와 실행 시간, 자원 사용량 사이의 트레이드오프를 확인한다.
상세 분석
이 논문은 SKA와 같은 초대형 전파망원경 프로젝트에서 발생하는 테라바이트 규모의 실시간 데이터 스트림을 처리하기 위한 그래프 기반 워크플로우 스케줄링 문제를 다룬다. 기존의 DAG(Directed Acyclic Graph) 스케줄링 연구는 주로 작업‑프로세서 매핑에 초점을 맞추어, 최대 흐름이나 할당 그래프와 같은 구조를 이용해 다항식 시간 내에 최적해를 찾는 방법을 제시했지만, 작업 수(N)와 프로세서 수(M)의 곱에 비례하는 그래프 크기 때문에 대규모 시스템에 적용하기엔 비현실적이었다. 저자들은 이러한 한계를 극복하고자 두 단계 접근법을 채택한다. 첫 번째 단계에서는 물리적 그래프 템플릿(PGT)을 생성하고, 두 번째 단계인 파티셔닝에서 PGT를 M개의 파티션으로 나누어 각 파티션이 하나의 컴퓨팅 노드에 대응하도록 한다. 핵심 아이디어는 데이터 이동 비용이 큰 엣지를 우선적으로 “제로화”하여 두 노드를 하나의 파티션에 병합하고, 병합 후에도 각 파티션의 자원 사용량(R_i(t))이 사전에 정의된 용량(C) 이하인지 검증하는 DoP( Degree of Parallelism) 제약을 적용하는 것이다. 알고리즘은 엣지를 가중치(데이터 양) 기준으로 내림차순 정렬한 뒤, greedy하게 병합을 시도한다. 이 과정에서 기존 파티션 간 재병합을 허용함으로써 파티션 수를 최소화하고, 이론적으로 최장 경로 길이(즉, 전체 실행 시간)가 비증가함을 정리 1을 통해 증명한다. 그러나 greedy 방식은 전역 최적성을 보장하지 못하므로, 저자들은 로컬 탐색 휴리스틱을 추가 연구 중이라고 밝힌다. 또한, 각 파티션 내부의 동시 실행 작업 집합을 ‘antichain’으로 모델링해, 비스트리밍 모드에서의 자원 사용을 정확히 추정한다. 이와 같은 파티셔닝은 데이터 로컬리티를 극대화해 intra‑node 통신 비용을 최소화하고, inter‑node 데이터 이동을 제한함으로써 전체 워크플로우의 실행 시간을 단축한다. 동시에, 파티션당 자원 요구량이 용량을 초과하지 않도록 제어함으로써 오버서브스크립션에 따른 지연을 방지한다. 실험 결과는 세 가지 전파천문 파이프라인(이미지 복원, 시계열 분석, 파라미터 추정)에 적용했을 때, 파티션 수를 19개로 제한했음에도 불구하고 기존 단일 파티션 방식 대비 데이터 이동량이 30 % 이상 감소하고, 실행 시간도 15 %~25 % 단축됨을 보여준다. 이러한 결과는 DALiuGE가 SKA와 같은 초대형 과학 프로젝트에서 요구되는 실시간, 고효율 데이터 처리에 충분히 적용 가능함을 시사한다.
댓글 및 학술 토론
Loading comments...
의견 남기기