KOREAN SOCIETY FOR FLUID MACHINERY
[ Original Paper ]
The KSFM Journal of Fluid Machinery - Vol. 29, No. 2, pp.25-34
ISSN: 2287-9706 (Print)
Print publication date 01 Apr 2026
Received 20 Oct 2025 Revised 14 Nov 2025 Accepted 11 Jan 2026
DOI: https://doi.org/10.5293/kfma.2026.29.2.025

OpenFOAM을 이용한 x86과 Arm 프로세서 전산 유체 해석 성능 비교

이상은* ; 김석민* ; 강영석** ; 이동호**,
*과학기술연합대학원대학교 항공우주시스템공학
**한국항공우주연구원
A Performance Comparison of x86 and Arm on OpenFOAM for Computational Fluid Dynamics
Sangeun Lee* ; Seokmin Kim* ; Young Seok Kang** ; Dong-Ho Rhee**,
*Department of Aerospace System Engineering, University of Science and Technology
**Korea Aerospace Research Institute

Correspondence to: E-mail : rhee@kari.re.kr

Abstract

As the importance of High-Performance Computing is continuously grows, the Arm architecture emerges as a powerful alternative to the conventional x86 architecture, driven by its advantages in power efficiency and core scalability. In this study, the performance of two different CPU architectures, x86 and Arm, was empirically compared and validated to determine their competitiveness in practical CFD applications. The x86 processor has 16 cores, whereas the Arm processor has 128 cores. For the analysis, single workstation environments for both x86 and Arm architectures were configured, and the open-source Computational Fluid Dynamics software, OpenFOAM, was utilized to assess the performance of these two CPU architectures. Two fluid analysis cases, incompressible and compressible flow, were selected. To ensure a fair comparison, the numerical analyses were performed on both architectures using the same number of CPU cores. The incompressible flow was evaluated using 4 to 32 cores, and the compressible flow was tested from 16 to 32 cores. The performance of each architecture was compared and analyzed based on the actual computation time. In terms of computational time, reduced times were demonstrated by the Arm architecture compared to the x86 architecture. For the incompressible flow analysis, computation time of the Arm process was, on average, 14% lower on the coarse mesh and 24% lower on the fine mesh. A similar trend was observed in the compressible flow analysis, with average computational time reduction of 12% on the coarse mesh and 21% on the fine mesh. In conclusion, this study demonstrates that the Arm processor offers better core scalability, cost-effectiveness, and power efficiency over the x86 processor. Furthermore, a comparison of the computational fluid dynamics analysis time confirms that Arm processor performance is competitive enough to be an alternative to the x86 processor.

Keywords:

x86 Architecture, Arm architecture, Benchmark, OpenFOAM, CFD, Turbine Nozzle

키워드:

x86 아키텍처, Arm 아키텍처, 벤치마크, 오픈폼, 전산유체역학, 터빈 노즐

1. 서 론

최근 고성능 컴퓨팅(High Performance Computing, HPC) 시장은 전력 효율성과 코어 확장성을 핵심 경쟁력으로 하는 새로운 아키텍처의 등장으로 중요한 변화를 맞이하고 있다. 특히 Arm 아키텍처는 아마존 웹 서비스의 자체 개발 칩인 그래비톤(Graviton) 프로세서(1)와 일본 이화학 연구소 (RIKEN)의 슈퍼컴퓨터 후가쿠(Fugaku)(2)와 같은 성공 사례를 통해 고성능 컴퓨팅 적용 가능성이 입증되고 있다. 후가쿠는 Arm 기반 아키텍처를 활용하여 세계 슈퍼컴퓨터 성능 순위에서 상위권의 성능을 보여주며, 이를 통해 Arm 아키텍처가 더 이상 저전력의 모바일 기기에 국한되지 않고, 높은 수준의 계산 능력을 요구하는 고성능 컴퓨팅 분야에서도 충분한 경쟁력을 갖추고 있음을 보여주고 있다. 이러한 사례들을 비추어 현재 Arm 아키텍처는 기존의 통념을 깨고, 고성능 컴퓨팅 구성에 있어 새로운 선택지로 제시되고 있다.

이러한 Arm의 사례에도 불구하고, 현재의 HPC 시장의 대부분은 x86 아키텍처 기반 CPU를 중심으로 구성되어 있다. x86 아키텍처는 오랜 기간 축적된 소프트웨어 데이터, 높은 단일 코어 성능 및 사용자에게 익숙한 UI를 바탕으로 HPC 시스템의 표준으로 자리하고 있다. 이러한 강력한 소프트웨어 생태계와 높은 신뢰성은 x86 아키텍처가 여전히 HPC 시장에 지배적인 위치에 있는 핵심적인 이유이다.

