• 검색 결과가 없습니다.

병렬계산의 수자원공학에 적용

N/A
N/A
Protected

Academic year: 2021

Share "병렬계산의 수자원공학에 적용"

Copied!
9
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

W ater for Future

병렬계산의 수자원공학에 적용

1. Introduction

1부터 100까지 정수의 합을 구할 때 다음 두 가 지 방법으로 계산할 수 있다. 첫 번째 방법은 한 사 람이 주어진 정수를 순차적으로 합하는 것이다. 1 에 2를 더하고 그 결과에 3을 더하는 방식으로 100 까지 더하는 것이다. 두 번째 방법은 네 명에게 범

위를 구분하여 부분 합을 구하게 하고 이후 취합을 하는 것이다. 예를 들면, 첫 번째 사람에게는 1부 터 25까지의 합을, 두 번째 사람에게는 26부터 50 까지의 합을 계산하도록 하는 것이다. 당연히 계산 결과를 더 빨리 내놓는 쪽은 후자의 경우이다.

병렬계산 (parallel computing)의 기본 개념은 두 번째 방법과 같이 (첫 번째 방법은 직렬계산) 크고 복잡한 문제를 작게 나눠 동시에 병렬적으로 해결하는 것이다 (이재석 1988, 김태형 외 2014).

현대 사회가 발달하면서 처리되어야 할 데이터 의 양이 기하급수적으로 증가하였고 규모가 큰 시 스템을 모의해야할 필요성이 대두되었다. 처리해 야 하는 데이터의 양이 기존의 직렬계산 (serial computing)으로는 감당할 수 없게 되어, 이용 가 능한 계산 자원 (computing resources)을 동시에 동원하여 계산 효율을 증대하게 되었다. 최근 컴 퓨터 기술의 발달로 컴퓨터에 해박한 지식을 가진 컴퓨터 전문가뿐만 아니라 다른 공학 분야의 연구 자들도 병렬계산을 활용할 수 있게 되었다. 최근 에는 개인용 컴퓨터에서 쿼드코어 (quad core, 4 개의 코어 (컴퓨터의 기본 처리 단위))를 탑재한 CPU (central processing unit)가 일반적이며 인 텔에서는 올해 안에 72개의 코어를 가진 개인컴 퓨터용 CPU (Xeon Phi)를 출시한다고 한다.1)

정 동 휘 ●●●

고려대학교 방재과학기술연구소 연구교수 [email protected]

최 지 호 ●●●

고려대학교 건축사회환경공학부 석박통합과정

[email protected]

김 중 훈 ●●●

고려대학교 건축사회환경공학부 교수 [email protected]

1) http://www.foxnews.com/tech/2015/11/18/intels-72-core-processor-is-coming-to-desktop-computers-next-year.html

(2)

W ater for Future

따라서, 연구 분야에서 병렬계산의 활용도는 더 욱 증가할 것이라 예상되며 또한 병렬계산의 일반 화에 의한 새로운 연구영역의 개척이 이루어질 것 으로 예상된다. 예를 들어 코어가 72개가 된다면 이들 사이 데이터를 어떻게 교환하고 오버헤드시 간 (overhead time)을 어떻게 관리할 것인지 등 병렬화 구조 (아키텍쳐) 대한 문제해결이 대두될 것이다.

본 학술기사에서는 병렬계산을 처음 접하는 사 람도 이해하기 쉽도록 병렬계산과 관련된 배경지 식을 설명하고, 수자원공학의 각 연구 분야에 병 렬계산 적용사례를 정리한다. 또한 향후 병렬계산 을 활용하여 수자원공학에서 개척할 수 있는 새로 운 연구 분야를 제시한다.

2. 병렬계산 (Parallel computing)

