
15 Sep
2009
15 Sep
'09
6:12 p.m.
I am using MPI in combination with BLACS and apparently it works with MPI_Init but not with boost.MPI when I use #include "blacs.h" int main(int argc, char* argv[]) { MPI_Init(&argc,&argv); int nprocs=0; int mype=0; Cblacs_pinfo( &mype, &nprocs ); // overwrites the pointee, that is how Cblacs_pinfo works std::cout<<mype<<" "<<nprocs<<std::endl; the program output (correctly): "0 1" But when I use boost::mpi::environment env(argc, argv); //instead of MPI_Init(argc, argv); the programs outputs (incorrectly): "0 -1". The point being that apparently boost::mpi::environment is not equivalent to MPI_Init/MPI_Finalize. Any idea of what is difference between MPI_Init and boost::mpi::environment? Thank you, Alfredo