이러한 흐름 속에서, x86 기반 시스템과 Arm 기반 시스템의 성능을 비교, 분석하기 위한 연구도 꾸준히 수행되었다. 대표적인 선행 연구로 Kumar등(3)의 연구에서는 원주율 계산, 행렬 곱셈과 같은 수학 연산 중심의 벤치마크 테스트를 수행하여 두 아키텍처의 계산 성능을 비교하였다. 이러한 연구는 프로세서 아키텍처의 연산 성능을 정량적으로 확인할 수 있지만, 실제 연구 개발 및 산업 현장에서 사용되는 엔지니어링 환경에서 충분히 반영하는 데에는 한계가 있다.

본 연구는 실제 과학 기술 환경에서 Arm 아키텍처와 x86 아키텍처 시스템을 구성하고 엔지니어링 해석 모델을 기반으로 직접적인 해석을 통해 성능 비교 분석하였다. 비교를 위해 대표적인 오픈 소스 전산유체역학(Computational Fluid Dynamics, CFD) 소프트웨어인 오픈폼 (Open-source Field Operation and Manipulation, OpenFOAM)을 사용하였으며, 비압축성 및 압축성 유동 해석을 각 시스템에서 계산하였다. 비교 과정으로는 유동 해석 결과를 통해 동일한 결과를 도출하는지 확인 후, 해석 시간을 통해 계산 성능을 비교하였으며, 코어 수 변화에 따른 계산 시간 변화를 측정하여 코어 확장성을 확인하였다. 본 연구는 CPU 벤치마크 테스트를 통해 고성능 컴퓨팅 환경을 설계 및 구축하고자 하는 엔지니어들에게 CPU 아키텍처 선택에 객관적인 근거와 가이드라인을 제공하고자 한다.


2. 전산 유체 해석을 위한 구성

2.1 하드웨어 및 운영체제

본 연구는 서로 다른 아키텍처 기반 CPU에서 동일한 CFD 해석을 수행하여 아키텍처에 대한 성능을 비교 평가하는 것을 목표로 하였다. 이를 위해 사용된 하드웨어 사양, 벤치마크 테스트 케이스 및 성능 측정 방법을 기술하였다. 성능 비교를 위해 x86과 Arm 아키텍처를 사용하는 CPU를 채택하여 각각 단일 워크스테이션으로 구성하였으며, 그 외 하드웨어의 사양은 동일하게 구성하였다. 벤치마크 테스트에 사용된 하드웨어 및 운영 체제는 Table 1에 나타내었으며, 사용한 CPU와 워크스테이션을 Fig. 1에 나타내었다.

Summary of the architectures and processor types utilized for the tests(4)

Fig. 1

CPU model of processor and Internal view of workstation

x86 시스템은 서버 및 워크스테이션용으로 설계된 Intel社의 Xeon Gold 6226R 모델을 채택하였다. 코어 수는 단일 CPU 기준 16코어를 탑재하고 있으며, 본 연구에서 사용되는 워크스테이션에 2개의 CPU를 장착하여 총 32코어로 구성하였다. 클럭 속도는 2.9GHz를 바탕으로 강력한 단일 스레드 성능을 제공하며, CPU당 열 설계 전력(Thermal Design Power, TDP)은 150W로, 코어당 약 9W의 전력이 소모된다. CPU 외에도 워크스테이션 구성에 메모리는 16GB DDR4-2,666Mbps 모듈 12개를 사용하여 총 192GB를 탑재하였다. x86 시스템은 Microsoft Windows 10 운영체제를 기반으로 하며, WSL(Windows Subsystem for Linux)과 Ubuntu를 활용하여 Windows 환경 내에 리눅스 기반의 가상 실행 환경을 구성하였다.

Arm 시스템은 Arm社의 서버용 레퍼런스 모델인 Neoverse-N1 모델을 사용하였다. 코어 수는 단일 CPU 기준 128개의 코어를 탑재하고 있으며, 본 연구에 사용되는 워크스테이션에 2개의 CPU를 장착하여 총 256코어의 계산 환경을 구성하였다. CPU의 클럭 속도는 3.0GHz이며, 열 설계 전력은 200W로 코어당 약 1.5W의 전력이 소모된다. 높은 코어 확장성을 통해 높은 멀티 스레드 성능을 보인다. CPU 외에도 워크스테이션에는 16GB DDR4-2,666Mbps 메모리 모듈 14개를 사용하여 총 224GB를 탑재하였다. 운영체제는 리눅스 기반으로 하며, 별도의 가상 환경 없이 직접 오픈폼 구동이 가능하다.

본 연구의 목적은 서로 다른 아키텍처를 가진 실제 시스템에서 CFD 해석이 수행될 때의 실질적인 해석 성능을 비교, 분석하는 데 있다. 이를 위해 동일한 격자계, 수치 기법, 물리 모델 및 동일한 CPU 코어 수 조건에서 해석을 수행하여, 각 아키텍처의 계산 성능, 메모리 접근 특성 및 병렬 통신 특성이 종합적으로 반영된 해석 시간을 비교하였다. 또한 본 연구에서 수행된 모든 해석은 양 시스템 모두에게 계산에 필요한 메모리 및 하드웨어의 구성이 충분히 확보된 조건에서 수행되었으며, 메모리 부족이나 스와핑(Swapping) 현상은 발생하지 않았다.

