• 검색 결과가 없습니다.

KISTI 슈퍼컴퓨팅 최적병렬화 사례집

N/A
N/A
Protected

Academic year: 2021

Share "KISTI 슈퍼컴퓨팅 최적병렬화 사례집"

Copied!
39
0
0

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

전체 글

(1)

KISTI 슈퍼컴퓨팅 최적병렬화 사례집

KISTI

슈퍼컴퓨팅

최적병렬화 사례집

(2014년~2016년)

ISBN

(2)

최적화와 병렬화 작업은 컴퓨터의 구조 및 자원을 보다 효율적으로 활용하여 계산 성능 및 계 산 가능한 문제의 규모를 향상시키는 것을 말합니다. 예전에는 컴퓨터의 CPU가 발전하면 계 산 성능 또한 자연스럽게 향상되었습니다. 하지만 최근에는 컴퓨터의 성능이 향상된다고 프 로그램의 성능이 자동으로 향상되지는 않습니다. 단일 CPU의 성능 향상이 발열 등의 물리적 인 한계로 어렵게 됨에 따라 CPU내 코어 수 증가 등과 같은 기술 발전을 통해 프로그램을 반 드시 병렬화해야 합니다. KISTI 슈퍼컴퓨팅본부는 사용자지원 정책에 따라 계산과학/공학 분야의 연구를 위해 대규모 병렬 계산 또는 첨단 계산 기법을 필요로 하는 슈퍼컴퓨터 사용자들을 지원하고 있습니다. 그 일환으로 사용자들이 슈퍼컴퓨터를 이용함으로써 해결에 필요한 시간을 단축하거나, 현재보 다 훨씬 더 큰 규모의 문제에 도전하도록 유도하는 등 보다 높은 연구 생산성을 얻을 수 있게 하는 최적화 및 병렬화를 지원합니다. 이번에 발간하는 “최적병렬화 사례집”은 아래와 같이 2014년부터 2016년까지 지원했던 사 례 중 8건을 선정해 소개합니다. 본 사례집은 슈퍼컴퓨터 4호기뿐 아니라 차세대 아키텍처인 GPU 환경에서의 지원을 포함하고 있습니다. 슈퍼컴퓨터 활용을 극대화하여 큰 문제를 해결 한 실제 사례들을 제시하여 국민들에게 보다 큰 가능성을 알려 저변을 확대할 수 있는 기회로 삼고자 합니다. 한편, KISTI 슈퍼컴퓨팅본부는 2009년부터 운영되었던 슈퍼컴퓨터 4호기의 자원규모가 한 계를 보임에 따라, 원활한 자원 제공을 위해 25페타플롭스급의 슈퍼컴퓨터 5호기 도입을 추 진해 왔으며, 이제 본격적 구축을 눈앞에 두고 있습니다. 4호기보다 약 70배가 커진 성능을 잘 활용하기 위해서는 최적화 및 병렬화 기술의 중요성이 더욱 부각되어야 할 필요성이 있습 니다. 거대연구를 기반으로 국가 과학기술 수준 향상에 기여하고, 더불어 국가 · 사회 현안

KISTI

슈퍼컴퓨팅

최적병렬화 사례집

서론 03 1 태풍 탐색 프로그램 최적병렬화 04 2 우주론적 시뮬레이션의 GPU 병렬화 11 3 양자화학 패키지의 GPU 병렬화 21 4 열전달 감소 메커니즘 규명을 위한 난류 해석 코드 최적병렬화 30 5 축류팬 주위 유동해석 코드의 최적병렬화 36 6 결정성장을 위한 phase field code

(3)
(4)

>>

최적병렬화 필요성

본 연구에서는 기후변화 모의실험을 통해 장기간 동안의 태풍 기후 분석을 하는데, 태풍 탐색 알고리즘을 사용한다. 총 230년 간4) 3시간 간격의 격자 화된 전 지구 영역에서 순차적으로 태풍의 중심을 탐색하며, 이 모든 과정은 각 변수별 그리고 알고리즘의 각 조건별 순차적 과정으로 이뤄지게 된다. 탐 색된 저기압들 중에 특정 조건을 만족하는 저기압은 태풍 후보에 등록이 되 고, 태풍 후보 선정에 대한 순서도의 최종 조건을 만족하는 경우 태풍으로 선정된다. 본 계산 코드는 많은 시간이 소요되는 과정 속에서 장기간의 자료 들에 대한 전 처리 과정과 변수 추출과정, 2차원의 평면 위에서 태풍 유무를 판단하게 된다. 관찰하고자 하는 영역의 크기와 태풍의 개수에 따라 순차 코드는 더 오랜 시간을 요구하게 되기 때문에, 좀 더 효율적으로 슈퍼컴퓨터 를 활용하기 위해 계산 코드의 최적병렬화 작업이 반드시 필요하다. 일반적 으로 현재 작성된 코드의 경우, 단일 코어만을 사용하도록 되어 있다. 하지 만, 하나의 코어가 아닌 여러 개의 코어를 사용하여 동시에 분산적으로 시뮬 레이션 수행이 가능한 병렬화 작업이 필요하다. 최적화 작업이 이뤄지지 않 는다면, 아무리 많은 코어를 써서 시뮬레이션을 수행하더라도 그 계산 속도 가 빠르지 않아 계산 자원을 불필요하게 낭비하는 꼴이 된다. 따라서 장기간 의 태풍 기후분석을 위해서는 계산 코드의 최적병렬화 작업이 더욱 절실히 요구되며, 더 나은 연구 성과를 얻기 위한 초석으로서 현재의 최적병렬화 작 업은 중요한 의의를 지닌다. 태풍 탐색 알고리즘 코드는 크게 전 처리부터 탐색 및 추적 과정을 거치게 된다. 자료의 형식 변환과 변수 추출 등과 같은 자료의 I/O 과정을 제외한 태 풍의 탐색 및 추적 과정에 대해서 KISTI의 도움을 받아 최적병렬화를 완료 하였다. 기존의 코드는 시간에 따른 순차적인 흐름이 일방적이었다. 이와 같 은 시간에 대한 의존성으로 인해 병렬화가 쉽지 않았기 때문에, 태풍의 탐색 였으며, 그 이후 알고리즘의 추적 과정에서 소용돌이도의 중요성이 부각됨 에 따라 이것은 Marchok(2002)에서도 고려되었다. 또한, Sinclair(1994)는 열대 저기압 시스템을 추적하기 위하여 해수면 기압 또는 소용돌이도장 중 에 하나를 사용하였을 경우의 이점과 제약에 관하여 설명하였다. 대부분의 복잡한 수치모델에서 해수면 기압이나 상대 소용돌이도와 같은 1~2가지의 변수만을 통해 열대 저기압을 탐색하기에는 많은 어려움이 존재한다. 따라 서 최근 연구들에서는 전 지구 기상모델 또는 기후모델의 기온과 바람장, 지 위고도와 같은 변수들을 함께 이용하고, 더불어 최소 5가지 이상의 조건을 고려하여 열대 저기압을 효과적으로 탐색하고 있다. >>

코드 개발 수준

포트란 언어로 작성된 계산 코드로서 수치모델의 예측결과에서 순차적으로 태풍의 존재 유무, 그리고 태풍이 존재할 경우 경로 탐색을 위해 해면기압과 상대소용돌이도, 그리고 풍속과 같은 10여개의 기상 변수들을 분석한다. 예 를 들어, 태풍의 중심은 최대 풍속이 15m/s보다 높아야 하며, 7°×7° 격자점 의 최소 해수면 기압 지역에 위치하고, 700, 500, 300 hPa 면의 기온 아노 말리의 합이 2°c 보다 커야 한다. 또한, 300 hPa 면의 기온 아노말리가 850 hPa 면의 기온 아노말리보다 높아야 하며, 850 hPa 면의 최대 풍속이 300 hPa면의 최대 풍속보다 높아야 하고, 저기압의 지속시간이 36시간보다 길 어야 한다는 조건을 전제로 태풍을 찾게 된다. 다양한 연구들에서 열대 저기 압을 찾기 위하여 다양한 방법을 사용하였다. 그리고 각각 조건의 임계값 또 한 선행연구들마다 차이가 존재한다. 이는 각 연구들마다 사용한 자료가 다 르고, 그 자료의 시간 간격과 격자 간격이 매우 다양하기 때문이다. 본 연구 에서의 탐색 알고리즘은 Murakami and Sugi(2010)의 방법을 참고하였다.

(5)
(6)

고등과학원 거대수치계산연구센터 김주한 KISTI 슈퍼컴퓨팅 최적병렬화 사례집 www.kisti.re.kr

2.

우주론적 시뮬레이션의 GPU 병렬화

>> 연구 실적

[1]. Yang, S.-I., and J.-H. Oh: How well do Global Climate Model detect tropical cyclones considering cyclone phase, In preparation (to be submitted journal) >> 참고 문헌

[1]. Gyakum, J. R., 1983: On the evolution of the QE II storm. II: Dynamic and thermodynamic structure. Monthly weather review, 111(6), 1156-1173. [2]. Harr, P., R. L. Elsberry, T. F. Hogan, and W. M. Clune, 1992: Forecasts of North Pacific maritime cyclones with the Navy Operational Global Atmospheric Prediction System. Weather Forecasting, 7, 456–467.