병렬계산을 이해하기 위해 코어 (core), 프로세 서 (processor), CPU, 스레드 (thread)에 대해 알 아야 한다. 앞서 정의하였듯 코어는 컴퓨터에서 계산 처리를 하는 기본 단위 (a processing unit) 이다. 프로세서와 동일한 의미로 사용되기도 하는 CPU는 프로세서 페키지 (그림 1에서 “SYSTEM”

으로 표현된 부분)의 성격이 강하다. 프로세서는 복수의 코어로 구성 되어 있는 칩 (chip)이며 계산 데이터 처리 및 저장을 위한 케시 메모리 등을 포 함한다 (그림 1). 스레드란 프로세서 내에서의 실 행 단위이며, 최근 개발된 컴퓨터에서는 여러 개 의 실행 흐름을 두기 위해 한 프로세서 당 여러 개 의 스레드 (multi-thread)를 만들 수 있도록 구

그림 1. CPU, 프로세서, 코어의 관계도 (출처: https://software.intel.com/)

그림 2. 스레드와 코어

(3)

W ater for Future

성되어 있다 (그림 2). 고속도로에서 차량의 흐름 을 스레드와 자주 비교하기도 하는데 복수의 스 레드를 생성할 수 있다면 주어진 계산을 효율적으 로 처리할 수 있게 된다. 필자의 컴퓨터 (Intel i7- 4770 CPU)는 네 개의 코어 (quad core)를 가진 프로세서가 탑재되어 있으며, 각 코어 당 두 개의 스레드 생성이 가능하다.

병렬계산은 네트워크로 연결된 다수의 컴퓨터 (PC 클라우드)를 이용해 병렬 처리를 할 수도 있 고, 또한 멀티코어를 탑재한 컴퓨터를 이용하여 병렬처리를 할 수가 있다 (그림 3). 전자의 예는 클라우드 컴퓨팅이며 후자의 대표적인 예는 코어 의 수가 수만 개 이상인 슈퍼컴퓨터를 활용하는 것이다. 2013년 6월 기준으로 최고의 슈퍼컴퓨터 는 중국 국방과학기술대학에서 개발한 천하 2호 이며 4만 8천 개의 프로세서로 구성되어있다. 소 규모로 개인용 컴퓨터의 코어를 동시에 활용할 수 도 있다. 후자의 경우 다시 CPU (프로세서)의 코 어를 동시에 사용하는 CPU 병렬계산, graphics processing unit (GPU)의 기본 처리 단위를 병렬 화하는 GPU 병렬계산으로 나뉜다. 이름에서 그

의미를 알 수 있듯이 GPU 병렬계산은 컴퓨터의 그래픽을 나타내는 한 픽셀을 처리하는 계산 단위 를 병렬화하는 것인데 수천 개의 코어에서 동시 계산이 가능하다 (그림 4).

병렬시스템의 구조는 메모리가 공유되어 있는지 또는 분산되어 있는지에 따라 공유 메모리 구조 (shared-memory multiprocessors)와 분산 메모 리 구조 (distributed-memory multiprocessors) 로 나뉜다. 전자는 다중 스레드들이 하나의 주소 공간을 공유하여 데이터를 병렬 처리하는 시스템 으로 각각의 노드들이 전체 메모리를 읽고 쓸 수 있는 권한을 가진다. 공유 메모리 구조의 표준도 구로 OpenMP (open multi-processing)가 쓰인 다. 분산형 메모리 시스템에서 각각의 프로세서 는 그에 할당된 독립된 메모리에 접근 권한을 가 지며 MPI (message passing interface)가 사용 된다. 따라서 수자원공학에서 개발된 각종 소프트 웨어 중 OpenMP와 같이 메모리를 공유하는 구조 에서는 병렬화를 수행할 수 없는 경우가 있다. 예 를 들어 미국 환경청 (Environmental Protection Agency)에서 개발한 상수관망해석 프로그램인

그림 3. PC 클라우드 병렬화 (좌)와 CPU 병렬화 (우)

그림 4. CPU (좌)와 GPU 병렬화 (우)의 차이 (출처: www.nvidia.com)

(4)

W ater for Future

EPANET (Rossman 2000)은 전역변수의 사용이 많아 멀티스레드를 기반으로 하는 OpenMP의 적 용이 불가능하다. 따라서 최근 연구에서 소스코드 를 수정한 모형이 개발되었다 (Lopez-Ibanez et al. 2008, Guidolin et al. 2010).

이즈음에서 독자들은 이러한 질문을 할 수 있 다. 노드/코어의 개수 (병렬처리를 하는 계산 단위 의 개수)가 무한정 증가할수록 계산 효율 또한 비 례하여 증가할까? 암달의 법칙 (Amdahl’s law)은 그것이 사실이 아니라는 것이 보여주고 있다. 암 달의 법칙은 암달의 저주 (Amdahl’s curse)라고 도 불리며 시스템의 일부를 (병렬처리 등과 같이) 개선할 때 시스템 전체의 최대 성능향상을 식으

로 나타내었다 (그림 5). 즉, 어떤 컴퓨터 시스템 에 P만큼의 부분에서 병렬 계산을 적용하여 S만큼 의 성능향상이 있을 때 시스템 전체에서 최대 성 능향상은 1/{(1.0-P)+P/S}와 같다. 예를 들어, 어 떤 작업 전체의 계산 속도를 2배로 늘일 수 있다면 P는 1.0이고 S는 2.0이므로 최대 성능향상은 1/

{(1.0-1.0)+1.0/2.0}=2배가 된다.

실제로 전체 계산 부분을 모두 (100%) 병렬계산 화 하는 것은 오버헤드 및 전후처리 시간 때문에 불가능 하므로 프로그램의 95%를 병렬화할 수 있 다고 가정 한다면 병렬계산에 적용되는 프로세서 의 개수에 따른 최대성능향상 (speedup)은 최대 20배로 수렴한다.

그림 5. 암달의 법칙 (Amdahl’s Law) (출처: 위키피디아)

3. 수자원공학 분야에 적용 사례

수자원공학 분야에서 병렬계산의 적용 사례는 다음과 같이 3가지 분야로 분류할 수 있다.

1) 상수관망 분야