2.2 아키텍처

본 연구에서 비교하는 x86과 Arm 아키텍처는 고성능 컴퓨팅 워크로드 처리 방식에 대한 차이를 보여준다. x86 아키텍처는 복잡한 명령어를 하드웨어가 직접 처리하는 CISC(Complex Instruction Set Computer) 방식을 기반으로 한다. 이는 높은 클럭 속도와 결합하여 강력한 단일 코어 성능을 극대화하며, 512bit의 고정 벡터 폭으로 대규모 데이터들을 한 번에 계산하는 명령어를 통해 CFD 해석처럼 많은 계산을 빠른 작업 속도로 증가시킨다.

Arm 아키텍처는 고성능 아키텍처의 새로운 대안으로 부상하며, 단순하고 규격화된 명령어를 사용하는 RISC(Reduced Instruction Set Computer) 방식을 기반으로 한다. 하드웨어 명령어의 복잡성을 줄이며 전력 효율성을 높이고 더 많은 코어를 활용하여 병렬 처리 성능을 극대화하는 것이다. 또한, SVE(Scalable Vector Extension)는 하드웨어에 따라 벡터를 128bit부터 조절하여 고정 벡터 방식보다 다양한 계산 환경에서 효율적으로 대응할 수 있다(7).

2.3 오픈폼

본 연구에서 CFD 해석 소프트웨어로 사용된 오픈폼은 C++을 기반으로 비압축성 유동을 비롯한 압축성 유동, 열전달, 연소, 다상 유동, 구조해석 등의 전산 해석 기능을 지원하는 오픈 소스 소프트웨어(8)이다. 이 소프트웨어는 복잡한 유동 문제를 해석하기 위해 유한체적법을 핵심 원리로 사용한다. 격자계를 구성한 뒤, 격자 안에서 일어나는 유동 물리 현상을 계산하고, 계산 결과를 통해 전체 유동을 예측한다.

멀티코어 CPU의 성능을 최대한 활용하기 위해 오픈폼은 MPI(Message Passing Interface)를 사용한다. MPI는 하나의 대규모 계산 문제를 각 CPU 코어에 작은 과제로 할당하며, 각 코어는 할당된 영역의 계산만 독립적으로 수행하고, 경계면의 정보만 공유하며 전체 유동을 계산한다. 오픈폼은 상용 CFD 소프트웨어와 달리 무료 라이센스를 통해 초기 도입 비용 없이 누구나 자유롭게 사용할 수 있는 큰 장점을 가진다. 또한 전 세계에서 교육 및 산업으로 많이 사용되며, 사용자들로 구성된 오픈폼 워크샵 같은 활발한 커뮤니티를 가지고 있다.

리눅스 환경과 다르게 윈도우 사용자에게는 오픈폼을 실행하기 위해 가상의 리눅스 환경이 필요하며, 최근 윈도우 10 이후부터는 리눅스를 호환할 수 있는 리눅스용 윈도우 시스템을 제공하고 있다(9). Puget System(10)에서 수행한 고성능 계산 벤치마크 결과에 따르면, WSL 환경은 네이티브 리눅스와 비교하여 대부분의 계산 성능 지표에서 매우 근접한 결과를 보였다. HPL, HPCG, NAMD와 같은 대표적인 HPC 응용 프로그램을 활용한 실험에서 CPU 및 메모리 연산 성능 차이는 약 1∼5% 이내로 제한되어, 가상화 구조임에도 연산 효율이 거의 동일한 수준으로 나타났다. 이러한 결과는 WSL2가 리눅스 커널을 직접 구동하는 구조를 채택함으로써 연산 자원 접근 및 시스템 처리 효율을 네이티브 수준으로 유지하고 있음을 의미한다. 이를 통해, 오픈폼과 같이 계산 중심의 CFD 해석을 수행할 경우, WSL 환경에서도 네이티브 리눅스와 유사한 계산 시간 및 수렴 특성을 기대할 수 있다.

2.4 수치해석 케이스

본 연구는 특정 아키텍처의 성능 특성을 분석하기 위해 물리적 특성이 상이한 비압축성 유동(Incompressible flow)과 압축성 유동(Compressible flow)을 해석 대상으로 선정하였다. 각 유동 현상은 서로 다른 지배방정식(Governing Equation)과 수치해석 솔버를 요구하며, 이는 계산 부하와 해석 시간에 직접적인 영향을 미친다.