[3]. Marchok, T. P., 2002: How the NCEP tropical cyclone tracker works. Preprints, 25th Conference on Hurricanes and Tropical Meteorology, San Diego, CA, American Meteorological Society, 21–22.

[4]. Murakami, H., and M. Sugi, 2010: Effect of model resolution on tropical cyclone climate projections. SOLA, 6, 73–76, doi:10.2151/sola.2010-019. [5]. Sinclair, M. R., 1994: An objective cyclone climatology for the Southern Hemisphere. Monthly weather review, 122, 2239–2256.

(7)
(8)

>> 코드 개요 본 연구를 위해 의뢰했던 GPU 병렬화 부분은 트리구조를 이용한 중력 계산 부분이었다. 우주론적 다체 코드에서는 중력 계산을 두 부분에서 나누어 수 행하는데, 포아송 방정식은 FFT를 이용하여 풀고, 이러한 FFT방법에서 계 산할 수 없는 작은 거리의 중력 힘은 트리부분에서 보정하여 계산한다. 기존 의 코드는 이러한 트리부분에서 대부분 (>95%)의 시간을 소비하기 때문에, 이 부분을 중점적으로 CUDA를 이용해서 병렬화하였다. [그림 2]는 기존의 CPU코드로 수행한 세계 최대급의 우주론적 다체 시뮬레 이션 결과이다. 여기에는 6300^3개 입자의 중력 진화의 결과를 밀도로 보 여주고 있다. 사용된 컴퓨터는 KISTI 슈퍼컴퓨터 4호기인 타키온2이고, 총 8000개의 CPU를 두 달 동안 이용하였다. 또한 [그림 1]에서 보여주고 있듯 이 다수의 세계 최대급 시뮬레이션을 KISTI 슈퍼컴퓨터에서 수행하였고, 앞 으로 차세대 슈퍼컴퓨터 후보 중의 하나인 GPU 클러스터에서도 수행할 수 있도록 코드들을 변환 중에 있다. [그림 3]은 우리나라와 미국 연구진이 Horizon Run 3 데이터를 이용해서 우 주의 토폴로지 연구를 수행한 그림이다. 여기서 토폴로지는 좌표계의 변환 에 따라서 변하지 않는 양인 지너스를 정의한 것으로, 이를 이용하여 우주의 중력진화를 살펴보고 이 결과는 일반상대성 이론과 일치하는 것이 밝혀졌 다.

(9)

한국과학기술정보연구원 우주론적 시뮬레이션의 GPU 병렬화

02

그림 2. Horizon Run 2 시뮬레이션에서 구한 현재 시기의 물질 밀도 분포. 밝은 색일수록 고밀도이다. 작은 상자들은 어느 특정지역을 확대하여 세밀한 밀도 분포를 두 단계로 보여주고 있다. 오른쪽 제일 위 상자는 은 하단 크기의 우주 구조물(밝은 오렌지색)을 보여주고 있다.

그림 3. Horizon Run 3를 이용한 우주 토폴로지 연구의 예 (Speare, Gott, Kim, & Park 2015, The Astrophysical Journal, 799, 176). 매직아이 형태로 우주 토폴로지가 3차원 입체로 보임

그림 4. (아래) 실제 관측한 은하들의 공간분포. (위) Horizon Run 4를 이용하여 만든 가상은하들의 공간분포 (Kim et al. 2015, Journal of the Korean Astronomical Society, 48, 213)

(10)

버전에 맞게 수정하는 작업에 해당한다.

(11)
(12)
(13)

해밀토니안(Hamiltonian) 행렬이 만들어진 후 대각화를 진행함으로써 각 오 비탈의 에너지 및 분포를 알 수 있게 된다. 대각화의 결과가 수렴 할 때까지 유효포텐셜 계산과 대각화 과정을 반복하게 된다. 이렇게 얻어진 전자밀도를 통해, 많은 정보들을 알아낼 수 있다. 대표적으로 [그림 2]와 같이 외부 전기장의 유무에 따라 분자의 전자 밀도의 변화를 알 수 있다. 본연구진은 실공간방법론을 이용하여 전기장에 의한 전자분포의 왜곡현상을 좀 더 정밀하게 묘사할 수 있는 방법을 구현하였다. 본연구진에 서 개발한 ACE-Molecule은 일반적인 밀도범함수이론 뿐만이 아니라 들뜬 상태에 대한 다양한 계산방법을 제공하고 있다. 들뜬상태에 대한 정밀한 묘 사는 화학분야에서 오랫동안 연구되고 있는 분야이다. 특히 분자를 구별할 수 있는 중요한 도구인 광학 스펙트럼을 이론적으로 에측하기 위해서 들뜬 상태에 대한 연구는 반드시 필요하다. ACE-Molecule에도 흡광 스펙트럼을 분석하기 위한 도구를 제공하고 있다. >> 코드 개요 양자화학 프로그램은 기본적으로 자체 모순 없는 마당 어림법 (self-consistent field approximation)을 통해서 바닥상태 전자구조를 계산한 후, 필요에 따라 그 이후에 들뜬 상태 계산이나 구조 최적화를 진행하게 된다. 따라서 바닥상태 전자구조의 성능을 개선하는 것은 바닥상태 성질뿐만이 아 니라 다른 여러 계산법들의 속도까지도 함께 증대시킬 수 있다. [그림 1]은 모순 없는 마당 어림법을 활용한 계산의 순서도이다. 마당 어림법 을 적용하기 위해서는 전자들의 유효포텐셜을 계산해야 한다. 전자와 전자 사이의 고전적 반발력(VH), 전자와 전자 사이의 양자수준의 상호작용(Vxc)은 전자의 밀도에 따라서 그 양이 변하기 때문에 반복과정마다 유효포텐셜을 수렴할 때까지 계산한다. 전자들과의 상호작용 외에도 핵, 인력 및 전자가 가지는 운동 에너지를 계산해야 하는데, 이 부분들은 매 과정 계산하지 않고 도 계산할 수 있다. (Evaluate KB projector &Construct Kinetic matrix)

(14)

본 연구를 위해 GPU를 통한 가속화를 토대로 100개 안팎의 원자로 이루어 진 분자 집합의 전자구조 계산시간을 알아보았다. 실험을 위해 사용한 두 가 지 하드웨어 대해서 [표 1]로 정리했다.

GPU는 가속기이기 때문에 모든 연산을 GPU에서만 실행할 수는 없다. GPU연산을 할 때에 CPU환경은 CPU만 사용하는 경우와 동일하게 하였다. GPU를 이용해 가속화한 연산의 종류는 크게 3가지이다. 반복적 대각화 방 법에 필요한 희소행렬과 벡터의 곱과 전자의 고전적 반발력을 계산하기 위 한 삼차원 콘볼루션(convolution) 적분, 마지막으로 발산(divergence)을 GPU에서 계산한다. 전체 및 각 부분의 소요시간이 [그림 4]에 나타나 있다. 전체 시간의 대부분을 차지하는 대각화 과정뿐만 아니라 하트리포텐셜과 교 환상관포텐셜을 구하는 부분에서도 속도 향상이 관측되었다. 하지만, 전체 [그림 3]은 [PdCl4]2- 의 흡광스펙트럼이 계산 조건에 따라서 수렴해 나가는 과정을 나타내고 있다. 이와 같은 흡광 스펙트럼은 시간의존밀도범함수 이 론을 통해서 전자가 특정 파장대의 빛을 흡수하는 것을 계산할 수 있다. 들 뜬상태는 바닥상태에 비해 전자분포가 더 넓은 공간에 흩어져있기 때문에, 바닥상태보다 더 넓은 공간을 시뮬레이션 해야 한다. 따라서 기저함수 정확 도가 높아질수록 더 넓은 시뮬레이션 공간을 사용하게 되고 이러한 변화에 따라 스펙트럼이 충분히 정확해지는 것을 확인할 수 있다. 특히 4.5가 되면 눈으로는 쉽게 구별할 수 없을 정도로 작은 차이만 가지고 충분히 수렴했다 는 것을 확인 할 수 있다. ACE-Molecule을 통해 스펙트럼을 묘사하기 위한 최적의 기저함수를 쉽게 파악해, 분자의 특징을 계산할 수 있다. 한국과학기술정보연구원 양자화학 패키지의 GPU 병렬화

03

04

성능 향상 및

연구기여도

그림 3. 기저함수 정확도의 변화에 따른 [PdCl4]2-의 흡광 스펙트럼의 변화.

그림 4. CPU와 GPU를 사용하여 구한 10-phenyl-10H-spiro[acridine-9,9’- fluorene]-2’,7’-dicarbonitrile(C33H19N3) 분자의 밀도범함수 계산에서 소요된 전체(Total), 대각화(Diagonalize), 하트리포 텐셜(Hartree), 교환상관포텐셜(XC potential) 부분의 시간.(초 단위) CPU와 GPU의 하드웨어는 표1에 있음.

CPU GPU

하드웨어 Intel(R) Xeon(R) E5-2670v2 (10 cores x 2개)

Nvidia Tesla K40m (1개)

(15)
(16)
(17)

