MPI

ログインシェルが bash/sh 以外で MPI のプログラムを動かすときに環境変数が渡らないときは

MPI

最近,研究室の環境も zsh で動かしています.しかし,MPI のプログラムを走らせるときにどうしても環境変数に頼ってしまう部分があって,そのままプログラムを実行すると環境変数が他のノードに渡らなくてプログラムがクラッシュします.(もしかしたら実装…

MPI ことはじめ資料 (研究室向け)

MPI

この間の高速化,並列化みたいなスライドの MPI 版です.OpenMPI を使う必要があるとのことで,OpenMPI を対象として (といってもビルドと実行方法が OpenMPI 用になっているだけですが) 作りました.C++ と書いておきながらほぼ C です.# MPI は素で書くの…

Boost.MPI は実際 MPI_Allgatherv や MPI_Scatterv をサポートできてない

Tutorial - 1.53.0Boost.MPI ドキュメントの "Table 19.5. Collectives" を見てもらえると分かりますが, Boost.MPI では MPI_Allgatherv といった collectives はそれぞれ非 v な collectives でサポートされているかのように書かれています.ちなみに MPI_Al…

Boost.MPI, Serializationで動的確保した配列がメンバに含まれるクラスインスタンスをシリアライズして送る.

できるのかと思ってたんですが, Boost.Serialization のチュートリアルちゃんと読んだら書いてありました.Serialization配列のサイズが分かっていればできそうです.(2013/02/11 追記) 動的確保されたメモリの場合, serialize 関数でメモリ確保は行われないた…

Boost.MPI に MVAPICH2 を用いる

Boost.MPI は MPICH や OpenMPI では Default Configuration が良い感じに走って using mpi するだけで問題ないのですが, MVAPICH2 はコンパイラの名前が異なっているため, そのままでは動きません./tools/build/v2/user-config.jam に以下のように書きます.…