비압축성 유동은 물이나 저속 유동(Mach<0.3)에 해당하는 유동이며, 밀도의 변화가 거의 없어 일정한 값으로 가정하는 유동이다. 해석에 사용되는 방정식은 연속 방정식(Continuity Equation)과 나비에-스토크스 방정식(Navier-Stokes Equation)이다. 비압축성 유동 해석에 사용되는 지배 방정식인 연속 방정식과 나비에-스토크스 방정식은 수식 (1)(2)에 나타내었다.

u=0(1) 
ut+(uu)-(νu)=-1ρp(2) 

여기서 u는 속도 벡터, t는 시간, p는 압력, v는 동점성 계수를 의미한다. 열에너지 변화는 미미하여 에너지 방정식(Energy Equation)은 계산에서 제외된다. 이러한 유동 해석을 위해 오픈폼에서 사용되는 솔버로는 대표적으로 simpleFoam, icoFoam 등이 있다.

압축성 유동은 유체의 속도가 음속에 가까워지거나 초과할 때 발생하는 밀도의 변화를 고려하는 유동이다. 밀도 변화는 압력, 온도 등 다른 변수들과 강한 연성을 가지며, 연속 방정식과 나비에-스토크스 방정식과 함께 에너지 방정식을 추가하여 계산한다. 압축성 유동 해석에 계산되는 지배방정식은 수식 (3), (4)(5)에 나타내었다.

ρt+(ρu)=0(3) 
(ρu)t+(ρuu)-τ=-p(4) 
(ρh)t+(ρhu)+(ρK)t+(ρuK)=(αeffh)(5) 

여기서 에너지 방정식의 변수로 E는 내부 에너지, h는 엔탈피, K는 비운동 에너지, αeff는 유효 열확산 계수를 의미한다. 결과적으로 비압축성 유동 해석보다 계산되어야 하는 방정식이 증가하고 계산 복잡도가 요구되어, 해석 시간이 증가한다. 오픈폼에서 압축성 유동 해석에 사용되는 솔버로 rhoPimpleFoam, sonicFoam 등이 사용된다.

2.4.1 비압축성 유동 해석

비압축성 유동 해석에 사용된 형상은 Fig. 2에 나타냈으며, 오픈폼 튜토리얼의 교육 및 검증 목적으로 활용되는 ‘모터바이크’ 형상을 사용하였다. 해석 조건은 CFDsupport(11)에서 제공하는 비압축성 유동 해석 조건을 기반으로 설정하였다. 해당 형상은 복잡한 형상 주위의 난류 유동을 모사함으로써 실제 개발 환경에서 수행되는 해석과 유사한 계산 부하를 가진다.

Fig. 2

Geometry of motorbike(11)

격자계는 CFDsupport(11)와 동일한 격자계를 생성하였으며, 오픈폼 소프트웨어 내부에서 지원하는 격자 생성 라이브러리인 SnappyHexMesh를 기반으로 구성되었다. 또한, 격자 수에 따른 계산 시간 변화를 확인하기 위해 두 가지 격자인 성긴 격자와 조밀한 격자로 구성하였다. 성긴 격자는 약 1.76×106 셀, 조밀한 격자는 약 1.76×107 셀로 구성되었으며, 각 격자의 형상은 Fig. 3에 나타내었다.

Fig. 3

CFD meshes for incompressible flow computational domain

해석에는 오픈폼에서 제공하는 비압축성 유동 솔버인 simpleFoam을 사용하였다. 이 솔버는 SIMPLE 알고리즘을 적용하며, 정상상태(Steady-state) 조건에서 유동장을 계산한다. 또한 RANS(Reynolds Averaged Navier–Stokes) 해석을 기반으로 하며, 난류 모델은 kω SST(kω Shear Stress Transport) 모델을 적용하였다. 수치 기법으로는 대류항에 대해 2nd order Upwind를 적용하여 수치 확산을 최소화하고 정확도를 확보하였다. 난류항에 대해서는 1st order Upwind를 사용하여 계산 안정성을 우선으로 하였다. 비압축성 해석에 적용된 솔버 및 수치 기법과 압축성 해석에 적용된 솔버 및 수치 기법을 Table 2에 나타내었다.

Numerical schemes of OpenFOAM

경계 조건은 오픈폼에서 제공하는 튜토리얼 조건을 기반으로 적용하였다. 이는 검증된 조건을 활용함으로써 수치 해석의 신뢰성과 안정성을 보장하였다. 세부적인 경계 조건은 Table 3에 나타내었다.

Inlet boundary conditions for incompressible flow computations

2.4.2 압축성 유동 해석

압축성 유동 해석의 경우, 해석에 사용된 형상은 한국항공우주연구원에서 개발한 터보팬 엔진 터빈 노즐 베인을 기반으로 하는 무냉각 터빈 노즐 베인 형상을 활용하였으며, Kang 등(12)의 연구에서 사용된 해석 영역과 동일한 영역을 구성하여 해석을 수행하였다. 터보 팬 엔진 터빈 노즐의 형상은 Fig. 4에 나타내었다.

Fig. 4