상수관망 분야에서는 네트워크 해석을 위한 전 역경사법 (global gradient method, Todini and Pilati 1988) 계산 시 메트릭스 분할 계산에 병렬

계산을 적용하였거나, 유전자 알고리즘, 화음탐 색법 등 메타휴리스틱 알고리즘의 탐색 성능향상 과 해 탐색의 신뢰성 확보를 위해 병렬 최적화 알 고리즘을 개발한 연구들이 있다. 또는 상수관망의 각종 최적화 문제에서 가능해 (possible solution) 의 적합도 (fitness) 계산을 단순히 병렬화하여 계 산 시간을 감소한 연구들 존재하였다.

Alonso 등 (2000)은 상수관망 시스템 방정식의 해를 multifrontal Cholesky factorization을 이 용하여 계산하였고, 각 계산 단계별로 직렬 및 병

(5)

W ater for Future

렬화를 적절히 혼용하였다. 또한 수질 모의를 위해 네트워크를 지역별로 분할하여 병렬 모의하였다.

Cous 등 (2012)은 관망해석을 위해 Cholesky 방법의 대안으로 여겨지고 있는 공액경사법 (conjugate gradient method) 적용 시 역행 렬 계산을 위해 GPGPU (general purpose programming on the GPU) 병렬화를 적용하였 다. 선형 시스템 크기에 따른 CPU 병렬화 방법과 의 계산시간을 비교한 결과, 시스템의 크기가 1161 by 1161보다 크면 GPU 병렬화의 효과가 월등히 앞서는 것으로 확인되었다. Guidolin (2013) 등 관 망의 수요량 기반 (demand driven) 해석 시 가장 긴 시간이 소요되는 관 내 수두 손실 계산 부분을 GPGPU와 SIMD (single instruction multiple data) 두 가지 병렬화 방법을 이용하였을 때 계산 시간 저감 효과를 비교하였다.

Artina 등 (2012)는 상수관망 최적 설계를 위 해 병렬 NSGA-II (non-dominated sorting genetic algorithm)를 개발하여 하노이와 모데나 네트워크에 적용하였다. 개발된 병렬최적화 방법 은 각각의 노드/코어에서 독립된 NSGA-II 최적 화를 진행하며 이주 국면 (migration phase)에 이 르면 군집해에 속한 해 중 일부를 이웃한 NSGA- II에 전달하여 해탐색 범위 및 효율을 증가시켰다.

