我使用Boost MPI相对较新.我已经安装了库,代码编译,但我得到一个非常奇怪的错误 - 从属节点接收的一些整数数据不是主节点发送的.到底是怎么回事?
我正在使用boost版本1.42.0,使用mpic ++编译代码(在一个集群上包含g ++,在另一个集群上包含icpc).下面是一个简化示例,包括输出.
码:
#include <iostream>
#include <boost/mpi.hpp>
using namespace std;
namespace mpi = boost::mpi;
class Solution
{
public:
Solution() :
solution_num(num_solutions++)
{
// Master node's constructor
}
Solution(int solutionNum) :
solution_num(solutionNum)
{
// Slave nodes' constructor.
}
int solutionNum() const
{
return solution_num;
}
private:
static int num_solutions;
int solution_num;
};
int Solution::num_solutions = 0;
int main(int argc, char* argv[])
{
// Initialization of MPI
mpi::environment env(argc, argv);
mpi::communicator world;
if (world.rank() == 0)
{ …Run Code Online (Sandbox Code Playgroud)