Geometry of turbine nozzle vane(12)

격자계는 Ansys Mesh를 통해 생성했으며, 오픈폼 내의 격자 변환 라이브러리를 이용하여 변환 후 사용하였다. 압축성 유동 해석에서도 격자 수에 따른 특성을 비교하고자 두 가지 격자계를 사용하였으며, 해당 격자계는 Kang 등(12)의 연구에서 설계된 성긴 격자계와 조밀한 격자계를 그대로 활용하였다. 터빈 노즐의 격자계는 약 3.81×106 셀의 성긴 격자계와 약 1.17×107 셀의 조밀한 격자계로 구성되었으며, 생성된 격자계는 Fig. 5에 나타내었다.

Fig. 5

CFD meshes for compressible flow computational domain

압축성 유동 해석에 사용된 솔버는 오픈폼의 압축성 유동 해석 솔버인 rhoPimpleFoam을 사용하였으며, 본 연구에서는 해석의 안정성과 정상 상태의 해를 얻기 위해 LTS(Local Time Stepping) 기법을 적용하였다. PIMPLE 알고리즘(PISO와 SIMPLE 알고리즘의 결합)을 이용하여 해석을 수행하였으며, 수치 기법은 비압축성 유동 해석 솔버와 함께 Table 2에 나타내었다.

본 연구의 압축성 유동해석에서는 Kang 등(12)의 연구에서 사용된 경계 조건을 동일하게 적용하였다. 입구 조건에는 전압력과 전온도를 부여하였으며 출구 조건에는 정압을 부여하였다. 세부적인 경계조건은 Table 4에 나타내었다.

boundary conditions for compressible flow computations

2.5 성능 측정 방법

각 아키텍처의 성능은 오픈폼 해석 결과를 통해 각 아키텍처가 비교 가능한 결과인지 확인 후, 해석을 완료하는데 소요되는 해석 시간을 비교한다. 해석 시간을 바탕으로 코어 수 증가에 따른 해석 시간 감소 경향성도 확인하여 아키텍처의 성능 향상도와 병렬 효율을 확인하여 각 아키텍처의 성능 및 코어 확장성을 평가한다.


3. 수치해석 비교 분석

3.1 비압축성 유동 해석

비압축성 유동 해석의 수렴 여부는 반복 계산 과정에서 항력계수의 변화를 모니터링하며 확인하였다. 항력계수의 수식은 식 (6)에 나타내었다.

CD=2DρU2A(6) 

항력계수의 정의에 사용되는 변수는 다음과 같다. 본 수식에서 바이크의 전면부에서 받는 항력을 의미하며, ρ와 U는 각각 해석 도메인 입구에서의 밀도와 속도를, A는 바이크의 전면 투영 면적을 의미한다. Fig. 6에 나타난 바와 같이, 약 60회부터 500회까지 항력계수 값의 변화가 안정되어 수치상으로 안정적인 결과가 확보됨을 확인하였다. 수렴성이 확보된 해석 결과를 바탕으로, 두 아키텍처가 동일한 결과를 도출하는지 확인하기 위해 속도 등고선과 항력계수 값을 비교하였다.

Fig. 6

Convergence of drag coefficients

해석 결과인 속도 등고선과 항력계수 결과는 Fig. 7(a), (b)Fig. 8에 나타내었다. 속도 등고선의 경향성을 확인한 결과, 두 모터바이크 형상의 상단 부와 전면부에서 관찰되는 유동 구조가 아키텍처와 관계없이 유사하게 나타났다. 또한, 수치적 지표로 500회 기준 항력계수 비교에서도, 성긴 격자에서는 x86 아키텍처와 Arm 아키텍처 간 항력계수 차이가 0.3%, 조밀한 격자에서는 아키텍처 간 항력계수 차이가 0.5%로 나타났다. 이를 통해 두 아키텍처의 해석에서 물리 결과는 유사한 결과를 도출한다고 판단되며, 결과를 통해 비압축성 유동에 대한 해석 시간 비교가 타당함이 확인되었다.

Fig. 7

Comparisons of velocity contours in the upper wake region behind the motorbike

Fig. 8

Comparison of overall average drag coefficients

비압축성 유동 해석의 코어 수당 해석 시간 비교 결과는 Fig. 9에 나타내었다. 해석 시간은 성긴 격자 조건에서 4코어 해석에서 x86이 더 빠른 계산 시간을 기록하였으며, 8코어까지는 큰 차이가 없었으나 16코어부터 Arm이 성능 우위를 보여주었다. 16코어에서는 약 16%, 30코어에서는 30%의 차이를 보여주며, 코어 수가 증가할수록 Arm 시스템이 빠른 해석 시간을 보여주었다. 조밀한 격자 조건은 Arm의 성능 우위가 뚜렷하게 보였다. 테스트가 진행된 모든 코어 수에서 Arm의 계산이 x86 대비 빠른 계산 시간을 보였으며, 16코어에서는 약 29%, 30코어에서는 약 36%의 차이를 보였다.