Jung 등 (2016)은 화음탐색법의 탐색 성능 및 최 종해의 신뢰성을 향상시키기 위해 병렬 화음탐색 법을 개발하여 대단위 지역관망 계획문제에서 이 주 국면의 영향에 대해 분석하였다.

Shafiee 등 (2016)은 Ingenia라는 리눅스 클러 스터 기반 슈퍼컴퓨터 (192개의 코어로 구성)를 이 용하여 관망해석을 동시에 수행하여 상수관망 최 적화를 위한 총 계산시간을 단축하였다.

2) 수치해석 분야

수치해석분야에서는 유한요소법 등의 계산에 서 전체 계산 영역을 분할, 병렬화하여 해석 시간

을 감소시킨 연구가 주를 이루었다 (이재석 1988;

이해균과 이남주 2012). 먼저 국내에서는 김태형 등 (2014)이 분산형 메모리시스템 병렬화 기법인 MPI를 이용하여 2차원 유한체적모형의 계산 성 능을 개선하여 프랑스 Malpasset 댐 붕괴 모의에 적용하였고, 박재홍 등 (2014)은 침수해석 모형인 DHM (diffusion hydrodynamic model)과 MPI 를 연계하여 홍수침수해석 시간을 단축 하였다.

박재홍 등은 태풍 루사로 인한 김천시 개령면 감 천 침수 모의에 쿼드코어 병렬화를 적용한 결과, 계산시간을 48% 단축하였으며 지형이 평평한 가 상 제내지보다 실제 제내지에서 수렴속도가 빨라 병렬화의 효과가 큰 것으로 확인되었다.

국 외 에 서 도 유 사 한 연 구 가 수 행 되 었 다 . Anguita 등 (2015)은 3차원 천수 (Shallow water) 모의를 위한 준음해법 동적모형 (semi- implicit hydrodynamic model)의 격자 분할 및 계산에 PC 클러스터 병렬화 및 컴퓨터 내에서 코 어 병렬화를 혼용하였고, Liang과 Smith (2015) 는 도시 범람 해석을 위한 GPU 병렬계산 방법론 을 제시하여 2차원 천수모의 모형의 해석 성능을 향상하였다. 이와 같이 수치해석 분야에서는 병렬 계산은 주로 계산이 복잡하고 모의시간이 긴 동적 모형에 적용되었다 (Meister and Rauch 2015, Shang et al. 2016). 이 분야에서 단순 병렬화 (동 일 모형을 다른 조건에서 여러 프로세서에 구동) 의 사례는 전무하였다.

3) 수문모형 분야

수문모형과 관련된 연구 분야에서는 주로 분포 형 모형의 계산시간 단축을 위해 병렬계산기법이 적용되었다. 분포형 모형은 모의과정의 특징으로 인해 입력 자료가 많고 계산량이 많아 구동하는데 많은 시간이 소요 된다 (허용구 2014). 수치해석분 야와는 달리 비교적 단순 병렬화를 적용한 연구가 많았으며 국외에서는 특히 지하수모의를 포함한

(6)

W ater for Future

통합수문모형 모의를 위해 슈퍼컴퓨터 병렬계산을 적용한 연구도 활발하였다.

정성영 등 (2010a and b)은 분포형 강우유출 모형인 K-DRUM모형 (박진혁과 허영택 2008) 을 계산수행시간 저감을 위해 대상유역을 소영역 으로 분할하고 각 분할 소유역의 계산을 병렬화 하였다. 인접 소유역에서 각 병렬 노드 간 통신으 로 받은 유역정보는 내부격자의 경계 조건으로 사 용하였다. 병렬화 결과, 최고 10배에 해당하는 계 산시간이 단축되었다. 노성진 등 (2013)은 수문모 형 범용 매개변수 최적화 모형인 PEST (model- independent parameter estimation)를 병렬 화하여 분포형 수문모형인 GRM (grid-based rainfall-runoff model) 모형의 매개변수 추정 및 불확실성 분석을 수행하였다. GRM 모형이 각 노 드에서 병렬적으로 동시 모의되어 매개변수의 적 합도 정보를 전달하였다.

