我打算使用 Boost::MPI 在主进程和工作进程之间发送和接收一些数据——主要是大型数字数组。现在,我正在导入 text_iarchive.hpp 和 text_oarchive.hpp 作为归档实现。这些是用于此应用程序的最佳选择吗?如果数据是 BOOST_IS_MPI_DATATYPE,我使用哪个有关系吗?
谢谢
最佳答案
你不应该关心存档的实现,它是透明的。您只需通过为类型包含特定的序列化 header 或实现 serialize
来使类型本身可序列化。在这两种情况下,您都不会看到使用过的存档。
在内部,Boost.MPI 使用 boost::mpi::packed_oarchive
.
对于大量数字,您确实应该确保类型是_mpi_datatype
。然后没有序列化,这意味着更好的性能。
关于c++ - 哪个带有 boost 的 mpi 存档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43664114/