Fig. 9

Comparisons of clocktime for incompressible flow computation

종합적으로 Arm 시스템이 성긴 격자 조건에서 평균 약 11%, 조밀한 격자 조건에서는 평균 약 24%의 계산 시간 감소를 확인하였다. 이는 격자 수가 많고 계산량이 증가하는 실제 사용자의 CFD 해석 환경에서 Arm이 높은 효율성을 제공할 수 있음을 의미한다.

3.2 압축성 유동 해석

압축성 유동 해석의 수렴성 검증은 5,000회의 반복 계산 과정에서 질량 유량(Mass Flow Rate)의 변화를 확인하였다. Fig. 10에 제시된 결과와 같이, 질량 유량 값이 안정화됨에 따라 해석의 수렴성이 확보되었으며, 이를 통해 본 연구에서 수행한 압축성 유동 해석이 수치적으로 안정적인 결과를 제공함을 확인하였다.

Fig. 10

Convergence of mass flow rates

수렴성이 확보된 해석 결과를 기반으로, 압축성 유동 해석하여 비교한 결과를 Fig. 1112에는 Mid-span에서의 마하 수 등고선을 나타내었으며, Fig. 13에는 베인 표면 Mid-span에서의 등엔트로피 마하수를 나타내었다. 해석 결과 비교에 사용된 등엔트로피 마하 수 수식은 식 (7)에 나타내었다.

MaIsentropic =[(PtPs)Υ-1Υ-1]2Υ-1(7) 
Fig. 11

Mach number contour plot by Ansys CFX(12)

Fig. 12

Mid-span mach number contour plots

Fig. 13

Distributions of mid-span isentropic mach number for compressible flow computation

본 수식에서 사용된 변수는 다음과 같다. Pt와 Ps는 전압력과 정압력을 의미하며, γ는 비열비를 의미한다. Mid-span에서의 마하 수 등고선에서 충격파의 위치와 후방에서의 유동장이 두 아키텍처 해석에 유사하게 나타나며, 등엔트로피 마하 수의 정량적 값을 통해 두 아키텍처의 해석 결과가 유사함을 확인했다. 결과 비교에 활용된 등엔트로피 마하 수 수식은 다음과 같다. 이는 압축성 유동 해석 또한 Arm 시스템과 x86 시스템이 동등한 결과를 도출하는 것을 의미한다.

이 같은 결과를 바탕으로 해석 시간 비교를 하였으며, 해석 시간의 감소 경향성을 Fig. 14(a), (b)에 나타내었다. 먼저, 성긴 격자 해석 결과에서는 모든 코어 수에서 계산 시간 감소가 나타났다. 특히 16코어 조건에서 약 6%의 감소가 확인되었으며, 코어 수가 30으로 증가했을 때는 약 16%의 시간 단축이 관찰되었다. 이러한 결과는 상대적으로 적은 격자 수 조건에서도 Arm 아키텍처의 성능 우위를 보여준다.

Fig. 14

Comparisons of clocktime for compressible flow computation

한편, 조밀한 격자 해석 결과에서는 더욱 뚜렷한 성능 차이가 나타났다. 모든 코어 조건에서 Arm 기반 해석이 x86 대비 짧은 계산 시간을 기록하였으며, 특히 16코어에서 약 16%, 30코어에서 약 23%의 계산 시간 감소가 확인되었다. 이는 격자 수가 증가함에 따라 계산 부하가 커지는 조건에서 Arm 아키텍처가 x86 아키텍처 대비 시간 단축 효과를 제공함을 보여준다.

종합적으로, Arm 아키텍처 기반 프로세서는 모든 코어 조건에서 x86 아키텍처 대비 계산 시간이 감소하는 경향을 보였다. 터빈 노즐을 이용한 압축성 유동 해석에서 Arm 시스템은 성긴 격자 조건에서 평균 약 12%, 조밀한 격자 조건에서 평균 약 21%의 계산 시간이 단축되었다. 이는 많은 계산량과 높은 부하를 요구하는 압축성 유동 해석에서도 Arm이 x86 대비 높은 효율성을 제공할 수 있다는 것을 의미한다.

3.3 Arm 코어 확장에 따른 해석 성능 분석

본 연구에 활용된 256코어 Arm 워크스테이션의 병렬 처리 성능을 분석하기 위해, 기존 32코어 범위를 넘어서는 추가적인 계산을 수행하였다. 분석은 계산 부하가 큰 조밀한 격자 조건을 기준으로 진행하였다. 코어 확장에 따른 계산 결과는 Fig. 15에 나타내었다.

Fig. 15

Distributions of computation time over different core counts

비압축성 유동은 64, 96, 120코어까지 확장하여 계산을 수행하였으며, 30코어 이상에서 계산 시간이 점차 수렴하는 경향을 확인하였다. 압축성 유동 해석은 60, 64, 90, 96, 120코어로 확장하여 계산을 수행하였다.