한 편 국외에서는 Fernando 등 (2007)이 프로 세서 48개를 탑재한 슈퍼컴퓨터 IBM 9076 SP2 를 이용하여 탱크모형의 매개변수 최적화를 위해 유전자알고리즘의 가능해 적합도 계산을 병렬화 하였다. Kollet 등 (2010)은 지역단위 (regional scale)의 지하수 모의를 포함한 수문모의를 위 해 IBM Blue-Gene supercomputer 중 하나인 JUGENE을 이용한 병렬화를 적용, 병렬 프로세 서 개수 (최대 16,400여개까지)에 따른 3차원 포 화 지하수 흐름 (saturated groundwater flow) 해석의 결과를 비교하였다. Quiroga 등 (2013) 은 HEC-HMS와 HEC-RAS를 결합한 통합 홍 수 모형의 다중 모의를 위해 PC 클라우드 병렬화 를 수행하였다. HEC-HMS와 HEC-RAS 각각 1 회, 99회 모의하기 위해 직렬계산으로는 약 22 분 정도 걸리던 것이 병렬계산으로 4분이 소요 되었다. 한편 분포형모형의 흐름추적과정 (flow routing process을)을 계층화하여 병렬계산 하 거나 (Liu et al. 2014), SWAT (soil and water assessment tool) 수문모형의 다목적 매개변수 검

정을 위한 Evergreen computing cluster를 이용 한 연구도 수행되었다 (Zhang et al. 2013).

4) 기타

지하수 모의에도 병렬계산이 적용되어 왔으 며 병렬 계산기법을 탑재한 상용프로그램 (MIKE FLOOD, XP-SWMM, WaterGEMS)을 이용한 연구도 꾸준히 진행되고 있다. 박남식 등 (2003) 은 해안지역에서 최적 지하수 양수량과 관정 위치 를 결정/평가할 수 있는 모형을 개발하였는데 최 적화를 위해 병렬유전자 기법을 적용하였다. 인터 넷으로 연결된 PC 클러스터를 병렬화하여 가능해 의 적합도 계산을 동시에 수행하였다. 엄주성 등 (2012)은 홍수범람해석을 위한 수리, 수문학적 모 형의 연동방안을 제시하면서 병렬계산 기능을 탑 재한 수리학적 모형인 Hydro_As-2D 모형 (Nujic 2003)을 이용하였다.

4. 향후 수자원공학에서 적용 가능한 분야

앞서 정리된 바와 같이 이미 병렬계산은 수자원 공학 분야에서 계산시간을 1/n (n:은 병렬 단위 개 수, 코어의 개수)으로 줄이는 단순 병렬화의 개념 을 넘어서 고차원화 되고 있다. 수자원분야 계측 및 통신 기술 개발로 짧은 시간에 방대한 양의 수 문/수리 데이터가 실시간으로 계측되고 있으며 이 를 수자원공학의 다양한 분야에 활용하기 위해 신 속한 분석, 처리, 가공 및 해석이 필요하다. 이른 바 빅데이터의 시대가 이미 도래하였으며 수자원 공학의 연구 분야에서 이와 관련된 새로운 패러다 임이 대두되고 있다 (김연수 등 2015).

병렬계산은 이러한 패러다임 변화 (paradigm shift)에 큰 기여를 할 수 있는 툴 중에 하나이다.

이와 같은 맥락에서 병렬계산이 다음과 같은 수자 원공학 분야에 적용될 수 있을 것으로 기대된다.

(7)

W ater for Future

- 수자원 통합 관리/모니터링에 적용 (클라우드/

병렬화 기반 DB 관리 기술 포함)

- 실시간 수자원시스템 운영에 적용 (모형의 실시 간 해석 및 최적화, 빅테이터 분석 등)

- 실시간 홍수 범람 예경보 분야에 적용

- 수자원공학 문제에 특화된 병렬화 기반 최적화 알고리즘 개발 및 개선

- 가장 효율적인 병렬화 구조 및 노드간 통신 방 법 설계

5. 감사의 글

이 논문은 2013년도 정부(미래창조과학부)의 재 원으로 한국연구재단의 지원을 받아 수행된 기초 연구사업임 (NRF-2013R1A2A1A01013886).

참고문헌

