Design and Implementation of HPC Job Management Framework for Computational Scientific Simulation

계산과학 시뮬레이션을 위한 HPC 작업 관리 프레임워크의 설계 및 구현

  • Published : 2016.05.25

Abstract

Recently, supercomputer has been increasingly adopted as a computing environment for scientific simulation as well as education, healthcare and national defence. Especially, supercomputing system with heterogeneous computing resources is gaining resurgence of interest as a next-generation problem solving environment, allowing theoretical and/or experimental research in various fields to be free of time and spatial limits. However, traditional supercomputing services have only been handled through a simple form of command-line based console, which leads to the critical limit of accessibility and usability of heterogeneous computing resources. To address this problem, in this paper, we provide the design and implementation of web-based HPC (High Performance Computing) job management framework for computational scientific simulation. The proposed framework has highly extensible design principles, providing the abstraction interfaces of job scheduler (as well as bundle scheduler plug-ins for LoadLeveler, Sun Grid Engine, OpenPBS scheduler) in order to easily incorporate the broad spectrum of heterogeneous computing resources such as cluster, computing cloud and grid. We also present the detailed specification of HTTP standard based RESTful endpoints, which manage simulation job's life-cycles such as job creation, submission, control and status monitoring, etc., enabling various 3rd-party applications to be newly created on top of the proposed framework.

최근, 슈퍼컴퓨터 시스템은 교육, 의료, 국방 등은 물론 계산과학 시뮬레이션까지 다양한 분야에서 활용되고 있다. 특히, 슈퍼컴퓨터, 클라우드 등 이종의 계산 자원을 연동하는 시뮬레이션 환경은 시간, 공간적 한계를 극복하는 차세대 연구 환경으로서 다양한 응용 분야에서 큰 각광을 받고 있다. 그러나 기존의 이종 슈퍼컴퓨팅 환경은 API(Application Programming Interface)의 부재로 터미널 접근을 통해 계산 작업을 수행하는 단조로운 형태를 띠고 있으며, 이는 이종 컴퓨팅 자원의 접근성 및 활용성을 저해하는 주요 요소이다. 이러한 문제점을 해결하고, 슈퍼컴퓨팅 서비스의 다양성을 확보하기 위해, 본 논문에서는 계산과학 시뮬레이션을 위한 웹 기반 HPC (High Performance Computing) 작업 관리 프레임워크의 설계 및 구현에 대해 기술한다. 제안한 프레임워크는 슈퍼컴퓨터, 클라우드, 그리드 등의 다양한 이기종 자원을 활용하여 시뮬레이션 계산 작업을 수행할 수 있도록 플러그-인 기반 표준 인터페이스 및 번들 플러그-인을 제공하며, 플러그-인 관리자를 통해 손쉽게 자원 확장이 가능하다. 또한 시뮬레이션 작업의 생성, 제출, 제어, 상태 모니터링 등의 전주기적인 작업 라이프사이클 관리를 위해 HTTP 표준 방식의 RESTful endpoints들을 제공한다.

Keywords