これはCfCA流体学校2025の資料である。

GPUはCPUに対して高い電力性能比(performance per watt)を持ち、HPC(High Performance Computing)の分野では特に採用が進んでいる。近年のスーパーコンピュータの多くはアクセラレータとしてGPUを搭載しており、大規模数値シミュレーションにおいて重要な役割を果たしている。

ここでは流体コードをOpenACCを用いてGPU移植する方法を解説する。ただし、実習時間内でコードを完全に移植することまでは目的としない。流体学校のアカウントは学校終了後も1週間程度は利用できるので、興味のある人はここで学んだ内容をもとに開発を進め、コードを完成させてジョブを投入してほしい。

講義

GPU加速化に向けてまずは並列計算の基礎から講義する。

Lecture on GPU porting

実習

次に実際のコードを使ってどのようにコードをGPUを移植するのかをみる。

Hands-on Training Fortran + OpenACC

参考資料