fbpx

E8IGHT

EXPLORE : 


 

EXPLORE

THE DIVERSITY OF

OUR FUTURE

SIMULATIONS

 


+  INQUIRY


+  NFLOW DEMO


+  BROCHURE


문의하기
POWERFUL. EFFICIENT. ELASTICITY

Innovative
Multi-GPU Cloud Solution
NFLOW MULTI-GPU

독자적인 GPU 가속 및 Multi-GPU 알고리즘.
NFLOW MULTI-GPU

OUR TECHNOLOGY

NFLOW graphics processing unit parallel computing for computational fluid dynamics – CFD in GPU

다양한 산업 분야에 유체 시뮬레이션 소프트웨어(CFD)가 도입됨에 따라 유체 시뮬레이션 소프트웨어의 규모, 복잡성이 나날이 증가하고 있습니다. 따라서 현재 유체 시뮬레이션 소프트웨어가 직면한 주요 도전 과제는 클러스터의 발전과 함께 확장성을 가진 효율적인 소프트웨어를 도입하여 해석 속도를 증가시키는 것이라 할 수 있습니다. 그리고 이에 대한 해답은 NFLOW에서 찾을 수 있습니다.

GPU acceleration

NFLOW에 도입된 GPU 가속(GPU Acceleration) 기술은 CPU가 아닌 GPU를 이용하여 어플리케이션의 처리속도를 높이는 것을 말합니다. CPU는 소수의 강력한 코어를 사용하여 직렬 처리를 효율적으로 할 수 있도록 구성되어 있는 반면, GPU는 수 천 개의 코어를 동시에 사용하여 병렬처리를 효율적으로 할 수 있도록 구성되어 있습니다. 따라서 어플리케이션의 연산 집약적인 부분에서 CPU보다 GPU가 더 효율적일 경우, GPU 가속을 사용하여 어플리케이션의 성능을 향상시킬 수 있습니다.

 

과거에는 그래픽 연산과 관련된 부분만 GPU 가속이 적용되었다면 GPGPU(General-Purpose computing on Graphics Processing Units)가 등장한 이후의 GPU 가속은 아래 그림에서 알 수 있듯이, AI와 같은 최신 컴퓨팅 기술에서부터 다양한 과학 소프트웨어에 이르기까지 폭 넓게 사용되면서 정보통신기술의 최전방을 이끌고 있습니다.

하지만 모든 소프트웨어를 GPU 가속시키는 것이 쉽지는 않습니다. 특히 유체 시뮬레이션의 경우 연산 집약적인 부분을 GPU 병렬화 하여 가속화하는 과정이 복잡하고 어렵습니다. 그럼에도 불구하고 NFLOW는 유체 시뮬레이션 계산 속도의 혁신을 GPU 병렬 컴퓨팅과 Multi-GPU를 통해 달성하였습니다.

GPU Parallel Computing

A. Smoothed particle hydrodynamics

SPH는 모든 입자가 인접 입자와의 상호작용을 통해 물리 량을 계산하기 때문에, 순차적인 코드 대비 병렬 코드의 속도가 월등합니다. 아래 그래프는 이러한 점을 극명하게 보여줍니다. 아래 그래프는 CPU 코어 1개 또는 8개를 사용했을 때에 비해 GPU에서 속도가 몇 배 빨라졌는지 나타내는데, CPU보다 더 많은 코어를 가지고 있는 GPU를 사용했을 때 더 성능이 좋아진 것을 확인할 수 있습니다.

 

B. Lattice Boltzmann Methods

LBM은 각 노드에서 속도의 확률 분포를 연결된 노드 사이에서만 계산하기 때문에 지역적 연산이 주를 이루어 병렬화에 용이하다고 할 수 있습니다. 아래 그래프는 순차적으로 CPU에서 LBM을 실행을 때와 병렬적으로 GPU에서 실행했을 경우, 단위 시간동안 계산된 격자와 스텝 수를 통하여 성능을 측정하였습니다. 아래의 그래프와 같이 GPU 병렬 컴퓨팅을 적용한 후에 성능이 향상된 것을 알 수 있습니다.

NFLOW는 직렬 처리를 위해 적은 코어를 사용하는 CPU가 아닌 병렬 처리에 적합하게 많은 코어를 사용하는 GPU 기반 병렬 컴퓨팅을 통해 연산 속도의 혁신을 달성하였습니다. 그러나 GPU 병렬 컴퓨팅을 적용하였다고 하더라도 사용되는 자료구조와 알고리즘에 따라서 성능의 최적화가 필요합니다. 따라서 E8IGHT는 이에 멈추지 않고 연산 효율성을 높이기 위해 Multi-GPU 기술을 개발하여 NFLOW에 적용하였습니다. 

Multi-GPU

유체 시뮬레이션으로 수 천만 개에서 수 억 개에 이르는 입자 또는 노드의 움직임을 계산하기 위해서는 연산에 사용되는 코어를 시스템 상에 최대한 많이 확보할 필요가 있습니다. 이 문제를 NFLOW는 Multi-GPU를 통해 해결하였습니다. 어플리케이션에 Multi-GPU를 적용하기 위해서는 계산양에 따라서 GPU마다 균일하게 일을 분배하고 각 GPU에서 계산이 끝난 뒤 이를 동기화하는 과정이 필요합니다. NFLOW는 예측되는 계산양을 heuristic algorithm(휴리스틱 알고리즘)으로 계산한 뒤에 균일하게 자원을 할당하는 load balancing 기술이 적용되어 있습니다.

이에이트(주)  05551  서울시 송파구 올림픽로 300 롯데월드타워 28F
E8IGHT Co.,ltd  05551  28F LOTTE WORLD TOWER 300, Olympic-ro, Songpa-gu, Seoul, Republic of Korea
사업자등록번호 : 215-87-68656    I    사업자명 : 김진현
고객지원 + 82 2 6410 2800    I    개인정보보호책임자 : 정준희    I  개인정보처리방침

© 2021 by E8IGHT Co., Ltd. All rights reserved.