전산유체역학분야에서의 효율적인 해석을 위해서 병렬처리기법이 널리 사용되고 있다. 병렬처리기법과 함께 최근에는 저가의 리눅스 클러스터 컴퓨터들이 기존의 슈퍼컴퓨터들을 대체하는 추세이다. 리눅스 클러스터 컴퓨터에서 수행되는 해석프로그램의 성능은 클러스터 시스템의 프로세서 성능 뿐 아니라 클러스터 시스템에서 사용되는 네트웍 장비의 성능에 크게 영향을 받는다. 본 연구에서는 미리넷2000, 기가비트 이더넷, 패스트 이더넷 등 네트웍 장비에 따라서 클러스터 시스템의 성능이 어떻게 달라지는지를 Netpipe, LINPACK, NAS NPB, 그리고 MIPNS2D Navier-Stokes 해석프로그램을 사용하여 비교하였다. 이러한 연구결과를 바탕으로 전산유체역학 분야에서 사용될 고성능 저비용 리눅스 클러스터 시스템을 구축하는 방법을 제시하고자 하였다.
전산유체역학분야에서의 효율적인 해석을 위해서 병렬처리기법이 널리 사용되고 있다. 병렬처리기법과 함께 최근에는 저가의 리눅스 클러스터 컴퓨터들이 기존의 슈퍼컴퓨터들을 대체하는 추세이다. 리눅스 클러스터 컴퓨터에서 수행되는 해석프로그램의 성능은 클러스터 시스템의 프로세서 성능 뿐 아니라 클러스터 시스템에서 사용되는 네트웍 장비의 성능에 크게 영향을 받는다. 본 연구에서는 미리넷2000, 기가비트 이더넷, 패스트 이더넷 등 네트웍 장비에 따라서 클러스터 시스템의 성능이 어떻게 달라지는지를 Netpipe, LINPACK, NAS NPB, 그리고 MIPNS2D Navier-Stokes 해석프로그램을 사용하여 비교하였다. 이러한 연구결과를 바탕으로 전산유체역학 분야에서 사용될 고성능 저비용 리눅스 클러스터 시스템을 구축하는 방법을 제시하고자 하였다.
Parallel computing method is widely used in the computational fluid dynamics for efficient numerical analysis. Nowadays, low cost Linux cluster computers substitute for traditional supercomputers with parallel computing shcemes. The performance of nemerical solvers on an Linux cluster computer is hi...
Parallel computing method is widely used in the computational fluid dynamics for efficient numerical analysis. Nowadays, low cost Linux cluster computers substitute for traditional supercomputers with parallel computing shcemes. The performance of nemerical solvers on an Linux cluster computer is highly dependent not on the performance of processors but on the performance of network devices in the cluster system. In this paper, we investigated the effects of the network devices such as Myrinet2000, gigabit ethernet, and fast ethernet on the performance of the cluster system by using some benchmark programs such as Netpipe, LINPACK, NAS NPB, and MPINS2D Navier-Stokes solvers. Finally, upon this investigation, we will suggest the method for building high performance low cost Linux cluster system in the computational fluid dynamics analysis.
Parallel computing method is widely used in the computational fluid dynamics for efficient numerical analysis. Nowadays, low cost Linux cluster computers substitute for traditional supercomputers with parallel computing shcemes. The performance of nemerical solvers on an Linux cluster computer is highly dependent not on the performance of processors but on the performance of network devices in the cluster system. In this paper, we investigated the effects of the network devices such as Myrinet2000, gigabit ethernet, and fast ethernet on the performance of the cluster system by using some benchmark programs such as Netpipe, LINPACK, NAS NPB, and MPINS2D Navier-Stokes solvers. Finally, upon this investigation, we will suggest the method for building high performance low cost Linux cluster system in the computational fluid dynamics analysis.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 리눅스 기반의 병렬 클러스터의 성능에 큰 영향을 미치는 요소인 계산 노드의 프로세서, 각 계산노드 간의 연결네트웍 구성, 사용된 컴파일러 등에 따라서 전체 시스템의 성능이 어떠한 영향을 받는지를 Linpack[l], Netpipe[2], NAS Parall이 Benchmark Suite[3], 그리고 이차원 압축성 Navier-Stokes 병렬 해석프로그램인 MPINS2D를 사용하여 성능을 비교하고 이 중에서 특히 연결네트웍 장비와 컴파일러에 따른 성능을 Pentium4 기반의 리눅스 클러스터 상에서 집중적으로 비교하여 전체 클러스터 시스템의 성능에 미치는 영향을 고찰하고자 한다.
제안 방법
비교하였다. 3.3절의 NPB 수행 결과에서 가장 좋은 성능을 보인 LAM MPI, Intel Compiler 조합에 대해서 두가지 네트웍 장비의 성능을 비교하였다.
먼저 클러스터 시스템에서의 성능을 비교하기에 앞서 클러스터 구성을 위한 단위 노드 선정을 위해 Linpack 테스트와 이차원 비압축성 Navier- Stokes 해석 프로그램을 단일 프로세서에 대해서 수행하였다. 단위 노드 성능 분석에 사용된 시스템의 사양은 Table 1과 같다.
본 논문에서는 NPB 버전 2.3의 커널 5개 중 BT, SP, MG, LU와 통신망의 속도에 가장 큰 영향을 받는 CG(Conjugate Gradient) 등 5개의 프로그램 을 Fast Ethernet, Gigabit Ethernet, Myrinet2000 둥 세가지 네트웍 장비에 대해서 각각 MPIC버, LAM MPI 등 두 가지 MPI 버전을 이용하여 성능을 비교하였다. 그리고 각각의 경우에 대해서 리눅스에 내장된 gcc 2.
널리 사용되고 있다. 본 논문에서는 Netpipe 를 사용하여 Table2에 기술된 단위노드 간의 Fast Ethernet, Gigabit Ethernet, Myrinet2000 네트웍연결 형태의 latency와 대역폭을 측정하였다.
본 논문에서는 전산유체역학병렬 해석에 적합한 고성능 리눅스 클러스터를 구축하는 데 있어서 단위 노드 성능, 연결네트웍 장비, 컴파일러 등이 전체적인 해석 프로그램의 성능에 어떠한 영향을 끼치는지를 Linpack, Netpipe, NAS NPB, 그리고 MPINS2D 코드를 사용하여 분석하였다.
데이터처리
3의 커널 5개 중 BT, SP, MG, LU와 통신망의 속도에 가장 큰 영향을 받는 CG(Conjugate Gradient) 등 5개의 프로그램 을 Fast Ethernet, Gigabit Ethernet, Myrinet2000 둥 세가지 네트웍 장비에 대해서 각각 MPIC버, LAM MPI 등 두 가지 MPI 버전을 이용하여 성능을 비교하였다. 그리고 각각의 경우에 대해서 리눅스에 내장된 gcc 2.96 버전과 Int이의 5.0 컴파일러를 사용하여 성능 비교를 수행하였다.
마지막으로 이차원 압축성 Navier-Stokes 방정식 병렬 해석 프로그램인 MPINS2D 코드를 Gigabit Ethernet과 Myrinet2000 상에서 수행하여 두 가지 네트웍 장비의 성능을 비교하였다. 3.
이론/모형
해석은 DP-SGS[5] 알고리즘을 사용하여 병렬화 했으며 281 X 65의 C-Type격자에서 RAE2822 익형에 대해서 받음각 2.79도, Re=6, 500, 000, Minf = 0.73의 유동조건이 적용되었다.
성능/효과
BT는 5 x5의 block- tridiagonal 연립방정식을 푸는 프로그램이며 SP는 완전 대각화 시에 나타나는 scalar pentadiagonal 연립방정식을 풀게 된다. 5개의 벤치마크 커널은 실제 전산유체역학 해석프로그램에서 사용되고 있는 가장 핵심적인 부분을 바탕으로작성되었기 때문에 이들을 이용한 성능 비교 결과가 실제 전산유체역학 해석 프로그램을 사용한 결과를 대표하기에 충분하다고 생각된다.
Fig. 10은 다른 경우와는 달리 Myrinet2000에서 Gigabit Ethernet보다 성능이 나쁘게 나타났으며 특히 Fast Ethernet에서의 수행 결과보다 나쁘게 나타났다. Myrinet2000에서의 NPB LU의성능저하는 널리 알려져 있으나 그 원인에 대해서는 아직까지 심도 있게 분석된 바 없다.
Fig. 1과 Fig. 2의 결과를 보면 Linpack 테스트의 경우 Pentium4 1.4 GHz에서의 수행 결과가 가장 좋게 나타났는데, Pentium3^|- AMD 프로세서에서는 SSE1 만 지원하지만 Pentium4에서는 SSE2 인스트럭션을 지원하므로 Linpack 성능이월 등 함을 보인다.
Fig. 7과 Fig. 8은 BT와 SP를 수행한 결과로서 LAM MPI가 MPICH보다는 좋은 성능을 보이며 Intel Compiler를 사용한 것이 GCC를 사용한 것보다는 훨씬 좋은 성능을 보임을 알 수 있다. Myrinet2000과 Gigabit Ethemet의 성능차이는예상과 달리 크게 나타나지는 않음을 알 수 있다.
단일노드 성능 테스트 결과를 바탕으로 실수연산에서는 Pentium4와 AMD Athlon 프로세서가 Pentium3 시스템에 비해서는 성능이 탁월함을 알 수 있었는데 현재 CPU의 클럭 속도 증가추세를 감안할 때 Pentium4가 AMD에 비해서클럭 향상 이 월등함으로 클러스터 시스템의 단위노드로 본 연구에서는 Pentium4를 채택하였으며이후의 클러스터에서의 성능 측정은 Pentium4 클러스터에서 수행되었다. Table 2에 네트웍 성능을 비교하기 위한 단위 노드 사양이 나타나 있다.
성능 분석 결과 클러스터 시스템의 성능에 네트웍 장비의 영향이 상당히 크다는 것을 확인할수 있었으며 MPI Implementation, 컴파일러 또한 성능에 많은 영향을 끼침을 확인하였다.
Fortran??을 이용한 2차원 비압축성 Navier-Stokes 해석 프로그램의 수행시간 ePentium4 1.4GHz와 AMD Athlon MP1500의 수행시간이 Pentium3 시스템들보다는 뛰어난 성능을 보임을 알 수 있다.
볼 수 있다. 이러한 결과를 바탕으로 볼 때작은 메시지를 빈번하게 보내는 프로그램의 경우는 Myrinet2000이 좋은 해석 성능을 나타낼 것으로 예상되며 Gigabit Ethern하을 사용하여 클러스터를 구성할 경우 전송되는 메시지의 사이즈를증가시켜서 Myrinet2000에 근접하는 해석성능을얻을 수 있을 것으로 보인다.
후속연구
10%대로 줄어듦을 알 수 있다. 따라서 클러스터 구성에서 Gigabit Ethernet을 채용할 경우 풀고자 하는 문제 사이즈를 증가시켜서 노드 간 메시지 교환 시 메시지 크기를 일정 크기 이상이 되도록 프로그래밍함으로써 성능 향상을 기할 수 있을 것으로 생각된다.
비교하지 못하였다. 향후 이 부분에 대한실험 결과가 추가된다면 최종적인 성능 비교가완료될 수 있을 것이라 본다.
Myrinet2000에서의 NPB LU의성능저하는 널리 알려져 있으나 그 원인에 대해서는 아직까지 심도 있게 분석된 바 없다. 향후어떠한 통신 패턴이 MPICH-GM에서 성능저하를유발했는지를 규명한다면 프로토콜의 개선 혹은특정 분야에서의 알고리즘 개발에 도움이 될 것으로 보인다.
참고문헌 (5)
Jack Dongarra, Jim Bunch, Cleve Moler and Pete Stewart, "LINPACK", Feb. 1984, http://www.netlib.org/linpack
Quinn O. Snell, Armin R. Mikler and John L. Gustafson, "NetPIPE: A Network Protocol Independent Performance Evaluator", 1996, http://www.scl.ameslan.gov/netpipe/paper/full.html
David H. Baily et al, "The NAS Parallel Benchmarks", NASA TM-103863, NASA Research Center, Moffett Field, CA, 94035-1000, July 1993, http://www.nas.nasa.gov/NAS/NPB
권오영, "고성능 컴퓨터 성능 측정 도구 NPB의 소스코드 구성 및 병렬화 방법 분석", 슈퍼컴퓨팅소식 Vol. 4, 2001, 한국과학기술 정보연구원, 슈퍼컴퓨팅센터
이보성, 이동호, "MPP에서의 효율적 분산처리를 위한 Data Parallel Symmertric Gauss-Seidel 알고리즘," 한국항공우주학회지 제 26권, 2호, 1997, pp. 60-72
※ AI-Helper는 부적절한 답변을 할 수 있습니다.