제목 | [시장동향] MPI 집합 통신 성능 향상을 위한 연구 현황 |
---|
분류 | 성장동력산업 | 판매자 | 노민우 | 조회수 | 47 | |
---|---|---|---|---|---|---|
용량 | 866.17KB | 필요한 K-데이터 | 3도토리 |
파일 이름 | 용량 | 잔여일 | 잔여횟수 | 상태 | 다운로드 |
---|---|---|---|---|---|
[시장동향] MPI 집합 통신 성능 향상을 위한 연구 현황.pdf | 866.17KB | - | - | - | 다운로드 |
데이터날짜 : | 2022-12-01 |
---|---|
출처 : | 한국전자통신연구원 |
페이지 수 : | 11 |
-목차-
1. 서론
2. 메모리 구조에 따른 프로세스 IPC
3. MPI
4. MPI 집합통신 성능 향상 연구
5. 결론
일반적으로 고성능 컴퓨팅(High Performance Computing)이란 여러 컴퓨팅 노드들을 활용하여 크고 복잡한 계산을 고속으로 병렬처리하는 기술을 말한다[1].
슈퍼컴퓨터 및 대규모 컴퓨터 클러스터 환경에서의 고성능 컴퓨팅 기술은 과학 및 공학 분야의 다양한 문제를 해결하고 있다[2,3]. 고성능 컴퓨팅 기술의 대표적인 활용 예로는 인간의 단백질 구조를 유전체 수준까지 모델링하는 단백질 구조 분석[4], 분자 역학 시뮬레이션을 통해 수십억이 넘는 생체 분자들의 상호작용 예측을 통한 신약 개발[5], 지진, 태풍, 폭염 등 기상 예측[6], 위성영상 처리 및 분석[7], 핵융합 시뮬레이션[8] 등이 있다.
해당 분야에서는 멀티코어, 멀티프로세서 또는 다수의 컴퓨터로 구성된 클러스터 환경에서 병렬 컴퓨팅(Parallel Computing) 기술을 활용하여 크고 복잡한 문제를 작게 나눈 후 동시에 한꺼번에 처리한다. 병렬 컴퓨팅 기술을 활용하는 응용 프로그램은 OpenMP, MPI와 같은 병렬 프로그래밍 라이브러리들을 활용하여 구현할 수 있다.
MPI는 병렬 컴퓨팅을 수행하기 위해 프로세스 간 메시지를 전달하는 기법을 정의한 라이브러리의 표준이다. 점 대 점(Point-to-Point) 통신과 집합(Collective) 통신으로 구성되며, 프로세서와 네트워크 기술이 발전함에 따라 해당 기술들에 최적화된 형태로 꾸준히 개발되어왔다.
MPI 집합통신은 다수의 프로세스가 동시에 참여하는 프로세스 간 통신 방법으로 대규모 행렬의 곱셈, 선형대수 연산, 반복 알고리즘의 종료 조건 계산 등 다양한 목적으로 활용된다. 대표적인 예로, 최근에 활발히 연구되고 있는 인공지능 분야에서 대규모 딥러닝 모델을 분산 학습할 때 반복적으로 수행되는 파라미터 업데이트 작업을 들 수 있다.
그러나 집합통신은 통신에 참여하는 프로세스의 개수와 전송할 데이터의 양이 증가할수록 프로세스 간 통신 횟수가 많아지며 네트워크 트래픽(Network Traffic)이 발생하는 고비용 연산이다. 이로 인해 고성능 컴퓨팅 분야의 대규모 데이터 분석이나 기계학습과 같이 데이터 집약적인 워크로드의 처리 성능은 집합통신 성능에 의해 좌우된다. 이러한 이유로 집합통신 성능 향상을 위한 다양한 시도가 이루어지고 있으며, 중점적으로 연구되어야 하는 주제 중 하나로 그 중요성이 날로 커지고 있다.
본고에서는 집합통신 성능 향상을 위한 대표적인 연구 사례와 최신 연구들을 중심으로 기술 동향을 분석하였다. 본고의 구성은 다음과 같다. Ⅱ장에서는 메모리 구조에 따른 프로세스 간 통신 기법을 살펴보고, Ⅲ장에서는 MPI와 집합통신 기술을 설명한다. Ⅳ장에서는 집합통신 성능 향상 연구들을 소개한다. Ⅴ장에서는 향후 연구 방향을 점검하며 결론을 맺는다.
※ 본 서비스에서 제공되는 각 저작물의 저작권은 자료제공사에 있으며 각 저작물의 견해와 DATA 365와는 견해가 다를 수 있습니다.