Flood Inundation Analysis Using OpenMP Technique

OpenMP를 이용한 제내지 침수 병렬해석

  • Published : 2016.05.25

Abstract

복잡한 지형에서 컴퓨터를 이용한 물리적 기반 수치모의는 합리적인 시간내에 연산을 완료하기 위해 대개 큰 연산장비 들을 요구한다. 더욱이 모의되는 현상이 시간단계마다 갱신되어지는 동역학적 현상에 기반된 비정상상태일 때 연산성능은 고려되어지는 가장 중요한 주제가 될 수 있다. 연산 시간을 줄이기 위한 가장 널리 이용되는 전략중의 하나는 적절한 수의 프로세서를 이용하는 병렬 기법이다. 최근 들어 연산속도를 가속화하기 위해 다수의 코어를 이용한 OpenMP 와 MPI 기법들이 병렬해석기법으로 대두되었고 그래픽 연산장치를 이용한 병렬처리 해석기법도 소개되고 있다. 본 연구에서는 중앙연산장치를 이용한 병렬 해석기법을 이용하여 제내지 침수해석의 적용성을 검토하고 그 결과을 비교하였다. 본 연구를 위해 OpenMP 병렬기법을 이용하여 확산파 침수해석 프로그램의 원시코드를 재작성하여 가상 및 실제 유역에 적용하였다. 해석결과는 분산메모리 병렬해석 기법인 MPI를 도입한 모형의 결과와 비교되었다. OpenMP를 도입한 모형과 MPI를 도입한 경우 유량 및 수심의 경우 오차 허용 한계내에 수렴되어 만족되었으나 그러나 연산 속도의 경우 두 기법간의 자료의 저장 방법 차이로 인해 차이를 나타내었다. 가상 유역에 적용된 결과로 검토된 각 기법의 증속(speedup) 효과는 MPI의 경우 4 코어를 이용하였을 때 최고 2.62 배 정도에 도달하는 것으로 나타났다. OpenMP 를 적용한 경우 2.87 배 정도로 나타나 OpenMP 를 이용하였을 때 증속효과가 조금 더 뛰어났다. 이는 두 기법의 메모리 저장방식의 차이로 인해 자료의 전송량과 전송 시간이 적은 OpenMP 를 도입한 모형에서 MPI 모형 보다 상대적으로 뛰어난 결과를 나타내었다. 실제 유역의 적용을 위해 상대적으로 우수한 증속결과를 나타낸 OpenMP를 도입한 모형을 Malpasset 댐 붕괴 유역에 적용하였다. 적용된 요소의 수는 각각 45254, 11352 개로 비교적 많은 요소를 가진 하류지역에 적용하여 병렬효과를 극대화하고자 하였다. 적용결과 두 경우 모두 병렬 해석 기법을 도입한 모형에서 유속과 침수심 등은 순차적 모형과 동일한 값을 나타내었으나 증속효과로 인한 연산시간은 순차적 모형에서 8.57 배로 나타나 병렬 모형의 상대적으로 빠른 연산속도를 판단할 있었다. 위의 적용결과를 통해 계산 요소들이 많은 2 차원 해석의 경우 기존의 단일 코어를 이용한 순차적 해석은 장시간에 걸치 연산시간으로 인해 작업효율이 낮아지는 결과를 발생시킬 수 있으며 병렬 해석을 도입할 경우 주어진 컴퓨터 자원를 효율적으로 이용가능하여 합리적인 연산시간으로 연산결과를 얻는 것이 가능하여 반복적 통계 기법/Ensemble 해석 등을 이용한 종합적 해석이 좀 더 실용적으로 이루어 질 수 있을 것이라고 판단되었다.

Keywords