GPI-공간
GPI-Space| 개발자 | 프라운호퍼 ITWM |
|---|---|
| 초기 출시 | 2010 |
| 운영 체제 | 리눅스 |
| 유형 | 분산 런타임 시스템 |
| 웹사이트 | gpi-space |
GPI-Space는 프라운호퍼 산업수학연구소(ITWM)가 개발한 병렬 프로그래밍 개발 소프트웨어입니다.소프트웨어의 주요 개념은 도메인 및 HPC 지식을 분리하고 각 부분을 각 전문가에게 맡기는 것이며 GPI-Space 프레임워크는 두 부분을 함께 통합합니다.
GPI-Space는 GPI를 활용하여 빅데이터 문제를 현재 [1]솔루션보다 효율적으로 해결하고 있습니다.
GPI-Space는 [2]휴스턴의 SEG 2010에서 SDPA(지진 개발 및 프로그래밍 아키텍처)라는 이름으로 지질 분야의 도메인별 버전으로 처음 도입되었습니다.
코어 레이어
GPI Space는 병렬 프로그래밍 개발 소프트웨어의 핵심을 이루는 여러 계층과 함께 제공됩니다.
런타임 엔진
런타임 엔진은 사용 가능한 시스템에 사용 가능한 작업을 배포하는 역할을 합니다.대규모 HPC 클러스터에서는 이기종일 수 있으며 기존 컴퓨팅 노드와 GPU 또는 Intel의 Xeon Phi와 같은 가속기 카드가 있는 노드로 구성됩니다.런타임 엔진은 단순한 작업 예약 및 배포 외에도 내결함성도 추가하고 있습니다.작업은 처음에 할당된 하드웨어에 장애가 발생할 경우 다른 리소스에 할당 및 재할당된 후 모니터링됩니다.새 하드웨어를 동적으로 추가할 수 있습니다.
워크플로 엔진
워크플로 엔진은 특수 GPI-Space 태그가 있는 XML 형식의 기존 워크플로의 명령을 Petrinets를 기반으로 하는 런타임 환경 내부 명령으로 변환합니다.워크플로우는 임의의 모듈식으로 구성될 수 있으며 다른 워크플로우를 요소로 사용하므로 사용자는 빌딩 블록을 한 번 미리 정의한 다음 나중에 더 복잡한 워크플로우에서 사용할 수 있습니다.워크플로우의 그래픽 편집기를 사용할 수 있습니다.
자동 병렬화 엔진
자동 병렬화 엔진은 시스템에 병렬로 공급되는 코드를 이상적으로 실행하는 방법을 결정합니다.이를 통해 도메인 프로그래머는 자신의 코드를 병렬화할 필요가 없어지며 도메인에 집중할 수 있습니다.Fraunhofer ITWM의 Competence-Center High-Performance Computing(CC-HPC)에 의한 HPC 지식과 경험은 엔진이 매우 최적의 병렬 코드를 생성하는 능력에 필수적인 기여를 합니다.
가상 메모리 계층
GPI-Space를 사용한 모든 계산은 사용 가능한 다른 빅 데이터 솔루션과 매우 유사한 BeGFS와 같은 고속 병렬 파일 시스템을 사용하여 수행할 수 있습니다.그러나 이 외에도 GPI-Space는 메모리에서 모든 계산을 수행할 수 있으므로 기존 I/O의 높은 지연 시간과 성능 병목 현상을 제거할 수 있습니다.Fraunhofer GPI(그래픽 "GPI 아키텍처" 참조)를 사용하면 분할된 글로벌 주소 공간의 큰 블록 하나가 동적으로 할당됩니다.RDMA 기능을 통해 빠른 단방향 통신이 가능합니다.가상 메모리와의 디스크 전송은 완전히 비동기적이며 계산 뒤에 숨겨져 있습니다.
내진설계 및 프로그래밍 아키텍처(SDPA)
Fraunhofer는 GPI-Space 접근 방식의 유효성을 보여주기 위해 텍사스주 휴스턴에서 SEG 2010이 열리는 동안 이를 지진 개발 및 프로그래밍 아키텍처(SDPA)의 일부로 처음 커뮤니티에 소개했습니다.지진 영역에는 수 년에 걸쳐 개발되었지만 병렬화되지 않은 다양한 프로그래밍 언어로 된 수많은 레거시 알고리즘과 코드가 존재합니다.리소스가 제한되어 있기 때문에 병렬 버전과 단일 프로그래밍 언어로 이러한 코드를 처음부터 다시 작성하는 것은 종종 불가능합니다.
CC-HPC의 개발자들은 다음을 포함하는 지진 데이터를 위한 도메인별 솔루션을 구축했습니다.
- 병렬 I/O를 위한 고도로 최적화된 알고리즘
- 내결함성,
- 지진 데이터에 대한 평행화 패턴, 예를 들어 트레이스, 수집(여러 개의 트레이스로 구성됨) 또는 자동 평행화 엔진이 효율적으로 작동할 수 있도록 하는 스택
- 지진 데이터를 처리하기 위한 일반적인 데이터 관리 루틴.
또한 최종 사용자가 보다 정교한 워크플로우를 위한 빌딩 블록으로 사용할 수 있는 일련의 기본 워크플로우가 있습니다.이 모든 구성 요소는 지진 영역의 병렬화 문제를 해결하므로 도메인 개발자는 문제를 처리하지 않고도 문제에 집중할 수 있습니다.
그런 다음 SDPA의 최종 사용자는 기존의 기존 코드와 모듈을 SDPA와 병렬로 실행하여 프로젝트의 회전 시간을 크게 단축할 수 있습니다. SDPA는 병렬 실행을 위한 새로운 아이디어와 알고리즘을 프로토타입화하는 빠른 방법으로도 사용됩니다.
SDPA는 프로덕션 환경에서 여러 Fraunhofer의 업계 파트너가 사용합니다.
참고 항목
레퍼런스
- ^ Tiberiu Rotaru; Mirko Rahn; Franz-Josef Pfreundt (2014). "MapReduce in GPI-Space". In Dieter an Mey et alt. (ed.). Euro-Par 2013: Parallel Processing Workshops. Springer Berlin Heidelberg. pp. 43–52. ISBN 978-3-642-54419-4.
- ^ McNaughton, Neil (11 January 2010). "Fraunhofer SDPA". OilIT.com.