난류 유동은 넓은 범위의 길이 스케일에서 에너지를 포함하고 있으므로 조 밀한 격자와 큰 계산 영역이 동시에 요구된다. 난류 채널 유동에서는 유속이 증가할수록 작은 스케일의 난류 유동 구조들이 에너지를 가지게 된다. 따라 서 정확한 예측을 위해선 매우 조밀한 격자를 사용하여 전산해석을 수행해 야 한다. 필요한 격자수는 속도가 증가할수록 속도의 9/4승에 비례하여 급 격히 증가한다고 알려져 있다. [그림 3(a)]와 [그림 3(b)]를 비교해 보면 유속 이 증가함에 따라 작은 스케일의 난류 유동 구조가 활발해짐을 확인할 수 있 다. 한편, 본 연구의 주제인 폴리머 항력감소 유동장의 열 전달 해석을 위해 서는 속도 및 압력과 더불어 폴리머 분자가 유동에 미치는 영향을 모사하는 데 필요한 폴리머 구성 텐서와 온도장을 동시에 해석하여야 하므로 일반 유 체의 DNS에 비해 대략 3배 많은 수의 변수를 해석하여야 한다. 또한, 폴리 머 첨가를 통해 항력이 감소된 유동장에서의 유동 구조는 기존의 뉴턴 유체 난류 유동장의 유동 구조에 비해 크기가 증가한다고 알려져 있으므로, 이를 제대로 예측하기 위해서는 항력 감소가 증가할수록 더 큰 계산 영역이 필요 하다. 또한, [그림 3(b)]와 [그림 3(c)]에서 확인할 수 있듯이 온도장의 난류 스케일은 유동장보다 작으며, 이는 물의 열 확산계수가 운동량 확산 계수보 다 낮기 때문이다. 따라서 난류 열 전달 DNS를 위해서는 유동장의 DNS에 비해 조밀한 격자가 필요하다. 가 감소하는 비율보다 더 빨리 감소한다는 점이 보고되었으나 실험 기법의 한계로 인해 평균 열 전달 계수와 같은 기초적인 통계량 보고에 중점을 두고 있다. 이를 보완하기 위해 항력 감소 유동장의 난류 열 전달에 대한 직접수 치모사(direct numerical simulation, DNS)를 수행하여 열 전달 현상을 규 명하고자 하는 시도가 이루어지고 있다. 긴 사슬 구조의 폴리머 분자를 [그 림 1]과 같이 탄성 덤벨로 모델링하여 폴리머 분자의 이완, 수축이 유동에 미 치는 영향을 계산하고, 이를 기존의 열/유동 방정식과 동시에 해석하는 방법 이다. [그림 2]는 본 연구에서 다루고자 하는 난류 채널 유동의 개략도이다. 한국과학기술정보연구원 열전달 감소 메커니즘 규명을 위한 난류해석 코드 최적병렬화

04

03

최적화/병렬화

지원의 필요성

그림 1. 폴리머 분자의 단순 모델 (Terrapon, Vincent. "Lagrangian simulations of turbulent drag reduction by a dilute solution of polymers in a channel flow." 2005)

(18)
(19)
(20)

제와 유사하게 모사하기 위해 정밀한 ‘난류 모델’을 적용한 계산 코드를 개발 하였다. 개발한 코드는 KISTI와 함께 최적병렬화 하였으며, 이를 슈퍼컴퓨 터로 계산하여 축류 팬 주위의 복잡한 난류 유동을 해석하였다. 한 발 더 나 아가 해석한 결과를 토대로 높은 효율과 낮은 소음을 가진 축류 팬을 개발하 고 있다. 앞서 설명한 바와 같이 회전하면서 다량의 공기를 팬의 앞쪽 혹은 뒤쪽으로 불어주는 축류 팬 주위 유동은 높은 레이놀즈 수를 갖는 난류 유동에 해당한 다. 난류 유동은 유동장 전체 크기에 해당하는 큰 스케일에서부터 매우 작은 스케일에 이르기까지 다양한 크기의 유동 구조를 갖는다. [그림 2(a)]는 난 류 유동의 에너지 스펙트럼을 나타낸 것으로 난류 유동이 다양한 주파수 성 분을 가짐을 알 수 있다. 여기서 낮은 주파수 성분은 큰 크기의 유동 구조를, 높은 주파수 성분은 작은 크기의 유동 구조를 나타낸다.

이를 해석하기 위한 방법으로 직접 수치모사(direct numerical simulation; DNS) 방법, 레이놀즈 평균된 Navier-Stokes 방정식(Reynolds-Averaged Navier- Stoke; RANS)을 이용한 해석 방법, 그리고 큰 에디 모사(large eddy simulation; LES) 방법이 있다(그림 [2]).

먼저, 난류 유동을 어떠한 모델도 사용하지 않고 직접 해석하는 DNS 방법은 풍량, 정압 상승량, 효율, 소음까지 네 가지 성능 지표를 모두 만족하는 축류 팬을 만들기 위한 방법으로 실험과 해석 두 가지 접근 방식을 함께 사용하 고 있다. 컴퓨터를 이용한 해석을 활발하게 사용하기 전에는 이론적인 설계 와 실험을 통한 검증 과정을 반복적으로 수행해야 했다. 이론에 기초한 설계 단계에서는 실제 팬이 회전하면서 발생하는 공기의 움직임을 모두 고려하는 것이 불가능하기 때문에 성능을 정확하게 예측하는 것이 불가능하다. 따라 서 시작품을 만들어서 목표로 한 성능이 나오는지 실험을 해 보는 과정이 필 수적이며, 이러한 과정을 몇 차례 거쳐야 원하는 성능을 만족하는 축류 팬을 만들 수 있었다. 그러던 과정에서 공기와 같이 흐르는 물체인 유체(fluid)의 운동을 결정하는 지배방정식을 컴퓨터로 풀 수 있는 수치기법이 개발되었 다. 그 후 컴퓨터 성능의 비약적인 발전과 맞물려 축류 팬이 회전하면서 만 들어내는 공기의 움직임과 이에 따른 팬의 성능을 컴퓨터로 예측할 수 있게 되어 해석을 이용한 팬 설계가 시작되었다. 컴퓨터로 시뮬레이션을 수행하 는 경우, 설계한 팬의 성능을 만들어 보지 않고도 예측할 수 있기 때문에 제 품 개발에 소요되는 시간과 예산을 줄일 수 있을 뿐만 아니라 더 많은 형상 을 고려해 볼 수 있다는 장점이 있다. 컴퓨터를 이용한 해석이 주는 이러한 장점들로 인해 점차 실험에서 해석으로 대체되는 추세에 있다. 하지만 여전히 컴퓨터 성능에 비해서 축류 팬 주위의 복잡한 난류 유동의 풀 이가 훨씬 복잡하므로, 유체의 지배방정식을 직접 해석하는 것은 불가능에 가깝다. 현재까지는 둥근 관 내부나 평평한 판 위를 흐르는 유동과 같이 형 상이 매우 단순한 경우에 대해서만 직접 해석을 하고 있는 수준이다. 따라서 축류 팬 주위의 유동과 같이 일상생활에서 마주하는 실제 유동의 해석에서 는 ‘난류 모델’이라고 하는 일종의 가정을 이용해서 지배방정식을 단순화하 여 유동을 해석하고 있다. 그러나 슈퍼컴퓨터의 등장과 여러 개의 CPU에 작 업을 분산시켜 동시에 해석하는 병렬컴퓨팅 기술이 발전하면서 ‘난류 모델’ 이 담당하는 부분을 줄여나가거나 ‘난류 모델’을 개선하는 연구를 할 수 있는 기틀이 마련되어 관련 시도가 이루어지고 있다. 따라서 본 연구진은 축류 팬이 회전하면서 만들어 내는 바람의 움직임을 실 한국과학기술정보연구원 축류 팬 주위 유동해석 코드의 최적병렬화

05

그림 2. 난류 유동에 에너지 스펙트럼과 수치 기법의 종류에 따른 모델링 비교: (a) DNS (Direct numerical simulation); (b) RANS (Reynolds-average Navier-Stokes equation); (c) LES (Large eddy simulation);

02

(21)

기도 하였다(Pogorelov et al., 2015).

(22)

