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