AI 가속화된 CFD 시뮬레이션의 IPU 플랫폼 적응
요약
본 논문은 AI 접근법을 활용하여 전통적인 CFD 시뮬레이션을 가속화하는 방법을 다루며, 특히 IPU-POD16 플랫폼에 최적화된 솔루션을 제시합니다. 연구진은 Poplar SDK와 커스텀 TensorFlow를 사용하여 CFD 응용 프로그램을 훈련시키고, 'popdist' 라이브러리를 통해 데이터 공급 병목 현상을 해결하여 최대 34%의 속도 향상을 달성했습니다. 또한, IPU 간 통신을 활용한 데이터 병렬성을 통해 처리량을 크게 개선할 수 있음을 입증했습니다.
핵심 포인트
- AI를 이용한 시뮬레이션(AI for simulation) 분야가 주목받고 있으며, CFD 응용 프로그램에 기계 학습 모델 적용이 핵심입니다.
- Poplar SDK와 커스텀 TensorFlow를 사용하여 IPU-POD16 플랫폼에 CFD 프로그램을 성공적으로 적응시켰습니다.
- 'popdist' 라이브러리를 활용하여 호스트 측 데이터 공급 병목 현상을 극복하고 최대 34%의 속도 향상을 달성했습니다.
- IPU 간 통신을 통한 데이터 병렬성은 처리량(throughput) 개선에 효과적이며, IPU 개수 증가에 따라 높은 확장성을 보여줍니다.
지능 처리 장치 (Intelligence Processing Units, IPU) 는 많은 AI 응용 프로그램에 유용하게 입증되었습니다. 이 논문에서는 전통적인 수치 시뮬레이션을 인공지능 접근법이 지원하는 등장하는 “AI for simulation” 분야에서 이를 평가합니다. 우리는 기계 학습 모델을 지원하기 위한 ‘컴퓨터 유체 역학 (computational fluid dynamics, CFD)’ 응용 프로그램을 훈련시키는 프로그램에 특히 집중합니다. Poplar SDK 에서 제공하는 커스텀 TensorFlow 를 사용하여 IPU-POD16 플랫폼을 위해 해당 프로그램을 적응시키며, 사용의 용이성과 성능 확장성을 조사합니다. OpenFOAM 시뮬레이션 데이터로 모델을 훈련시킴으로써 테스트 시간 (test time) 에 정확한 시뮬레이션 상태 예측을 얻을 수 있습니다. 우리는 호스트 측에서 훈련 데이터를 IPU 로 공급할 때 발생하는 성능 병목 현상을 극복하기 위해 ‘popdist’ 라이브러리를 활용하는 방법을 보여줍니다. 이를 통해 최대 34% 의 속도 향상 (speedup) 을 달성합니다. 통신 오버헤드 (communication overheads) 에 의해 두 개의 IPU 를 하나보다 사용하여 데이터 병렬성 (data parallelism) 을 활용하면 통량 (throughput) 이 개선되지 않습니다. 그러나 intra-IPU 비용이 지불된 후, inter-IPU 통신을 위한 하드웨어 능력은 좋은 확장성을 허용합니다. 2 개에서 16 개의 IPU 로 수를 증가시킴으로써 통량을 560.8 에서 2805.8 samples/s 로 향상시킵니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기