핵심 개념
OpenMC 몬테카를로 입자 수송 애플리케이션은 OpenMP 타겟 오프로딩 모델을 사용하여 Intel, NVIDIA, AMD GPU에서 우수한 성능 포터빌리티를 달성했다.
초록
이 논문은 OpenMC 몬테카를로 입자 수송 애플리케이션의 GPU 성능 포터빌리티를 분석한다. 주요 내용은 다음과 같다:
-
OpenMC의 GPU 최적화 및 구성:
- 이벤트 기반 병렬 처리, 정렬, 누적 등의 최적화 기법을 적용했다.
- Intel GPU에 대한 최적화 경험을 추가로 제시했다.
-
CPU 기반 OpenMC와 다른 몬테카를로 코드의 성능 비교:
- OpenMC의 CPU 성능이 다른 최신 몬테카를로 코드와 유사한 수준임을 확인했다.
-
슈퍼컴퓨터 환경에서의 OpenMC 성능 분석:
- Frontier, Aurora, Polaris 슈퍼컴퓨터에서 OpenMC의 우수한 확장성을 보여주었다.
- 최대 1억 개/초의 입자 추적 속도를 달성했다.
-
역사적 성능 분석:
- CPU 대비 GPU의 성능 격차가 지속적으로 벌어지고 있음을 확인했다.
이 연구는 OpenMC가 OpenMP 타겟 오프로딩 모델을 통해 Intel, NVIDIA, AMD GPU에서 모두 우수한 성능 포터빌리티를 달성했음을 보여준다. 또한 OpenMC가 슈퍼컴퓨터 환경에서 매우 효율적으로 확장될 수 있음을 입증했다.
통계
단일 노드 성능 비교 결과:
2x Skylake 8180 (56코어/112스레드): 49,000개/초
2x Rome 7742 (128코어/256스레드): 87,000개/초
2x Sapphire Rapids 8468 (96코어/192스레드): 117,000개/초
Polaris 노드 (4x A100): 729,000개/초
Frontier 노드 (4x MI250X): 646,000개/초
Aurora 노드 (6x PVC): 2,030,000개/초
인용구
"OpenMC's GPU performance is many times faster than its CPU performance on current systems."
"OpenMC was able to exceed the goal of a 50× speedup over Titan using only 325 nodes of Aurora or 1024 nodes of Frontier."
"OpenMC is the first MC application that we are aware of to achieve 1 billion particles per second on this class of problem."