[논문 리뷰] Enabling Machine Learning-Ready HPC Ensembles with Merlin
Merlin는 낮은 오버헤드로 분산된 이종 워크로드를 조율함으로써 대규모 기계학습(ML)-준비된 과학적 HPC 시뮬레이션 앙상블을 가능하게 하는 고성능 워크플로우 기반 프레임워크입니다. 동적이고 ML을 보완하는 워크플로우—예를 들어 주도 학습과 서rogate 모델링—을 리더십 수준의 HPC 시스템에서 지원하여 시간당 최대 100만 건의 ICF 시뮬레이션을 달성하고, 1억 건의 JAG 시뮬레이션 앙상블과 같은 거대한 데이터셋에 대한 확장 가능하고 장애 내성적인 분석을 가능하게 합니다.
With the growing complexity of computational and experimental facilities, many scientific researchers are turning to machine learning (ML) techniques to analyze large scale ensemble data. With complexities such as multi-component workflows, heterogeneous machine architectures, parallel file systems, and batch scheduling, care must be taken to facilitate this analysis in a high performance computing (HPC) environment. In this paper, we present Merlin, a workflow framework to enable large ML-friendly ensembles of scientific HPC simulations. By augmenting traditional HPC with distributed compute technologies, Merlin aims to lower the barrier for scientific subject matter experts to incorporate ML into their analysis. In addition to its design, we describe some example applications that Merlin has enabled on leadership-class HPC resources, such as the ML-augmented optimization of nuclear fusion experiments and the calibration of infectious disease models to study the progression of and possible mitigation strategies for COVID-19.
연구 동기 및 목표
- 시뮬레이션 및 실험 데이터의 복잡성과 양이 증가함에 따라 과학적 HPC 환경에서 대규모이고 ML 友好的한 시뮬레이션 앙상블의 증가하는 수요를 해결하기 위해.
- ML이 수백만 개의 학습 샘플을 요구하는 데 반해 HPC는 소수의 장시간 실행 작업 최적화를 위해 설계되어 있는 본질적 갈등을 극복하기 위해.
- 유연한 쉘 유사 인터페이스와 자동화된 작업 관리 기능을 통해 과학 분야 전문가들이 HPC 워크플로우에 ML을 통합하는 데 장벽을 낮추기 위해.
- 분산된 HPC 자원을 통해 시뮬레이터, 후처리 도구, ML 트레이너를 포함한 이종의 다단계 워크플로우를 확장 가능하고 장애 내성적으로 실행하기 위해.
- ML 피드백을 활용해 실시간으로 동적 샘플링과 최적화 워크플로우를 구현함으로써 시뮬레이션 선택을 안내하고 계산 낭비를 줄이기 위해.
제안 방법
- Merlin는 최소한의 오버헤드로 수백만 개의 샘플에 이르는 시뮬레이션 앙상블을 확장하기 위해 동적 계층적 작업 생성 알고리즘을 사용합니다.
- HPC 작업 스케줄러와 통합되어 있으며, 수천 개의 노드에 걸쳐 비동기 워커를 조율하기 위해 생산자-소비자 모델을 활용합니다.
- 사용자 편의성을 위해 쉘 유사 명령줄 인터페이스(CLI)를 활용하여 익숙한 스크립팅 패턴을 사용해 복잡한 워크플로우를 조합할 수 있습니다.
- 무작위 장애 발생 시 전체 워크플로우를 다시 시작하지 않고도 복구할 수 있도록 증명 가능성 및 재실행 시스템을 구현합니다.
- Flux와 Conduit와 같은 외부 도구와의 통합을 지원하여 여러 HPC 시스템 간의 작업 관리 및 워크플로우 조율을 가능하게 합니다.
- 오픈소스 컴포넌트 기반으로 구축되었으며, YAML 기반 워크플로우 기술서(Maestro)와 재사용 가능한 워크플로우 컴포넌트를 위한 보조 문서(spellbook)를 노출합니다.
실험 결과
연구 질문
- RQ1어떻게 워크플로우 시스템이 HPC 환경에서 정확한 ML 모델을 훈련시키기에 적합한 거대하고 다성분의 시뮬레이션 앙상블을 효율적으로 관리할 수 있는가?
- RQ2어떤 아키텍처 패턴이 시뮬레이터, 후처리 도구, ML 트레이너를 포함한 이종적이고 비동기적인 워크플로우의 저오버헤드, 확장 가능한 실행을 가능하게 하는가?
- RQ3어떻게 ML을 HPC 워크로드에 통합하여 주도 학습을 통해 새로운 시뮬레이션 선택을 안내하고 계산 낭비를 줄일 수 있는가?
- RQ4Merlin과 같은 워크플로우 프레임워크가 수백만 개의 시뮬레이션 샘플로 확장될 수 있는 정도는 어느 정도이며, 작업 대기 및 실행 오버헤드를 최소화할 수 있는가?
- RQ5노드 장애 발생 시 전체 작업을 다시 시작하지 않고도 복구할 수 있도록, 대규모 HPC 워크플로우에서 증명 가능성 추적과 장애 내성 기능을 어떻게 구현할 수 있는가?
주요 결과
- Merlin는 Sierra HPC 시스템에서 시간당 약 100만 건의 시뮬레이션을 처리하면서 1억 건의 ICF 시뮬레이션으로 구성된 1억 건의 JAG 데이터셋을 성공적으로 생성했습니다.
- 작업 생성 및 실행에 있어 낮은 오버헤드를 달성하여 이상적인 벤치마크 워크로드에서 수백만 개의 샘플로의 효율적 확장을 가능하게 했습니다.
- Merlin의 동적이고 ML을 보완하는 워크플로우를 통해 ICF 최적화 과정에서 주도 학습을 활용해 새로운 시뮬레이션 선택을 안내함으로써 필요한 시뮬레이션 수를 줄였습니다.
- 에피캐스트 코로나19 연구는 Merlin을 활용해 여러 HPC 시스템을 통합된 자원으로 통합하여 감염병 모델의 고속·시간 민감도 분석을 가능하게 했습니다.
- Merlin의 증명 가능성 및 재실행 시스템은 사용자가 랜덤 시스템 장애 발생 후 실시간 또는 사후에 복구할 수 있었으며, 새로운 전용 컴퓨팅 할당이 필요하지 않았습니다.
- 이 프레임워크는 여러 HPC 센터에 도입되었으며, MIT 라이선스 하에 공개되어 있으며, 1만 건의 샘플 JAG 데이터셋과 재사용 가능한 컴포넌트를 담은 스펠북도 함께 공개되었습니다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.