추가적인 해석의 결과를 통해 Arm 워크스테이션에서 비압축성 및 압축성 유동 해석의 병렬 처리 성능을 확인하였다. 비압축성 유동은 32코어까지 계산 시간이 감소되는 경향을 보였으나, 이후 추가적인 코어 수 계산에서 수렴하는 경향을 확인할 수 있었다. 압축성 유동 해석의 경우 60코어까지 계산 시간이 감소하는 경향을 보였으나, 이후 계산에서 60코어 해석 시간에 수렴하는 경향을 보였다. 계산 시간 결과를 통해 최적의 코어 수를 넘게 되면 병렬 효율에 대한 성능 개선이 관찰되지 않았다.

이러한 대규모 코어 환경에서 발생하는 병렬 효율(parallel efficiency)의 수렴 특성은 코어 간 통신 오버헤드로 설명된다. 코어 수가 증가하면 각 코어가 담당하는 계산량은 감소하지만, MPI 통신 및 방정식 풀이에 소요되는 비용은 상대적으로 감소되지 않으며, 각 코어에 분할된 작업 조율 및 데이터 교환에 필요한 통신 시간 비중은 오히려 늘어난다. 최적의 코어 수를 넘으면, 계산 시간 단축보다 통신으로 인한 OPENFOAM을 이용한 X86과 ARM 프로세서 전산 유체 해석 성능 비교 시간 손실이 커지며, 전체적인 성능에 영향을 미친다. 또한, 부동소수점 연산 및 MPI reduction 순서가 코어 수에 따라 달라질 수 있으며, 수렴 속도에 차이가 발생할 수 있다.


4. 결 론

본 연구에서는 오픈폼을 활용하여 x86과 Arm 아키텍처 기반 프로세서의 CFD 계산 성능을 비교 분석하였다. 해석 대상은 비압축성 유동과 압축성 유동으로 설정하였으며, 각 유동을 두 가지의 격자계로 나눠 구성하였다. 구성된 각 유동의 격자계를 서로 다른 아키텍처 프로세서에서 같은 코어 수를 적용하여 계산 시간을 비교하였다.

계산 시간 비교 분석 결과, 비압축성과 압축성 유동 해석에서 ARM 아키텍처가 x86 아키텍처 대비 동일 코어 수 기준 평균 약 20%와 16%의 계산 시간 단축을 보이며 우수한 성능을 나타냈다. 하지만, Arm의 코어 확장성에 따른 계산 시간 경향성을 확인하였을 때 한계가 관찰되었다. 비압축성 유동 해석에서 32코어 이상 해석의 계산 시간이 수렴하는 경향을 보였으며, 압축성 유동 해석에서는 60코어 이상 해석에서 계산 시간이 수렴하는 경향이 확인되었다. 결과를 바탕으로, 본 연구에서 진행한 해석은 Arm 시스템에서 실행 시 x86보다 우수한 수준의 성능을 보였으며, 해석에 활용된 Arm 아키텍처 CPU로 시스템을 구성할 때, 동일 코어 수를 기준으로 x86 아키텍처 CPU 대비 약 1/5의 비용으로 시스템을 구축할 수 있다. 이를 통해 Arm 아키텍처가 CFD 해석에서 높은 비용 효율성과 코어 확장성을 확인할 수 있었다.

종합하면, 본 연구를 통해 Arm 아키텍처는 다중 코어 환경에서 높은 코어 효율성과 상당한 경제적 이점을 제공할 수 있는 경쟁력이 확인되었다. 향후 보다 넓은 범위에서의 활용 가능성 검토를 위하여 연소장, 복합열전달, 구조해석 등 다양한 환경에서의 활용성 평가를 위한 추가적인 연구가 필요할 것으로 판단된다.

Acknowledgments

본 연구는 방위사업청의 재원으로 국방기술진흥연구소의 지원을 받아 ‘가스발생기 고온부 설계/해석 품질 적합성 검증과제(KRIT-CT-22-042)’의 일환으로 수행되었으며, 이에 감사드립니다.

