Skip to main content
QUICK REVIEW

[논문 리뷰] nOS-V: Co-Executing HPC Applications Using System-Wide Task Scheduling

David Álvarez, Kevin Sala|arXiv (Cornell University)|2022. 04. 22.
Distributed and Parallel Computing Systems인용 수 4
한 줄 요약

이 논문은 공유 노드에서 HPC 애플리케이션의 시스템 전반적인 미세한 수준의 동시 실행을 가능하게 하는 경량 작업 라이브러리인 nOS-V를 소개한다. 여러 애플리케이션 간 작업 스케줄링을 통합함으로써, 개별 런타임을 하나의 글로벌 스케줄러로 대체하여 유휴 자원을 줄이고 효율성을 향상시킨다. 독립 실행 대비 세 개의 애플리케이션 동시 실행에서 중앙값 1.25배의 성능 향상을, 쌍방 동시 실행에서는 1.17배의 성능 향상을 달성한다.

ABSTRACT

Future Exascale systems will feature massive parallelism, many-core processors and heterogeneous architectures. In this scenario, it is increasingly difficult for HPC applications to fully and efficiently utilize the resources in system nodes. Moreover, the increased parallelism exacerbates the effects of existing inefficiencies in current applications. Research has shown that co-scheduling applications to share system nodes instead of executing each application exclusively can increase resource utilization and efficiency. Nevertheless, the current oversubscription and co-location techniques to share nodes have several drawbacks which limit their applicability and make them very application-dependent. This paper presents co-execution through system-wide scheduling. Co-execution is a novel fine-grained technique to execute multiple HPC applications simultaneously on the same node, outperforming current state-of-the-art approaches. We implement this technique in nOS-V, a lightweight tasking library that supports co-execution through system-wide task scheduling. Moreover, nOS-V can be easily integrated with existing programming models, requiring no changes to user applications. We showcase how co-execution with nOS-V significantly reduces schedule makespan for several applications on single node and distributed environments, outperforming prior node-sharing techniques.

연구 동기 및 목표

  • 현대 HPC 시스템에서 애플리케이션이 순차적 단계, 로드 불균형 또는 병렬성 부족으로 인해 자원을 저조하게 사용하는 문제를 해결하기 위해.
  • 간섭, 글로벌 시스템 시각 확보 부족, 또는 애플리케이션 특화 제약 조건으로 인해 성능이 저하되는 기존의 공존 및 오버서브스크립션 기법의 한계를 극복하기 위해.
  • 애플리케이션 수정 없이도 미세한 수준의 시스템 전반 스케줄링이 가능한 이식성 있고 경량적인 런타임 시스템을 설계하기 위해.
  • 단일 노드 및 분산 환경에서 다양한 NUMA 정책을 적용한 다양한 워크로드에 대한 동시 실행 성능을 평가하기 위해.

제안 방법

  • nOS-V는 공지된 HPC 애플리케이션의 모든 작업을 글로벌하게 관리하는 통합된 작업 런타임을 구현하며, 각 애플리케이션별 런타임을 대체한다.
  • 표준 프로세스 간 통신(IPC) 메커니즘을 활용하며 커널 수정이 필요 없어 이식성과 통합 용이성을 확보한다.
  • 시스템은 글로벌 작업 큐를 유지하고 프로세스 우선순위 또는 데이터 로컬리티 기반의 스케줄링 정책을 적용하여 성능을 최적화한다.
  • 사용자 코드나 바이너리 수정 없이도 하이브리드 MPI 및 작업 기반 프로그램을 포함한 다수의 애플리케이션 동시 실행을 지원한다.
  • 실시간 자원 가용성과 로컬리티를 기반으로 코어 간 동적 로드 밸런싱을 통해 운영 체제의 프리에임프트 간섭을 방지한다.
  • Nanos6 런타임 및 OmpSs-2 프로그래밍 모델과 통합되어 실제 HPC 워크로드에서 평가가 가능하다.

실험 결과

연구 질문

  • RQ1다양한 병렬성 수준을 가진 HPC 워크로드에서 시스템 전반의 작업 스케줄링이 노드 수준의 자원 활용도를 크게 향상시킬 수 있는가?
  • RQ2정적 공존과 동적 오버서브스크립션 대비 통합된 런타임을 통한 동시 실행의 성능 및 확장성은 어떻게 비교되는가?
  • RQ3다양한 HPC 애플리케이션, 특히 NUMA 인식 메모리 액세스 패턴을 가진 애플리케이션에서 동시 실행이 스케줄링 종료 시간을 얼마나 줄일 수 있는가?
  • RQ4nOS-V는 성능 저하 없이 복잡한 워크로드, 예를 들어 세 개의 애플리케이션 동시 실행 및 분산 응용 프로그램을 지원할 수 있는가?

주요 결과

  • 단일 노드에서 HPC 애플리케이션의 쌍방 동시 실행에 대해 독립 실행 대비 중앙값 1.17배의 성능 향상을 달성한다.
  • 세 개의 애플리케이션 동시 실행에서는 중앙값 성능 향상이 1.25배로 증가하여 확장성과 자원 활용도 향상을 입증한다.
  • 같은 소켓 내 코어에 작업을 할당함으로써 원격 NUMA 액세스를 줄여 데이터 로컬리티를 향상시키고 지연을 감소시킨다.
  • nOS-V는 DLB, Callisto, AMCilk와 같은 기존 공존 기법보다 글로벌한 모든 작업의 시각을 제공하고 애플리케이션 별 런타임 간 간섭을 방지함으로써 우월한 성능을 발휘한다.
  • OmpSs-2 및 Nanos6와의 통합을 통해 사용자 응용 프로그램이나 바이너리 수정 없이도 투명한 동시 실행을 가능하게 한다.
  • 비정규적인 병렬성과 이질적인 메모리 액세스 패턴을 가진 다양한 워크로드에서도 효과적인 성능을 발휘한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.