본 연구진은 최적 병렬화 코드로 대형 에어컨 실외기에서 열을 식혀 주는 용 도로 사용하고 있는 축류 팬 주위의 유동을 해석하였다([그림 4(a)]). 유동을 모사하기 위해 계산에 사용한 격자수는 약 8억 2백만 개로 타키온 2차 시스 템에서 제공하는 총 2048개의 CPU를 사용하여 해석하였다. 해석을 통해 생 성된 축류 팬 주위의 평균유동은 [그림 4(b)]와 같다. 축류 팬 아랫면의 날개 끝에서 발달한 유동 구조가 다음 날개까지 길게 발달한 것을 볼 수 있다([그 림 4(b)]에서 A). 이것은 축류 팬 날개의 윗면과 아랫면의 압력 차이에 의해 서 발생하는 익단 누설 와류(tip-leakage vortex)에 해당한다. 축류 팬이 회 전하면서 바람은 그림의 아래쪽에서 위쪽으로 흐르지만, 익단 누설 와류는 위에서 아래로 흐르는 역류 유동에 의해 생성되어 축류 팬의 성능을 저감시 키는 손실 요소로 확인되었다. 해석을 통해 이 와류가 생성하는 위치와 크기 를 정확하게 예측하여, 분석 결과를 바탕으로 축류 팬의 성능을 높이기 위한 제어 방법들도 개발하고 있다. 이러한 연구 결과는 이론적 접근이나 실험만으로는 축류 팬에 의해서 유도 되는 복잡한 3차원 난류 유동을 정확하게 예측/측정할 수 있는 방법이 매우 제한적인 상황에서, 슈퍼컴퓨터를 이용한 수치 해석을 통해 축류 팬 주위 유 동 구조를 분석한 좋은 예라고 할 수 있다. 뿐만 아니라 개발한 코드는 축류 팬뿐만 아니라 다양한 유동 현상에 대해서 범용적으로 활용할 수 있어 난류 유동을 연구하는 본 연구진의 연구 경쟁력을 높여 주었다. 이를 바탕으로 세 계적인 수준의 연구 성과를 내기 위한 기틀을 마련하였으며, KISTI과의 협 업으로 관련 연구를 선도할 수 있을 것으로 기대한다. OpenMP 병렬 알고리즘만 적용하여 확장성에 한계를 가지고 있던 본 연구 진의 계산 코드를 KISTI와 함께 최적화 및 병렬화 하였다. MPI 병렬화에 따 른 성능 향상 정도는 전체 계산 크기는 고정한 상태에서 코어 수를 늘리는 strong scaling과 각 코어 당 계산 크기를 고정한 상태에서 코어 수를 늘리 는 weak scaling 두 가지로 비교하였다([그림 3]). Strong scaling의 경우에 는 코어 수를 증가시킬수록 계산 속도가 빨라지는 것이, weak scaling의 경 우에는 코어 수에 무관하게 계산 속도가 동일하게 유지되는 것이 성능이 우 수함을 의미한다. Strong scaling 결과에 따르면([그림 3(a)]), 성능이 코어 수에 정비례 하지는 않으나 512개의 코어까지 계산 속도가 꾸준히 증가하여 높은 병렬화 성능을 보였다. Weak scaling은([그림 3(b)]) 코어 개수가 512개 이상인 경우로 코어 수가 증가할수록 계산 시간이 조금씩 오래 걸렸으나 그 정도가 크지는 않았다. 이상으로 지금까지 수행한 최적병렬화 작업으로 완 성한 코드의 성능이 본 연구진이 연구하고자 하는 축류 팬 주위의 유동을 해 석하기에 적절함을 확인하였으며, 앞으로 수행할 더 큰 규모의 계산에 대해 서도 좋은 성능을 보일 것으로 기대된다. 한국과학기술정보연구원 축류 팬 주위 유동해석 코드의 최적병렬화

05

05

활용 결과 및

향후 예상 성과

04

성능 향상 및

연구기여도

(23)

KAIST 기계공학과 유승화

KISTI 슈퍼컴퓨팅 최적병렬화 사례집 www.kisti.re.kr

6.

결정성장을 위한 phase field code

최적병렬화

>> 연구 실적

Park, K., Choi, H., Choi, S., and Sa, Y., 2015, “Characteristics of tip-leakage flow in an axial fan operating at the design condition”, The Asian Symposium Computational Heat Transfer and Fluid Flow, Busan, Korea.

Park, K., Choi, H., Choi, S., Sa, Y., and Kwon, O., 2016, “Large eddy simulation of tip-leakage flow in an axial flow fan”, 69th DFD meeting of the American physical society, Portland, Oregon, USA.

Park, K., Choi, H., Choi, S., Sa, Y., and Kwon, O., 2017, “Unsteady characteristics of tip-leakage flow in an axial flow fan”, 10th International Symposium on Turbulence and Shear Flow Phenomena, Chicago, USA.

>> 참고 문헌

Jang, C., Furukawa, M., and Inoue, M., 2015, “Analysis of vortical flow field in a propeller fan by LDV measurements and LES – part I: three-dimensional vortical flow structures”, ASME Journal of Fluids Engineering, Vol. 123, pp. 748–754.

Kim, D., and Choi, H., 2006, “Immersed boundary method for flow around an arbitrarily moving body”, Journal of Computational Physics, Vol. 212, pp. 662-680.

Lee, J., Choi, H., and Park, N., 2010, “Dynamic global model for large eddy simulation of transient flow”, Physics of Fluids, Vol. 22, 2010, p. 075106. Pogorelov, A., Meinke, M., and Schröder, W., 2015, “Cut-cell method based large-eddy simulation of tip-leakage flow”, Physics of Fluids, Vol. 27, No. 7, p. 075106.

You, D., Wang, M., Moin, P., and Mittal, R., 2007, “Large-eddy simulation analysis of mechanisms for viscous losses in a turbo-machinery tip-clearance flow”, Journal of Fluid Mechanics, Vol. 586, pp. 177–204.

축류 팬 주위 유동해석 코드의 최적병렬화

05

06

(24)

노점 및 나노선의 기계적 특성 실험은 초당 0.1%의 변형률보다 더 빠른 실험 의 설계가 어렵지만, 시간적 한계가 있는 분자 동역학의 경우 초당 10,000% 의 변형률보다 느리게 수행하기는 현재의 컴퓨터 수준으로는 불가능에 가깝 다. 나노소재의 합성 연구를 실험으로만 수행하기는 힘들고, 원자단위모사 인 분자 동역학은 길이적-시간적으로 제약되어 있다. 기존의 거시규모에서 연속체를 가정하여 만든 이론과 해석방법은 나노규모에 적용이 힘든 상황에 서, 원자수준모사의 정확성과 연속체수준모사의 속도를 적절히 조합할 수 있는 새로운 모사방법의 개발이 요구된다.

상장 모델(phase field model)은 공간을 연속적인 상(phase, 고체, 액체, 기체 등)의 분포로 묘사하고 서로 다른 상 간의 경계면의 움직임을 물리적 으로 기술하는 방법이다. 기존의 분자 동역학은 모든 원자의 x, y, z 방향 의 위치 및 속도를 계산해야 해서 많은 계산 시간이 필요한 반면, 상장모델 은 상의 경계면의 움직임을 주로 기술하면 되기 때문에 계산시간이 현저하 게 줄어든다. 단, 그 상의 경계면의 움직임을 결정하는 많은 물성(materials properties)은 원자레벨에서의 시뮬레이션 및 실험에서 얻어야만 정확한 모사가 가능해진다. 본 연구실에서 개발된 비등방성 (anisotropic) 다상장 (multi-phase field) 모델은 양자계산이나 실험에서 얻어진 입력치(input) 을 반영할 수 있도록 설계되었고, 3차원의 비등방성을 정확히 모사하여 실 험에서 관측되는 고체 결정의 모양을 정확하게 모사하기 위해 개발되었다. 많은 연구가 진행되었던 실리콘 나노선의 기체-액체-고체를 통한 성장과정 (Vapor-Liquid-Solid Process)에서 기체, 액체, 고체에 해당하는 상(phase) 간 경계에서 움직이는 미분방정식을 고안하고 그를 수치적으로 풀면 정확 하게 모사할 수 있음을 보였다. 분자 동역학에서는 시간적 제약 (최대 a few nanoseconds 이하) 때문에 모사할 수 없던 나노선의 성장 모델이 가능해졌 으며, 시뮬레이션을 통해 얻어진 나노선의 형태는 실험에서 측정된 형태를 정확하게 모사함을 알 수 있다. 현재까지 나노선 성장을 모사하는 각종 모 델링 연구들이 있었지만, 본 모델은 실리콘 나노선 성장을 3차원 비등방성 까지 정확하게 모사하는 면에서 세계 최초이다. 또한, 본 모델을 이용한 합 나노기술의 중요한 핵심소자로서 나노결정소재들의 전기적, 화학적, 광학 적 특성을 응용한 신개념 소자들의 프로토타입을 구상하는 연구들이 활발하 게 이루어지는 것에 비해, 그 합성원리를 이해하고 기계적인 특성을 연구하 여 안정적인 상용화를 꾀하는 연구는 다소 부족한 상황이다. 특히 국내의 경 우 산업체나 연구기관의 요구에 맞추어 소재의 응용 및 기술화에 초점이 맞 추어져서 연구 및 개발이 진행되고 있기 때문에, 나노소재의 기본적인 합 성 메커니즘 및 기계적 물성 예측과 같은 기초연구는 해외 수준에 비해 많 이 뒤처져 있는 상태이다. 포항공대에서 투과전자현미경 (TEM)을 통한 합 성 메커니즘 연구를 수행하고 있고, 한국과학기술원에서 나노압입기(nano-indentator)와 나노기둥 시료를 이용한 기계적 특성 평가 실험을 수행하고 있는 등 소수의 국내 연구팀들을 찾을 수는 있지만, 그 역시 대부분 실험에 의존하고 있는 상태이다. 실험에 의존한 연구의 경우 다양한 조건에서 실험 이 불가능하고, 물성에 영향을 주는 결함을 제어하기 힘들 뿐 아니라, 나노 규모의 실험설계 또한 어렵다. 예를 들면, 자가조립에 의존하는 나노소재 합 성의 특성상 투과전자현미경과 같은 첨단 장비를 통하여 원자수준의 해상도 로 성장과정 관찰이 요구되나, 원자량이 크고 전자밀도가 높은 금속시료의 경우 실시간 성장과정 관찰이 어렵다. 또한 나노규모의 기계적 특성 실험을 수행하기 위한 MEMS/NEMS 장비 설계의 어려움은 물론, 나노규모 시료를 마련하기 위한 준비과정에 생기는 결함조차 기계적 특성에 큰 영향을 주어 실험의 신뢰도를 떨어뜨린다. 실험의 한계를 극복하기 위해 원자 수준 해석 방법인 분자 정역학, 분자 동 역학 등을 이용한 합성과정 및 기계적 안정성 연구가 국내외에서 시도되어 왔지만, 길이적-시간적 한계에 의해 해석방법의 적용범위 및 정확도가 제 한적이다. 대학실험실 수준의 CPU 수백 개 단위의 병렬컴퓨터를 통한 분자 동역학 계산의 경우에, 모사가 가능한 원자의 숫자가 약 1,000,000개 정도 이고 1 나노초 (0.000000001초) 정도의 동역학만을 관찰할 수 있다. 그러나 100nm 지름의 100nm 길이 은 나노선을 예를 들면 약 45,000,000개의 원 자들로 이루어져 있고, 그 성장에 수초에서 수분이 걸린다. 마찬가지로, 나 한국과학기술정보연구원 결정성장을 위한 phase field code 최적병렬화

