[논문 리뷰] Pilot-Streaming: A Stream Processing Framework for High-Performance Computing
Pilot-Streaming은 Kafka, Spark, Dask와 같은 스트림 처리 프레임워크의 동적, 즉각적인 배포 및 런타임 리소스 관리를 가능하게 하는 고성능 컴퓨팅 프레임워크이다. 메시징, 전송, 처리를 통합 아키텍처를 통해 분리함으로써 32개 노드에서 최대 390 MB/sec의 처리량을 달성하며, 실시간 라이트 소스 데이터 분석에 적합하고 과학적 HPC 환경에서 확장 가능하고 적응 가능한 스트리밍 워크로드를 지원한다.
An increasing number of scientific applications rely on stream processing for generating timely insights from data feeds of scientific instruments, simulations, and Internet-of-Thing (IoT) sensors. The development of streaming applications is a complex task and requires the integration of heterogeneous, distributed infrastructure, frameworks, middleware and application components. Different application components are often written in different languages using different abstractions and frameworks. Often, additional components, such as a message broker (e.g. Kafka), are required to decouple data production and consumptions and avoiding issues, such as back-pressure. Streaming applications may be extremely dynamic due to factors, such as variable data rates caused by the data source, adaptive sampling techniques or network congestions, variable processing loads caused by usage of different machine learning algorithms. As a result application-level resource management that can respond to changes in one of these factors is critical. We propose Pilot-Streaming, a framework for supporting streaming frameworks, applications and their resource management needs on HPC infrastructure. Pilot-Streaming is based on the Pilot-Job concept and enables developers to manage distributed computing and data resources for complex streaming applications. It enables applications to dynamically respond to resource requirements by adding/removing resources at runtime. This capability is critical for balancing complex streaming pipelines. To address the complexity in developing and characterization of streaming applications, we present the Streaming Mini- App framework, which supports different plug-able algorithms for data generation and processing, e.g., for reconstructing light source images using different techniques. We utilize the Mini-App framework to conduct an evaluation of Pilot-Streaming.
연구 동기 및 목표
- 고성능 컴퓨팅(HPC) 인프라에서 높은 데이터율을 가지는 과학적 응용 프로그램을 위한 동적이고 확장 가능한 스트리밍 처리 지원의 부족을 해결하기 위해.
- 메시지 브로커 및 처리 엔진과 같은 스트리밍 컴포onent의 런타임 리소스 관리 및 동적 스케일링을 가능하게 하기 위해.
- 과학 워크플로우에서 복잡한 스트리밍 파이프라인의 개발 및 성능 특성 분석을 단순화하기 위해.
- HPC 시스템에서 다양한 스트림 처리 프레임워크를 배포하고 관리하기 위한 프레임워크에 종속되지 않는 추상화 계층을 제공하기 위해.
- 실제 워크로드를 사용하여 프레임워크의 성능을 평가하기 위해, 예를 들어 라이트 소스 이미지 재구성 및 스트리밍 KMeans를 포함한다.
제안 방법
- Pilot-Streaming은 메시지 브로커링, 통신, 처리를 분리하는 통합 아키텍처를 사용하여 모듈식이고 조합 가능한 스트리밍 처리를 가능하게 한다.
- Pilot-Abstraction 모델 기반으로 구축되어 각 응용 프로그램 컴포넌트의 동적 프로비저닝 및 런타임 리소스 조정이 가능하다.
- Kafka, Spark Streaming, Dask, Flink와 같은 스트리밍 프레임워크를 배포하고 관리하기 위한 고수준의 프레임워크에 종속되지 않는 API를 제공한다.
- 스트리밍 미니앱은 과학적 스트리밍 응용 프로그램의 데이터 생성, 처리 및 성능 특성을 시뮬레이션하기 위한 플러그인 기반 프레임워크로 도입된다.
- 계산 및 I/O 리소스의 동적 스케일링을 지원하며, 브로커 및 데이터 소스에 대한 병렬 처리 및 대역폭 인식 설정도 가능하다.
- XSEDE Wrangler HPC 시스템에서 실세계 스트리밍 워크로드 하에서 처리량, 확장성 및 병목 현상을 평가하기 위해 실험을 수행했다.
실험 결과
연구 질문
- RQ1HPC 인프라에서 매우 변동성이 큰 데이터율과 동적 리소스 수요를 가지는 스트리밍 워크로드는 어떻게 효율적으로 관리할 수 있는가?
- RQ2과학적 HPC 환경에서 스트리밍 처리 프레임워크의 동적, 즉각적인 배포 및 런타임 스케일링을 가능하게 하기 위해 필요한 아키텍처 추상화는 무엇인가?
- RQ3메시지 브로커, 처리 엔진 및 리소스 구성의 다양한 조합이 스트리밍 파이프라인의 종단 간 처리량과 성능에 미치는 영향는 어떠한가?
- RQ4스트리밍 미니앱 프레임워크는 복잡한 과학적 스트리밍 응용 프로그램의 특성을 얼마나 정확하게 에뮬레이션할 수 있으며, 성능 평가에 기여하는가?
- RQ5고처리량 스트리밍 파이프라인의 주요 성능 병목 요소는 무엇이며, 지능적인 리소스 관리를 통해 어떻게 완화할 수 있는가?
주요 결과
- Pilot-Streaming은 32개 노드, 1536개의 가상 코어, 4TB의 메모리에서 최대 390 MB/sec의 처리량을 달성하여 LCLS-I 데이터 스트림을 고샘플링 레이트로 지속적으로 처리할 수 있었다.
- 프레임워크는 I/O 대역폭과 데이터 소스 또는 브로커로의 읽기 병렬 처리가 충분히 높을 때에만 추가적인 계산 리소스가 성능 향상에 기여한다는 것을 입증했다.
- 리소스 관리는 핵심적이다: 특히 데이터 수신과 처리 간의 불균형은 병목을 유발하며, 처리가 종종 제한 요소가 된다.
- Kafka, Dask, Spark 클러스터를 동적으로 실행하는 오버헤드는 유연성, 리소스 격리 및 컴포넌트의 독립적 스케일링의 이점보다 더 크지 않다.
- 스트리밍 미니앱은 적응형 샘플링 및 다양한 처리 알고리즘을 포함한 다양한 응용 프로그램 행동을 효과적으로 시뮬레이션했으며, 성능 분석 및 최적화를 가능하게 했다.
- 스트리밍 파이프라인 최적화의 조합 복잡성은 자동화된 도구가 필요하며, Pilot-Streaming과 미니앱은 향후 성능 모델링 및 기계학습 기반 예측을 위한 기초를 제공한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.