現代の科学技術を支える重要技術である、並列計算・高性能計算の基礎についての講義・実習を行います。
化学分野における分子シミュレーション、生物分野における蛋白質解析、ものづくり分野における構造解析、応用数学分野における数理最適化問題など、スーパーコンピュータ等による大量の計算量・データ量を必要とする計算技術への要求が高まっています。
本講義では、MPIやOpenMPなど高性能・並列計算のための標準的なプログラミング環境に加え、近年注目を集めているGPU・アクセラレータのためのプログラミング環境についても解説を行います。座学だけでなく、実際に東工大のペタスケールスパコンであるTSUBAME2を用いた実習を行います。
並列計算・高性能計算に関する講義+実習により、MPI・OpenMP・CUDAなどのプログラミング環境を使えるようになることを目的とします。
1. スパコン・並列計算とは
2. TSUBAME2の概要と利用方法・並列プログラミングモデル
3. OpenMPによる共有メモリ並列プログラミング(1)
4. OpenMPによる共有メモリ並列プログラミング(2)
5. MPIによる分散メモリ並列プログラミング(1)
6. MPIによる分散メモリ並列プログラミング(2)
7. MPIによる分散メモリ並列プログラミング(3)
8. GPUプログラミング (1)
9. GPUプログラミング (2)
10. GPUプログラミング (3)
11. 先進的並列プログラミング環境 (1)
12. 先進的並列プログラミング環境 (2)
13. 大規模並列応用プログラムの実例
テキストは使いません。参考文献は講義中に紹介します。
初歩的なC言語の知識・初歩的なLinuxコマンドの知識を前提とします。
ノートパソコンの持参を強くお勧めします。
講義中に提示するレポートおよび出席点によります。
情報理工学を専門とする方だけでなく、物理・化学・生物など、各専門分野の研究のためにHPC技術を学びたい方も歓迎します。