06

01

(25)

섞인 액체에는 금의 촉매작용으로 기체의 실리콘이 녹아들어가고 고체표면 에는 녹아들지 않는다. 액체 속의 실리콘 비율이 임계점 이상으로 높아지면 액체 아래로 가라앉으면서 고체결정으로 변하고 이를 통해 액체방울과 비슷 한 지름을 가진 긴 결정이 만들어진다. 이는 소금물에서 소금이 용해도 이상 녹았을 때 석출되는 것과 유사한 원리이다. 실제 실험에서 금 나노입자를 생성한 후 실리콘 기판에 뿌리면 금속과 실리 콘의 반응성이 좋아서 둘이 혼합된 금-실리콘 나노액체방울이 생성되고 그 를 촉매로 사용하여 실리콘 나노선을 성장시킬수 있다. 이때 [그림 2]와 같 이 실리콘 고체결정은 방위(orientation)에 따라서 표면에너지가 다른 비등 방성(anisotropy)을 갖고 있기 때문에 똑바로 자라던 나노선이 다른 방향으 로 급격히 꺾이든지 혹은 특정방향으로는 나노선이 자라지 않는 등의 현상 이 발생하기 때문에, 그 메커니즘을 모델링을 통해 밝히고 방지하기 위한 연 구가 필요하다. 성 시뮬레이션을 통해 얻어진 나노선의 모양으로 연속체 역학 및 전위역학 (dislocation dynamics)을 이용한 기계적 특성 모사를 수행하고 기계적 특성 평가 실험과 비교해 볼 수도 있다. 본 연구를 위해 병렬화/최적화 작업을 수행했던 계산 코드(code)는 아래와 같이 나노선의 성장을 모사한다. 기체와 액체의 경계면은 노란색으로, 기체 와 고체의 경계면은 하늘색으로, 액체와 고체의 경계면은 혼합된 색으로 도 식화(visualization)하였고([그림 1]) 경계면들의 움직임은 실제 실험에서 일 어나는 물리현상을 반영하고 원자레벨 모델링과 실험에서 얻은 물성을 입력 치로 하여 계산한다. 실리콘원자를 함유한 기체를 흘려줄 때, 실리콘과 금이 한국과학기술정보연구원 결정성장을 위한 phase field code 최적병렬화

(26)

보 교환 및 계산 시간의 최소화를 위해서 효율화 작업이 필요하므로 최적화 작업 역시 필요하다([그림 3]). 최적병렬화를 효과적으로 수행하지 못하면 병렬프로그램의 확장성(scalability)이 현저히 떨어지게 된다. 구체적인 예를 들자면, CPU를 10배 많이 사용했을 때 계산속도가 10배 빨라지는 게 최대 의 성능향상일 텐데 최적화 작업이 되지 않을 경우 훨씬 적은 5배 가량의 속 도 향상만 될 수 있고, 이러한 확장성 확보는 사용하는 CPU 개수가 많을수 록 어렵다. 따라서 매우 다양한 조건에서의 결정 성장을 효과적으로 모사하 기 위해서는 최적병렬화 작업이 반드시 필요하다. 따라서 KISTI에서 보유한 공학과 전산과학 전문가가 함께 구성된 전문인력의 도움을 받아서 본 연구 실의 프로그램 효율성이 매우 향상되었다. 본 연구를 위해 최적병렬화 작업을 수행했던 계산 코드는 크게 3가지의 형 태로 진행되었다. 쓰레드 병렬화 방법인 OpenMP는 하나의 CPU에 있는 여 러 개의 코어를 효율적으로 사용하게 할 수 있는 병렬화로서 프로그래밍은 간단하고 같은 CPU 내의 코어 사이에 정보교환만 필요하여 통신시간이 적 은 반면, 많은 CPU를 동시에 사용하기 어려운 단점이 있다. MPI는 통신망 으로 연결된 다양한 CPU를 사용할 수 있는 병렬화 방법으로서 프로그래 밍은 어려우나 매우 많은 CPU를 사용할 수 있는 장점이 있다. 마지막으로 GPU는 컴퓨터 그래픽스 카드의 특별한 아키텍처를 이용한 병렬화로 프로 그램 난이도는 높으나 값싼 그래픽 카드로 고성능 CPU의 구매 없이 프로그 램의 효율을 향상시킬 수 있는 장점이 있다. 3가지 다른 코드를 [그림 1]의 모델링을 위한 성장 전의 모습을 모사하는 시뮬레이션에 적용시킬 때 걸리 는 소요시간을 [그림 4]에 정리해 보았다. 기존의 단일 코어를 이용했던 본 연구실 코드에 비해서 3가지 방법 모두 매우 높은 성능 향상을 보여주었다. 이때 코어 간 혹은 CPU 간의 통신시간이 긴 OpenMP 혹은 MPI보다는 그래 픽 카드 내에서 쓰레드간의 상호작용만 필요한 GPU를 이용한 병렬화 기법 우선, 컴퓨터로 시뮬레이션을 수행하는 데에 왜 좋은 컴퓨터가 필요한지, 왜 많은 저장 공간이 필요한지에 대해 간단하게 논의해보자. [그림 1]과 [그림 2]에 도식화된 다른 상들의 경계면들 위치는 경계근처에서 매우 빠르게 변 화하는 3차원 공간의 상(phase)으로 주어져 있고, 그 경계면의 움직임은 시 간과 공간에 대한 미분방정식으로 표현되어 있다. 이런 미분방정식은 극히 간단한 경우를 제외하고는 해석적인 해를 구할 수 없으므로 공간을 이산적 (discrete)으로 조밀하게 나누고, 시간 역시 이산적으로 나눈 후에 컴퓨터를 통해 수치적으로 미분방정식을 풀게 된다. 일반적으로 이 방정식에서 나온 해를 정확하게 모사하기 위해서는 경계에서 빠르게 변화하는 상을 모사해 야 하기 때문에 공간을 나눈 간격이 매우 촘촘하게 나뉘어야 하고 시간 변화 도 매우 촘촘하게 나뉘어야 한다. 예를 들어, A4 용지 한 장에 해당하는 면 적에서 상의 경계면의 분포 및 위치를 해석하기 위해 세밀한 패턴이 새겨진 모눈종이의 모든 눈금에서 각각 이 방정식을 풀어야 하고, 그 움직임을 모사 하기 위해 매 시간 간격마다 비슷한 계산을 반복적으로 수행해야 한다. 때문 에 매우 많은 계산량이 요구되고 일반 컴퓨터로는 해석이 도저히 불가능하 여 KISTI의 슈퍼컴퓨터를 이용해야 할 필요가 있다. 일반 컴퓨터를 위해 작 성된 프로그램은 모든 눈금의 계산을 하나의 중앙처리장치(CPU)만을 이용 하여 계산하게 되어 있는데, 매우 많은 CPU를 사용할 수 있는 슈퍼컴퓨터를 효율적으로 활용하기 위해서는 눈금들을 여러 개의 CPU에 나눠 주고 분산 적으로 계산을 수행할 수 있도록 하는 병렬화 작업이 필요하며, CPU간의 정 한국과학기술정보연구원 결정성장을 위한 phase field code 최적병렬화

(27)

최적병렬화 과정을 통해서 개선된 프로그램은 앞으로 다양한 방위에서 다양 한 소재의 성장을 다루는 데 요긴하게 활용될 것이다. 또한, 나노선의 성장 뿐만 아니라, 소재의 응고, 용융과 같은 상변이 현상, 소재의 균열(crack)이 진전하는 현상도 유사한 미분방정식을 지닌 상장(phase field) 모델로 모사 할 수 있기 때문에 약간의 수정을 통해 매우 다양한 물리현상을 모사하는 코 드로 업그레이드 시킬 수 있을 것이라 예상된다. 이렇게 매우 효율적이고 우 수한 프로그램을 직접 보유하고 있는 연구진은 세계적으로도 많지 않으며, KISTI의 적극적인 도움으로 앞으로 세계적인 경쟁력을 지닌 많은 연구결과 들을 이끌어 낼 수 있을 것으로 기대된다. 본 과제에서 효율화된 코드의 일부를 이용하여 실험결과와의 비교를 수행한 아래의 논문[연구실적1]이 발행되었으며, 모든 결과를 종합한 모델링 논문을 준비 중에 있다.