김연수, 김경태, 노희성, & 김형수. (2015). 빅 데이터 기반의 수자원 정보 관리 방안. 대 한토목학회지, 63(3), pp. 50-57.

박남식, 홍성훈, & 심명근. (2003). 유전자 방법과 병렬처리를 이용한 해안지하수 최적 양수량 결정 모형 개발. 대한토목학회논문집 B, 23(5B), pp. 397-403.

박재홍. (2014). MPI 기법을 이용한 병렬 홍수침수해석. 한국수자원학회논문집, 47(11), pp. 1051-1060.

박진혁, & 허영택. (2010). GIS 기반 K-DRUM 을 이용한 금강권 대유역 홍수유출 적 용. 한국지형공간정보학회지, 18(1), pp. 11-20.

이재석. (1988). 병렬계산을 이용한 유한요소해석. 대한토목학회지, 36(6), pp. 51-60.

이해균, & 이남주. (2012). MPI를 이용한 간단한 병렬처리 알고리즘의 구현. 한국수자원 학회논문집, 45(4), pp. 42-51.

엄주성, 신홍준, 정창삼, & 허준행. (2012). GIS 기반의 홍수범람해석을 위한 수리ㆍ수 문학적 모형의 연동방안. 제 38 회 대한토목학회 정기 학술대회, pp. 688-691.

정성영, 박진혁, 허영택, & 정관수. (2010). 분포형 강우유출모형 병렬화 처리기법 적용.

한국수자원학회지, 43(8), 747-755.

정성영, 박진혁, 허영택, & 정관수. (2010). 분포형 강우유출모형 (K-DRUM) 의 병렬화 효과 분석. 한국지형공간정보학회지, 18(4), pp. 21-30.

허용구. (2014). 분포형 수문모형의 연구동향과 적용사례. 전원과 자원, 56(2), pp. 43-51.

Alonso, J. M., Alvarruiz, F., Guerrero, D., Hernandez, V., Ruiz, P. A., Vidal, A. M. & Ulanicki, B. (2000). Parallel computing in water network analysis and leakage minimization. Journal of Water Resources Planning and Management, 참고문헌

(8)

W ater for Future

126(4), pp. 251-260.

Anguita, M., Acosta, M., Fernandez-Baldomero, F. J., & Rueda, F. J. (2015). Scalable parallel implementation for 3D semi-implicit hydrodynamic models of shallow waters. Environmental Modelling & Software, 73, pp. 201-217.

Artina, S., Bragalli, C., Erbacci, G., Marchi, A., & Rivi, M. (2012). Contribution of parallel NSGA-II in optimal design of water distribution networks. Journal of Hydroinformatics, 14(2), pp. 310-323.

Crous, P. A., Van Zyl, J. E., & Roodt, Y. (2012). The potential of graphical processing units to solve hydraulic network equations. Journal of Hydroinformatics, 14(3), pp. 603-612.

Fernando, A. K., & Jayawardena, A. W. (2007). Use of a supercomputer to advance parameter optimisation using genetic algorithms. Journal of Hydroinformatics, 9(4), pp. 319-329.

Guidolin, M., Burovskiy, P., Kapelan, Z., & Savic, D. A. (2010). CWSNet: An object-oriented toolkit for water distribution system simulations. In Proceedings of the 12th Annual Water Distribution Systems Analysis Conference, WDSA, pp. 12-15.

Guidolin, M., Kapelan, Z., & Savic, D.A (2013). Using high performance techniques to accelerate demand-driven hydraulic solvers. Journal of Hydroinformatics, 15(1), pp. 38-54.

Jung, D., Choi, J., Choi, Y. H., & Kim, J. H. (2016). A New Parallelization Scheme for Harmony Search Algorithm. In Harmony Search Algorithm. Springer Berlin Heidelberg. pp.

147-152.

Kim, T. H., Han, K. Y., & Kim, B. H. (2014). Performance Improvement of Computing Time of 2 Dimensional Finite Volume Model using MPI. Journal of Korea Water Resources Association, 47(7), pp. 599-614.

Kollet, S. J., Maxwell, R. M., Woodward, C. S., Smith, S., Vanderborght, J., Vereecken, H.,