References

  • Bhumik. P., 2024, “Accelerating Cloud Innovation with AWS Graviton4 Processors, Powered by Arm Neoverse”, Arm Newsroom, Server Ecosystem Development, Arm.
  • Okazaki. R., Tabata. T., Sakashita. S., Kitamura. K., Takagi. N., Sakata. H., Sakata. T., Ishibashi. T., Nakamura. T., Ajima. Y., 2020, “A High-Performance and Energy-Efficient Processor for the Fugaku Supercomputer”, The International Conference for High Performance Computing, Networking, Storage and Analysis, IEEE. [https://doi.org/10.1109/SC41405.2020.00008]
  • Kumar, D., Muhammad A. R., Kumar, P., Ahmed, S., Saqib B. M. and Tsetse, A., 2023, “Performance Evaluation of ARM-based versus x86-based Processors in High Performance Computing Cluster”, Journal of Independent Studies and Research Computing (JISR-C), ISSN (P) 2412-0448, ISSN (E) 1998-4154.
  • Galeazzo, F. C. C., Garcia-Gasulla, M., Boella, E., Pocurull, J., Lesnik, S., Rusche, H., Bna, S., Cerminara, M., Brogi, F., and Marchetti, F., 2024, “Performance Comparison of CFD Microbenchmarks on Diverse HPC Architectures,” Computers 2024, 13, 115. [https://doi.org/10.3390/computers13050115]
  • https://www.servethehome.com/intel-xeon-gold-6226r-benchmarks-and-review/, .
  • https://www.nextplatform.com/2019/02/20/arm-goes-to-war-in-the-datacenter-with-aries-designs/, .
  • Khushi Gupta, Tushar Sharma, “Changing Trends in Computer Architecture : A Comprehensive Analysis of ARM and x86 Processors,” International Journal of Scientific Research in Computer Science, Engineering and Information Technology (IJSRCSEIT), ISSN : 2456-3307, Vo. 7, Issue. 3, pp. 619-631. [https://doi.org/10.32628/CSEIT2173188]
  • Kim, S. M., Kang, S-H., Rhee, D-H., and Kang, Y. S., 2022, “A Study on the Film Cooling Characteristics Downstream of Fan-Shaped Cooling Hole on a Flat Plate using OpenFOAM,” The KSFM Journal of Fluid Machinery, Vol. 25, No. 1, pp. 5-15. [https://doi.org/10.5293/kfma.2022.25.1.005]
  • Barnes. H., 2021, “Pro Windows Subsystem for Linux (WSL),” Apress, pp 1-321. [https://doi.org/10.1007/978-1-4842-6873-5_1]
  • Donald, K., 2022, “WSL2 vs Linux (HPL HPCG NAMD),” Puget Systems Labs.
  • http://www.cfdsupport.com/, .
  • Kang, S.-H., Chung, H., Kang, Y. S., Jun, S. and Yoon, T. H., 2021, “Compressible flow analysis of turbine-nozzle using open source CFD code,” The KSFM Journal of Fluid Machinery, Vol. 24, No. 1, pp. 19-26. [https://doi.org/10.5293/kfma.2021.24.1.019]

Fig. 1

Fig. 1
CPU model of processor and Internal view of workstation

Fig. 2

Fig. 2
Geometry of motorbike(11)

Fig. 3

Fig. 3
CFD meshes for incompressible flow computational domain

Fig. 4

Fig. 4
Geometry of turbine nozzle vane(12)

Fig. 5

Fig. 5
CFD meshes for compressible flow computational domain

Fig. 6

Fig. 6
Convergence of drag coefficients

Fig. 7

Fig. 7
Comparisons of velocity contours in the upper wake region behind the motorbike

Fig. 8

Fig. 8
Comparison of overall average drag coefficients

Fig. 9

Fig. 9
Comparisons of clocktime for incompressible flow computation

Fig. 10

Fig. 10
Convergence of mass flow rates

Fig. 11

Fig. 11
Mach number contour plot by Ansys CFX(12)

Fig. 12

Fig. 12
Mid-span mach number contour plots

Fig. 13

Fig. 13
Distributions of mid-span isentropic mach number for compressible flow computation

Fig. 14

Fig. 14
Comparisons of clocktime for compressible flow computation

Fig. 15

Fig. 15
Distributions of computation time over different core counts

Table 1

Summary of the architectures and processor types utilized for the tests(4)

Architecture x86 (x86_64) Arm (aarch64)
CPU model Intel
Xeon Gold 6226R
Arm Neoverse-N1
CPU Clock Speed [GHz] 2.9 3.0
Core (per CPU) 32 (16) 256 (128)
RAM Memory [GB] 192 224
OS Windows 10 Centos Linux 8
Price (per core) [USD] 2,016 (118.75) 3,220 (23.43)
TDP (per core) [W] 150 (9) 200 (1.5)

Table 2

Numerical schemes of OpenFOAM

Flow Incompressible Compressible
Solver simpleFoam rhoPimpleFoam
Temporal scheme steady state steady state with LTS
Convective scheme 2nd order Upwind
Turbulence model kω SST
Turbulence scheme 1st order Upwind

Table 3

Inlet boundary conditions for incompressible flow computations

  Incompressible flow
Inlet U [m/s] 20
Inlet k [m2/s2] 0.24
Inlet nut [m2/s] 0.13
Inlet omega [1/s] 1.78

Table 4

boundary conditions for compressible flow computations

  Compressible flow
Inlet Tt [K] 1,673
Inlet Pt [bar] 30.69
Outlet Ps [bar] 15.65
Inlet k [m2/s2] 0.01
Inlet omega [1/s] 10