[1] Yanying Li, Yanming Wang, Seunghwa Ryu, Ann F. Marshall, Wei Cai, and Paul C. McIntyre, "Spontaneous Defect-Free Kinking Via Capillary Instability During Vapor-Liquid-Solid Nanowire Growth", Nano Letters 16, 1713 (2016).

이 가장 우수한 성능을 보여 주었다. 단일 코어로 80초밖에 안 걸리는 시뮬 레이션이기 때문에 그 이점이 여기서 크게 부각되지는 않지만, 실제로 나노 선의 성장을 단일 코어로 모사하기 위해서는 수일-수십 일이 소요되기 때문 에, 병렬화 코드를 통한 연구 시간 절약 및 효율 향상은 연구수행에 지대한 공헌을 하게 된다. 한국과학기술정보연구원 결정성장을 위한 phase field code 최적병렬화

(28)

서울대학교 물리학과 이원종 KISTI 슈퍼컴퓨팅 최적병렬화 사례집 www.kisti.re.kr

7.

격자 게이지 이론에서의 비섭동적

재규격화(NPR) 프로그램 최적화

격자 게이지 이론에서의 비섭동적 재규격화(NPR) 프로그램 최적화

07

자연에는 크게 네 가지 상호작용이 있다. 중력, 전자기력, 약력, 강력이 그것 이다. 그리고 각각의 상호작용마다 적용되는 입자들이 있다. 예를 들면 중력 은 사과나 지구와 같은 질량이 있는 입자에 적용이 되고, 전자기력은 전자나 양성자처럼 전하를 띤 입자에 적용이 된다. 네 가지 상호작용 중에 중력을 제외한 전자기력, 약력, 강력을 설명하는 물리학계의 이론 모형이 있는데, 이를 표준모형이라고 한다. 표준모형은 자연계 대부분의 물리현상을 설명함 으로써 큰 성공을 거두어왔다. 하지만 중성미자(neutrino)1)의 질량의 존재 와 같은 표준모형이 예측하지 못하는 현상들이 실험적으로 발견됨으로써 표 준모형의 결함이 알려져 왔다. 본 연구단에서는 CP 위반의 정도를 나타내는 물리량인

ε

K를 실험에서 얻은 값과 표준모형에서 예측하는 값과의 차이가 극명하게 나타남을 보임으로써 표준모형의 진위를 판별하고 표준모형을 넘 어서는 초 표준모형에 대한 단서를 제공하는 연구를 진행하고 있다. 양자색역학(QCD, Quantum Chromodynamics)은 표준모형의 강력, 즉 강 한 상호 작용에 대한 이론이다. 전자기 상호작용이 전하(charge)를 가지 는 입자들 사이의 상호작용(예를 들어 정전기현상과 같은)을 말한다면, 강 한 상호작용은 색소전하(color charge)를 가지는 기본 입자인 쿼크와 글루 온으로 이루어진 입자들 사이의 상호작용을 가리킨다. 그런데 강한 상호작 용은 점근 자유성(asymptotic freedom)2)이라는 특성을 가지는데, 이로 인 해 쿼크나 글루온은 짧은 거리 혹은 낮은 에너지 규모에서 홀로 자유롭게 존 재하지 못한다. 반드시 쿼크나 글루온의 결합구조인 메존(meson)이나 베리 온(baryon)과 같은 강입자 안에 묶여 존재한다. 일상적으로 알고 있는 양성 자, 중성자와 같은 원자의 핵이 쿼크와 글루온으로 이루어진 강입자이다. 강 입자의 에너지 규모 또는 그에 해당하는 짧은 거리에서 강한 상호작용은 매 우 강력해서 기존의 해석적 방법인 섭동이론(perturbation theory)을 통해 서는 원하는 물리적 값을 계산할 수 없다. 따라서 강입자의 상호작용 또는 그 특성과 같은 물리현상을 이해하기 위해서는 비섭동적인 방법을 사용해 야 한다. 그 방법 중 하나가 격자게이지이론(lattice gauge theory)에 기초 하여 시공간을 격자로 나누어 슈퍼컴퓨터로 시뮬레이션 계산을 하는 격자 QCD(lattice QCD)이다.

01

(29)

격자 QCD는 연속적인 시공간을 가상의 격자로 나누어 비연속적인 시공간 위에서 물리량을 계산한다. 임의의 물리량은 파인만 경로적분(Feynman path integral)을 이용하여 계산할 수 있다. 경로적분은 무한대의 4차원 부 피를 가지는 연속적인 시공간에는 무한한 계산량이 필요하기에 수치계산으 로 구할 수 없다. 하지만 4차원 시공간을 모눈종이의 격자처럼 쪼개어 유한 한 부피를 가정하면 유한한 계산량으로 경로적분을 구할 수 있다. 따라서 유 한한 부피의 격자 시공간에서는 QCD관련 물리량이 수치적으로 계산 가능하 다. 하지만 이 과정에서 가상의 격자를 도입했기 때문에, 실제 연속적인 시 공간에서의 물리량을 얻어내기 위해서 격자 간격을 0으로 보내어 연속적인 시공간에서의 값을 도출해야 한다. 따라서 격자시공간의 격자간격을 큰 것 에서부터 작은 것으로 달리하며 경로적분을 계산함으로써 격자 간격이 0일 때의 값을 도출할 수 있다. 이러한 비연속적인 격자 시공간을 연속적인 시공 간으로 돌려놓는 과정을 통하여 실제 물리량을 얻게 된다. 한국과학기술정보연구원 격자 게이지 이론에서의 비섭동적 재규격화(NPR) 프로그램 최적화

07

그림 1. CKM 행렬의 유니터리티 삼각형 (Particle Data Group, "Review of Particle Physics")

(30)

물리적인 결과를 얻기 위해서는 하나의 격자 앙상블에서의 계산만으로 충분 하지 않다. 격자 앙상블이란 특정한 격자 간격, 쿼크의 질량과 격자공간 크 기의 조합을 지칭한다. 그런데 연속된 시공간에서의 값을 도출하기 위하여 격자 간격을 0으로 보내는 극한이 필요하고, 격자 계산에 물리적인 쿼크 질 량의 외삽이 필요하기 때문에 다양한 격자 간격과 쿼크 질량 조합, 즉 다양 한 격자 앙상블에서의 수많은 계산 결과를 분석해야 한다. 해당 연구에서는 앞서 수행한 계산보다 BK를 더 정밀하게 계산하기 위해, NPR 방법을 이용하여 맞춤인자를 계산한다. 맞춤인자의 계산 또한 각각의 격자 간격마다 필요하고 여러 가지 쿼크 질량과 운동량에 대해서 계산을 해 야 한다. 그리고 많은 격자 configuration에 대해서 계산을 할수록 통계적 오차가 줄어들기 때문에 많은 계산량을 요구한다. 첫 번째 단계로 대략 30개 정도의 격자 configuration을 사용해도 의미있는 값을 얻을 수 있다는 것을 알기 때문에 먼저 30개의 격자 configuration을 사 용하여 여러 가지 쿼크 질량과 운동량에 대해서 수치계산을 하고 분석을 한 다. 이후 두 번째 단계로 통계적 오차를 줄이기 위해 격자 configuration의 개 수를 늘려 나갈 것이다. 세 번째 단계는 MILC에서 제공하는 모든 격자 앙상 블에 대해 각각의 모든 configuration을 사용하여 계산을 수행하는 것이다. 각각의 격자 configuration은 5개의 쿼크 질량과 10개의 운동량에 대한 단위 작업을 계산해야 하므로, 첫 번째 단계에서 1500개의 격자 단위 작업을 할 때 [표 1]의 각각의 격자 앙상블에 대해서 수치계산이 필요하다.

Lattice a(fm) am/ams Geometry Progress ID

Coarse lattice 0.12 0.01/0.05 203 ×64 690/1500 C3 Fine lattice 0.09 0.0062/0.031 283 ×96 1017/1500 F1 Superfine lattice 0.06 0.0036/0.018 483×144 -/1500 S1 Ultrafine lattice 0.045 0.0028/0.014 643×192 -/1500 U1 격자 QCD는 수치계산방식의 특성상 수많은 계산량이 요구되므로, 슈퍼컴퓨 터의 발전이 필수불가결한 요소이다. 이전에는 계산이 불가능하였던 문제들 이 컴퓨터 기술의 발전과 연구를 통해서 해결되는 과정에서 현재는 슈퍼컴 퓨터를 사용하여 실제로 계산되고 있다. 전세계 슈퍼컴퓨터 성능의 많은 부 분이 격자 QCD 계산에 쓰이고 있고, High Performance Computing (HPC) 에 대한 연구는 격자 QCD 분야에서도 매우 중요한 연구 주제이다. 최근에 는 단순히 여러 개의 CPU를 사용하는 것에서 더 나아가, 그래픽 처리 장치 (GPU)나 Intel Xeon Phi 제품군 등을 활용하여 추가적인 성능향상을 얻기 위한 연구가 활발하게 이루어지고 있다.

