#contents *分散メモリ並列計算 [#g16f1149] 最近のスーパーコンピュータは、それぞれメモリを備えた計算ノードが多数並列に動作する、分散メモリの並列計算機が主流です。このような計算機を有効利用するには、プログラムの並列化が必要です。分散メモリ型並列計算機に対応するための並列化手法をまとめています。 **MPI: Message Passing Interface [#m1a80246] -[[The Message Passing Interface (MPI) standard:http://www.mcs.anl.gov/research/projects/mpi/]] ***MPIの参考資料 [#i2480835] Web上の資料 -[[CCS HPCサマーセミナー2021:https://www2.ccs.tsukuba.ac.jp/workshop/HPCseminar/2021/]]~ 筑波大学計算科学センターが毎夏開催しているセミナーの資料。 並列処理に関する基礎から、MPI、OpenMP、並列アルゴリズム、最適化まで学習できます。 -[[配信講義 計算科学技術特論A (2021):https://www.r-ccs.riken.jp/outreach/schools/tokurona-2021/]]~ 第2回に東京大の片桐孝洋氏が「MPIの基礎」を講義されたスライドが掲載されています。その他にも参考になる資料があります。 -[[HPCI講習会資料公開ページ:https://www.hpci-office.jp/pages/seminar_texts]]~ 青山幸也氏による「並列プログラミング虎の巻MPI版」にMPIが詳しく解説されています。 教科書 - P.パチェコ、MPI並列プログラミング (培風館, 2001)~ MPIの基本的な使い方をMPI-1.1に基づいて解説しています。 - ウイリアム・グロップ/ユーイング・ラスク/ラジーブ・タークル、実践MPI-2 (ピアソン・エデュケーション, 2002)~ MPIの上級者向け機能の解説。 - 下司雅章編「計算科学のためのHPC技術1」(大阪大学出版会, 2017年) ~ 上の配信講義計算科学技術特論の過去の講義を基にした教科書です。 ***MPI使用の際の注意 [#j04163e1] MPIとOpenMPを同時に用いる場合には注意が必要です。以下の資料を参照して下さい。 -[[OpenMPをこれから手動で導入したい (JICFuSレポート):http://www.jicfus.jp/field5/jp/promotion/user/houkoku/#2012-12]] OpenMPI でハイブリッド並列コードを実行する場合にはプロセスとコアのバインドに注意が必要です。 -[[OpenMPI でハイブリッド並列コードを実行する場合の注意 (Bridge++ wiki):https://www.bridge-hpc.org/dokuwiki/doku.php?id=%E5%90%84%E7%92%B0%E5%A2%83%E3%81%A7%E3%81%AE%E6%B3%A8%E6%84%8F#open_mpi_%E3%81%A7%E3%83%8F%E3%82%A4%E3%83%96%E3%83%AA%E3%83%83%E3%83%89%E4%B8%A6%E5%88%97%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%AE%E6%B3%A8%E6%84%8F]] **[[XcalableMP (XMP):http://www.xcalablemp.org/]] [#rc171d25] 分散メモリ並列化を行うためのディレクティブベースの言語拡張。 -[[XcalableMP website:http://www.xcalablemp.org/]] -[[第1回 High Performance Computing Physics (HPC-Phys) 勉強会:https://hpc-phys.kek.jp/workshop/workshop180822.html]]~ 中尾昌広氏によるチュートリアル「XcalableMP 入門」の資料があります。 -[[XcalableMP(XMP) の開発状況 (佐藤三久):http://www.hpfpc.org/documents/soukai_120419/XMP-HPF-120419.pdf]]~ [[平成23年度HPF推進協議会総会:http://www.hpfpc.org/soukai_120419.html]](2012年4月19日)における講演資料。 **High Performance Fortran [#s4e07106] -[[高性能Fortran推進協議会:https://site.hpfpc.org/]]