one of the Boost libraries, a C++-style wrapper around the Message Passing Interface (MPI) library for high-performance distributed computing.
Questions tagged [boost-mpi]
80 questions
1
vote
0 answers
MPIrun crashing with simple code
I'm trying to generate code that uses MPI to behave roughly similar to a program with dependencies. Everything works fine if I use a number of processors (e.g. mpirun -np X) where X is greater than the number of tasks I'm trying to model (e.g.…

Hamy
- 20,662
- 15
- 74
- 102
1
vote
1 answer
how to interpret the error codes of boost::mpi?
How to make sense of the boost::mpi error code? For instance, what does error code 834983239 mean?
...
mpi::communicator world;
mpi::request req = world.isend(1, 1, std::string("hello"));
while(!req.test()) {
…

Ammar
- 573
- 1
- 4
- 14
1
vote
0 answers
message synchronization with boost::mpi send/recv?
I call mpirun with "-np 2". I'm referring to the process with rank 0 as "master" and the process with rank 1 as "slave".
Goal:
master occasionally sends a message to slave such as mpi::send(1, UPDATE, data);. Other message types include DIE,…

Ammar
- 573
- 1
- 4
- 14
1
vote
0 answers
boost mpi assertion failing
I am using boost-mpi and I am getting an error that I am having a hard time figuring out. I am using a recv call and an assertion in the boost code fails:
void boost::mpi::binary_buffer_iprimitive::load_impl(void *, int): Assertion…

Kyle
- 217
- 2
- 13
1
vote
1 answer
Does a mpi request finish if recv and send is matched
Is it enough to check only one request object from two matching non-blocking send and recv operations.
This would be great as this would reduce the effort to handle the request objects in my program.
Here a small example with boost mpi:
#include…

tune2fs
- 7,605
- 5
- 41
- 57
1
vote
1 answer
c++ boost MPI & threading - serialize errors: Address not mapped
I'm stumped. all_gather works for primitives (e.g. int) but fails even for simple STL containers. valgrind claims that the container was not allocated/initialized, but that doesn't seem right.
In summary:
I do some multi-threading with openMP,…

cmo
- 3,762
- 4
- 36
- 64
0
votes
1 answer
Grab a "sub"-vector and "concatenate" vectors
So I am writing a parallel program (boost.mpi) and I want to pass pieces of a vector (as in std::vector) that can be assembled to make a whole vector.
In order to do this, I want to be able to do 2 things:
grab a piece of a vector- ie say a vector…

Kyle
- 217
- 2
- 13
0
votes
0 answers
Why does virtual destructor cause segmentaion fault when dealing with user-defined MPI types?
I'm using the example provided with Boost.MPI documentation found here. I have a bit modified these two classes and as soon as I add destructor to this class, I will get segmentation fault during receiving a std::vector. How can I…

MA19
- 510
- 3
- 15
0
votes
1 answer
Cannot setup MPI wrappers - fatal error C1083: Cannot open include file: 'mpi.h': No such file or directory
I am having issues setting up MPI with the Boost C++ Library. I suspect I'm not setting up my MPI wrappers correctly. However, I'm likely wrong! I cannot run: mpicc -show or mpicc -showme.
Thus, I cannot find my correct library path for my MPI…

Ben Redjepi
- 11
- 4
0
votes
0 answers
Seg fault for a simple MPI code during Remote Memory access window creation
I am working on an MPI code in which I am trying to use one-sided communication (RMA). I am creating a window using MPI_Win_create. The code works correctly and gives correct results but still 1 processor exits with a segmentation fault and I am…

Yash
- 21
- 2
0
votes
1 answer
install Boost.MPI in a directory without administration privileges
How can I install Boost.MPI in my home directory without having any administrative privileges on the Unix system I am working on?

Tarek
- 1,060
- 4
- 17
- 38
0
votes
1 answer
Error during compiling of simple boot_mpi scatter program: no serialize element
i am currently evalutating a simple program that allows so scatter an array/vector of lines/strings over a number of processes. I have created a simple test program which i am not able to compile. I am hoping someone can help me finding a solution.…

Oliver
- 149
- 1
- 9
0
votes
2 answers
MPI: how to limit access to file system?
We have MPI based on 4 clusters with 16 cores each. We have a folder called notRestricted. We want to limit access of the application we run with mpiexec to file system - limit its access to write only to that one folder on that one machine we ran…

Rella
- 65,003
- 109
- 363
- 636
0
votes
0 answers
Preserve original ranks in new group
After a new group is created, the lowest rank id is zero. How can I preserve the original ranks of processors?
#include
namespace bmpi = boost::mpi;
int main()
{
MPI_Init(NULL, NULL);
bmpi::communicator comm;
…

Shibli
- 5,879
- 13
- 62
- 126
0
votes
1 answer
C++ MPI, using multiple node, first reduce at node level, then reduce to the head node
I use 12 nodes windows HPC cluster (each with 24 cores) to run a C++ MPI program (use Boost MPI). One run with the MPI reduce, one comment out MPI reduce (for speed test only). The run time is 01:17:23 and 01:03:49. It seems to me that MPI reduce…

user11594134
- 119
- 8