격자 QCD 연구에 많이 사용되는 계산 라이브러리로는 CPU 기반의 CPS (Columbia Physics System), MILC (MIMD Lattice Computation), CHROMA 등이 있다. 최근에는 이러한 CPU 기반 라이브러리들에 덧붙여 CG (Conjugate Gradient) 알고리즘과 같이 계산량이 많은 부분을 GPU를 사용해서 계산하는 QUDA (QCD CUDA) 라이브러리가 개발되어 많은 연구 자들이 사용하고 있다. 본 연구단 역시 자체 개발한 CUDA 코드와 QUDA 라이브러리를 활용하여 GPU를 사용하는 계산에 주력하여 매우 큰 성능적 혁신을 이루었다.

뿐만 아니라 Intel에서 새롭게 내놓고 있는 Xeon Phi 제품군 또한 주목 받고 있다. Xeon Phi 는 x86 CPU 기반이지만, GPU와 비슷한 성능을 갖도록 기 존의 CPU보다 많은 수의 코어를 장착하고 병렬 계산에 알맞게끔 디자인되 었다. 특히 x86 아키텍처에 호환되기 때문에 코드 이식성과 개발 용이성 등 많은 장점을 가지고 있다. 격자 QCD 분야에서도 Xeon Phi 와 관련된 많은 연구가 이루어지고 있는데, 대표적인 예로 GRID 라이브러리가 있다. GRID 는 아직 개발 단계이나, Xeon Phi Knights Landing을 장착한 미국 NERSC 슈퍼컴퓨팅 센터의 Cori(2016년 11월 기준 TOP500에서 5위에 랭크) 시스템 에서 높은 성능을 보여주어, 많은 격자 QCD 연구자들의 관심을 받고 있다. 한국과학기술정보연구원

07

02

최신 연구동향

03

최적화/병렬화

지원의 필요성

표 1. “a”는 lattice 간격이며 “amℓ” 과 “ams”는 mass. 각각의 격자 앙상블은 N개의 configuration, 5개의

mass, 10개의 momentum 조합으로 50N개의 단위 계산에 대하여 시뮬레이션을 수행

(31)

>> 병렬확장성 실험 결과 [표 3]은 (시공간 격자 크기) gauge configuration을 사용하여 최적화된 NPR 프로그램의 병렬확장성을 측정한 결과이다. [표3]과 [그림2]에서 볼 수 있듯이 CPU 코어 수의 증가에 따라 계산 속도가 일정하게 증가하고 있다. 이는 프로그램이 데이터 커뮤니케이션 부분이 거의 없으며 CPU 수를 크게 확장하여도 계산속도 향상에 문제가 없는 병렬화에 최적화된 프로그램이라는 것을 알려준다. 그렇기 때문에 CPU 수만 충분하다 면 Superfine, Ultrafine 격자 앙상블처럼 큰 격자 앙상블의 경우에는 8000 CPU 이상에서 작업을 수행하여 단위 작업 당 계산 시간을 줄일 수 있다. 격자 간격 크기가 줄어들수록 격자 점의 개수가 늘어나므로 계산량은 더욱 더 많아진다. 기존의 최적화하지 않은 프로그램에 대해서 KISTI 타키온2 시 스템을 사용하여 첫 번째 단계의 총 계산시간을 대략적으로 구해보면 8,192 CPU 코어 사용기준으로 10.9년이 필요하다. 이는 상당히 긴 시간으로 프로 그램의 최적화와 병렬화가 필수적임을 알 수 있다. 특히 본 연구단의 NPR 계산 프로그램은 계산량 대비 데이터 커뮤니케이션의 비중이 거의 없어 병 렬화에 효율적이다. 또한 기존에 최적화된 부분이 많지 않아, 최적화를 통해 성능향상을 얻을 여지가 많다. 따라서 KISTI의 최적화 병렬화 지원을 통해 계산성능이 크게 향상될 수 있을 것이다.

[표 2]에 83×32(시공간 격자 크기) gauge configuration을 사용하고 KISTI

(32)

[6]. Jon A. Bailey, Yong-Chull Jang, Weonjong Lee, Sungwoo Park, 2015,

“Determination of

ε

K using lattice QCD inputs”, Proceedings of Science,

Lattice2015(348), KSC-2014-G3-002

[7]. Jangho Kim, Weonjong Lee, Jeonghwan Pak, Sungwoo Park, SWME Collaboration, 2016, “Nonperturbative Renormalization in the RI-SMOM Scheme and Gribov Uncertainty in the RI-MOM Scheme for Staggered Bilinears”, Proceedings of Science, Lattice2015(257), KSC-2014-G3-003 [8]. Jon A. Bailey, Yong-Chull Jang, Weonjong Lee, Carleton DeTar, Andreas S. Kronfeld, Mehmet B. Oktay, 2016, “Update on Heavy-Meson Spectrum Tests of the Oktay—Kronfeld Action”, Proceedings of Science, Lattice2015(099), KSC-2014-G3-002

[9]. Jon A. Bailey, Weonjong Lee, Jaehoon Leem, Sungwoo Park, Yong-Chull

Jang, 2016, “Status report on

ε

K with lattice QCD inputs”, Proceedings of

Science, Lattice2016(383), KSC-2014-G3-003

[10]. Weonjong Lee, 2017, “Current status of

ε

K in lattice QCD”, Journal of

Physics: Conference Series, 800(1, 012006), KSC-2014-G3-003

[11]. Hwancheol Jeong, Weonjong Lee, Jaehoon Leem, Sungwoo Park, Tanmoy Bhattacharya, Rajan Gupta, Yong-Chull Jang (LANL-SWME Collaboration), 2016, “Tuning the hopping parameter in the Oktay-Kronfeld action for charm and bottom quarks on a MILC HISQ ensemble”, Proceedings of Science, Lattice2016(380), KSC-2014-G2-002

[12]. Jon A. Bailey, Jaehoon Leem, Weonjong Lee, Yong-Chull Jang, 2016, “Heavy-heavy current improvement for calculation of B→D(*)ℓν semi-leptonic form factors using the Oktay-Kronfeld action”, Proceedings of Science, Lattice2016(285), KSC-2014-G3-003

[13]. Jon A. Bailey, Yong-Chull Jang, Weonjong Lee, Carleton DeTar, Andreas S. Kronfeld, Mehmet B. Oktay, 2017, “Heavy-quark meson spectrum tests of the Oktay-Kronfeld action”, KSC-2014-G3-003

KISTI 최적화 지원 결과로 2.206배의 성능이 향상되어, 현재 시스템 기준으 로 연구단 첫 번째 단계 목표의 총 계산 예상시간이 10.9년에서 4.9년으로 대폭 줄어들었다. 앞으로 해당 코드를 Intel 최신 CPU나 Xeon Phi에서 중요 한 벡터 최적화를 수행하면 보다 많은 성능향상을 기대할 수 있어, 예상시간 이 더욱 줄어들 것이다. 나아가 본 연구를 통해서 우주가 작동하는 원리로서 많은 실험과 탁월한 이론 연구에 의해 구축되어 온 표준모형 이론의 진위를 판별 할 수 있다. 또한, 그 결과는 입자 가속기 실험에서 얻어진 결과와 함께 초표준모형(BSM, Beyond Standard Model)의 후보를 선별하는 데도 큰 역 할을 할 것이다.

[1]. Jon A. Bailey, Yong-Chull Jang, Weonjong Lee, Sungwoo Park, 2015.

“Standard Model evaluation of

ε

K using lattice QCD inputs for and Vcb.”,

PHYSICAL REVIEW D, 92(3), KSC-2014-G3-002

[2]. Benjamin J. Choi, Yong-Chull Jang, Chulwoo Jung, Hwancheol Jeong, Jangho Kim, Jongjeong Kim, Sunghee Kim, Weonjong Lee, Jaehoon Leem, Jeonghwan Pak, Sungwoo Park, Stephen R. Sharpe, Boram Yoon, 2016,

“Kaon BSM B-parameters using improved staggered fermions from Nf=2+1

unquenched QCD”, PHYSICAL REVIEW D, 93(1), KSC-2014-G3-003

[3]. Nigel Cundy, Weonjong Lee, 2016, “Overlap fermions on GPUs”, Proceedings of Science, Lattice2015(034), KSC-2014-G3-002

(33)
(34)
(35)
(36)

