我可以使用Boost MPI将文件发送到其他计算机吗?我担心的是它针对非常小的消息进行了优化而不是更大(我需要一次性发送700 MB或更多)。原因是我可能会将mpi用于程序的其他部分,所以我认为这是一个非常干净的解决方案,不混合和匹配。
它已经完成了吗?你会推荐吗?
答案 0 :(得分:3)
请记住,Boost MPI要求您已在要发送文件的系统上实施MPI(OpenMPI,MPICH2,MVAPICH2等)。你需要将其中一个与Boost MPI一起使用。
另请注意,MPI专为高性能群集而设计,大多数MPI实施都假设您拥有可靠的硬件。也就是说,如果您在MPI中编写了一个应用程序并且其中一个进程出现故障,那么很可能它们都将会死亡。
如果您计划在自己的网络上的本地环境中使用它,并且您打算主要运行批处理作业而不是持久性服务,那么MPI可能是一个不错的选择。如果没有,那么请查看为更分散,更不可靠的环境而设计的其他消息传递解决方案。
答案 1 :(得分:2)
MPI专为高性能并行应用而设计,所以我绝对会推荐它。 (请记住,所有已被接受的Boost库都经过彻底的修改和测试
,700mb文件不应该是任何问题另一个(希望有趣)功能: “Boost.MPI进程可以分布在许多不同的机器上,可能使用不同的操作系统和底层架构。”