& Simmer, C. (2010). Proof of concept of regional scale hydrologic simulations at hydrologic resolution utilizing massively parallel computer resources. Water Resources Research, 46(4).

Liang, Q., & Smith, L. S. (2015). A high-performance integrated hydrodynamic modelling system for urban flood simulations. Journal of Hydroinformatics, 17(4), pp. 518-533.

Liu, J., Zhu, A. X., Liu, Y., Zhu, T., & Qin, C. Z. (2014). A layered approach to parallel computing for spatially distributed hydrological modeling. Environmental Modelling &

Software, 51, pp. 221-227.

Lopez-Ibanez, M., Prasad, D. T., & Paechter, B. (2008). Parallel optimisation of pump schedules with a thread-safe variant of EPANET toolkit. In Proc., 10th Annual Water Distribution Systems Analysis Conf, pp. 1-10.

Meister, M., & Rauch, W. (2015). Modelling aerated flows with smoothed particle hydrodynamics. Journal of Hydroinformatics, 17(4), pp. 493-504.

(9)

W ater for Future

Noh, S. J., Choi, Y. S., Choi, C. K., & Kim, K. T. (2013). Parameter estimation of a distributed hydrologic model using parallel PEST: comparison of impacts by radar and ground rainfall estimates. Journal of Korea Water Resources Association, 46(11), pp. 1041-1052.

Nujic, M. (2003). Hydro As-2D User’s Manual: A Two-Dimensional Flow Model for Water Management Applications.

Quiroga, V. M., Popescu, I., Solomatine, D. P., & Bociort, L. (2013). Cloud and cluster computing in uncertainty analysis of integrated flood models. Journal of Hydroinformatics, 15(1), pp. 55-70.

Rossman, L. A. (2000). EPANET 2 User’s Manual. EPA (U.S. Environmental Protection Agency), Cincinnati, OH.

Shafiee, M. E., Berglund, A., Berglund, E. Z., Brill Jr, E. D., & Mahinthakumar, G. (2015).

Parallel evolutionary algorithm for designing water distribution networks to minimize background leakage. Journal of Water Resources Planning and Management, C4015007.

Shang, Y., Guo, Y., Shang, L., Ye, Y., Liu, R., & Wang, G. (2016). Processing conversion and parallel control platform: a parallel approach to serial hydrodynamic simulators for complex hydrodynamic simulations. Journal of Hydroinformatics, jh2016204.

Todini, E., & Pilati, S. (1988). A gradient algorithm for the analysis of pipe networks. In Computer applications in water supply: vol. 1-systems analysis and simulation. Research Studies Press Ltd., pp. 1-20.

Zhang, X., Beeson, P., Link, R., Manowitz, D., Izaurralde, R. C., Sadeghi, A., ... & Arnold, J.

G. (2013). Efficient multi-objective calibration of a computationally intensive hydrologic model with parallel computing software in Python. Environmental Modelling & Software, 46, pp.

208-218.

수치

그림 4. CPU (좌)와 GPU 병렬화 (우)의 차이 (출처: www.nvidia.com)

참조

관련 문서

parallel processing (e.g. ETL) of large data sets in Google Cloud Supports both Streaming and Batch processing (no need for separate pipeline code development). Autoscales

3.13 Measured grain boundary energies for symmetric tilt boundaries in Al (a) When the rotation axis is parallel to (100), (b) when the rotation axis is parallel to (110).

A combination of parallel translational and non-translational symmetry elements produces an interesting effect on the way in which the pattern

(3.12), dilution increases for higher perpendicular currents (Alternating diffuser).. Use a perpendicular current of 0.25 m/s and a parallel current. Assume uniform

Since the overall thermal performance is dependent upon the internal flow regimes (Two-phase flows) starting from slug/plug flows to circulatory annular flow, these flow

The rectifier is a circuit that acts as a dc voltage source by converting the ac voltage from a standard wall outlet to a dc voltage. This voltage is effectively applied

 The inverse pole figure gives the probability of finding a given specimen direction parallel to crystal (unit cell) directions.  By collecting data for several reflections

plasma is treated as a single hydrodynamic fluid acted upon by electric and