위 문제를 보다 효과적으로 풀기 위해 KISTI 슈퍼컴퓨팅센터에 자문을 요 청하였고, KISTI의 지원을 받게 되었다. 이 문제의 시스템 매트릭스 는 비 대칭 매트릭스인데, 이 선형방정식 시스템을 MPI 병렬계산 환경 하에서 BiCGSTAB solver를 이용해 풀 수 있었다. [그림 4]는 비교적 작은 규모의 3 차원 파동전파해석 문제를 병렬최적화 코드로 풀었을 때의 병렬확장성과 성 능향상도를 나타낸다. CPU의 수가 증가함에 따라 이 문제의 병렬확장성이 좋아서 대규모 문제의 경우에도 최적화 성능이 우수한 것으로 평가되었다. 이번 파동전파해석 코드의 성능 최적화 작업은 향후 대규모 반복계산이 필 요한 역해석 코드의 병렬최적화를 위한 사전 연구의 성격을 갖고 있다. 따라 서 이번 최적화 연구 결과는 앞으로 수행할 전체파형 역해석 코드의 병렬최 적화에 대한 방향을 제시했다는 점에서 큰 의의가 있다. 현재 연구진은 다양한 공학 문제에 대한 전체파형 역해석 방법의 개발, 실측 데이터의 적용, 병렬최적화를 위한 역해석 알고리즘 개선 등의 연구를 지속 적으로 수행하고 있다. 실측 데이터를 이용한 전체파형 역해석 기술의 적용 사례 중 대표적인 것이 최근 사회적 이슈가 되고 있는 도심지 지반함몰에 대 한 진단 및 상태 평가이다. 적용 대상은 부산광역시 강서구 녹산산업단지 일 원의 아스팔트 포장 도로로서 바다에 인접해 있다. 2017년 3월 기준으로 이 도로에는 종방향 균열과 지반침하가 많이 발생한 상태인데, 관입 탐사 결과 일부 구간에 지반함몰이 존재하는 것으로 판명되었다. [그림 5]는 이 지반함 몰 구간에 대해 탄성파 가진 및 측정 실험을 수행하는 모습을 나타낸다. 측정 된 탄성파 데이터를 이용하여 전체파형 역해석을 수행해 조사 구간의 탄성계 수 분포를 도출하였다. [그림 6]은 그러한 2차원 단층이미지를 나타낸다. 이 결과로부터 공동의 위치, 폭, 깊이, 주변 지반의 탄성계수 등을 정량적으로 추정할 수 있다. 한국과학기술정보연구원

08

05

활용 결과 및

향후 예상 성과

(a) Computing time (hr)

그림 4. CPU 개수에 따른 계산시간과 성능향상도

(b) Speed-up

그림 5. 지반함몰 구간에 대한 탄성파 가진 및 측정 실험 (부산광역시 녹산산업단지 인근)

그림 6. 탄성파 실측 데이터를 이용한 도로 지반함몰 재구성 결과 (a) Reconstructed profile (b) Reconstructed profile (c) Profiles at =0 m

(37)

이번 지원을 통해 최적병렬화를 통한 연구 역량을 극대화할 수 있음이 증명 되었다. 또한 증가된 연구 역량을 바탕으로 다양한 연구 방법과 방향을 시도 해 볼 가능성도 높아졌다. 현재 큰 규모의 역해석 문제를 풀기 위한 알고리 즘의 개선 작업이 이루어지고 있으며, 개선된 알고리즘의 최적병렬화는 대 규모 역해석 문제의 해를 도출하는데 크게 기여할 수 있을 것으로 예상된다. 향후 전체파형 역해석 알고리즘의 개선과 코드의 병렬최적화를 통해 사회기 반 구조물 및 지반의 상태 평가를 보다 빠르게, 보다 큰 규모로, 보다 정밀 하게 수행할 수 있을 것으로 기대된다. 막대한 메모리와 계산 시간으로 인해 기존의 순차해석 방법으로는 재구성이 불가능했던 3차원 구조체의 물성 분 포 이미지를 신속히 도출할 수 있을 것이다. 이는 구조물의 건전도 평가 시 일기예보와 비슷한 수준의 준실시간 평가가 가능할 수 있음을 의미한다. 계 산과학 문제의 병렬최적화 해법을 제공하는데 있어 최고의 하드웨어 및 연 구진을 보유한 KISTI와 함께 건설 분야 신기술 소프트웨어 개발을 선도할 수 있기를 기대한다. >> 연구실적

[1]. Kang, J. W. and Lee, J. (2016), “A new damage index for seismic fragility analysis of reinforced concrete columns,” Structural Engineering and Mechanics, 60(5), 875-890.

[2]. Lim, H.-K., Kang, J.W., Lee, Y.-G., and Chi, H.-S. (2016), “Seismic performance evaluation of a three-dimensional unsymmetrical reinforced concrete building," Multiscale and Multiphysics Mechanics, 1(2), 143-156.

[3]. Pakravan, A., Kang, J. W., and Newtson, C. M. (2016), “A Gauss-Newton full-waveform inversion for material profile reconstruction in viscoelastic semi-infinite solid media,” Inverse Problems in Science and Engineering, 24(3), 393-421. [4]. Kim, J., Kang, J.W., Jung, H., and Pack, S. (2015), “Effects of traffic-induced vibrations on bridge-mounted overhead sign structures," Structural Engineering and Mechanics, 55(2), 365-377.

[5]. Yi, S.-R., Kim, B., and Kang, J.W. (2015), “Mixed Unsplit-Field Perfectly Matched Layers for Plane-Electromagnetic-Wave Simulation in the Time Domain," Computer Modeling in Engineering & Sciences, 106(2), 77-104.

[6]. Lee, Y. G., Kim, S.-H., Park, J.-S., Kang, J.W., and Yoon, S.-J. (2015), “Full-scale field test for buried glass-fiber reinforced plastic pipe with large diameter," Composite Structures, 120, 167-173.

[7]. Esmailzadeh, S., Medina-Cetina, Z., Kang, J.W., and Kallivokas, L.F. (2015), “Varying Dimensional Bayesian Acoustic Waveform Inversion for 1D Semi-Infinite Heterogeneous Media," Probabilistic Engineering Mechanics, 39, 56-68. [8]. Pakravan, A., Kang, J. W., Newtson, C.M., and Kallivokas, L. F. (2014), “Hybrid perfectly-matched-layers for transient simulation of scalar elastic waves," Structural Engineering and Mechanics, 51(4), 685-705.

[9]. Pakravan, A. and Kang, J. W. (2014), “A Gauss-Newton full-waveform inversion for material prole reconstruction in 1D PML-truncated solid media," KSCE Journal of Civil Engineering, 18(6), 1792-1804.

>> 참고문헌

[1]. Chew, W. C. and Liu, Q. H. (1996), “Perfectly matched layers for elastodynamics: A new absorbing boundary condition,” Journal of Computational Acoustics, 4(4), 341-359.

[2]. Epanomeritakis, I., Akçelik, V., Ghattas, O., and Bielak, J. (2008), “A Newton-CG method for large-scale three-dimensional elastic full-waveform seismic inversion,” Inverse Problems, 24(3), 034015.

[3]. Kallivokas, L. F., Fathi, A., Kucukcoban, S., Stokoe, K. H., Bielak, J., and Ghattas, O. (2013), “Site characterization using full waveform inversion,” Soil Dynamics and Earthquake Engineering, 47, 62-82.

[4]. Operto, S., Ravaut, C., Improta, L., Virieux, J., Herrero, A., and Dell'Aversana, P. (2004), “Quantitative imaging of complex structures from dense wide‐ aperture seismic data by multiscale traveltime and waveform inversions: a case study,” Geophysical prospecting, 52(6), 625-651.

[5]. Pratt, R. G. and Shipp, R. M. (1999), “Seismic waveform inversion in the frequency domain, Part 2: Fault delineation in sediments using crosshole data,” Geophysics, 64(3), 902-914.

(38)
(39)

수치

그림 4. (아래) 실제 관측한 은하들의 공간분포. (위) Horizon Run 4를 이용하여 만든 가상은하들의 공간분포  (Kim et al. 2015, Journal of the Korean Astronomical Society, 48, 213)
표 1. 연구에 사용된 CPU와 GPU 사양
그림 1. 폴리머 분자의 단순 모델 (Terrapon, Vincent. "Lagrangian simulations of turbulent drag  reduction by a dilute solution of polymers in a channel flow." 2005)
그림 2. 난류 유동에 에너지 스펙트럼과 수치 기법의 종류에 따른 모델링 비교: (a) DNS (Direct numerical  simulation); (b) RANS (Reynolds-average Navier-Stokes equation);  (c) LES (Large eddy  simulation);
+5

참조

관련 문서

• 렌더링 알고리즘은 많은 명령을 수행하고 많은 픽셀값들을 계산하기 때문에 처리 시간이 오래 걸림. • 현재 대부분의 그래픽 시스템들은 렌더링

모발의 구성 : -SH기를 지닌 시스테인(Cys)이 많은 케라틴(keratin) 단백질으로 구성 - 시스테인은 단백질 사슬 사이에 이황화결합 (-S-S-)을 형성해서 모발구조에 영향.

– 토양입경별 Bioventing 공정의 처리효과.. ③ 오염물질의 분해를 위한 적절한 상태가 조성되지 않으므로 분해가 어 려운 물질을 완전하게 제거하기 위해서는

또한, 기존 프로그램은 상황제시, 창의적 설계, 감성적 표현으 로 구성되어 있지 않는데 다양한 과학적 원리를 적용한 탑 구조물을 만들 수 있도록 변경하고자

칼라코드를 사용하기 위해서는 스마트 폰이 필요합니다.. 많은

칼라코드를 사용하기 위해서는 스마트 폰이 필요합니다.. 많은

흔히 장애학생들의 지역사회 프로그램을 위해서는 학생의 안전이나 원활한 진 행을 위해 인솔교사와 일대일 자원봉사를 포함한 많은 숫자의 인원과 지역사회의

간에 통계적으로 유의한 차이가 없었다(p>0.. 필라테스 운동 프로그램이 민첩성 변화에 효과가 있는지를 검정하기 위해 공분산 분석을 실시한 결과가