C++ コンテナーで MPI 通信ルーチンを使用できるように、MPI_Datatype
およびを定義するにはどうすればよいですか?MPI_Op
std::set<int>
私の特定のケースでは、 を使用して の (分散) 配列を結合したいと思いMPI_Allreduce
ます。
関連する質問によると
- C の mpi_allgather と mpi_pack
- 動的に割り当てられた配列を含むカスタム データ型を持つ MPI_reduce() : セグメンテーション違反
- ポインターを含む構造体の MPI_Datatype の作成
これには、コンテナー データの (非) シリアル化が必要なようです。私の場合、size()
それぞれのstd::set
は大きく異なり、(可能であれば) パディングを必要としないソリューションに興味があります。