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
2
votes
1 answer
cmake: linking software to boost::mpi (with mpich2)
For this simple code (taken from the boost-mpi documentation):
#include
#include
#include
#include
namespace mpi = boost::mpi;
int main(int argc, char *argv[])
{
…

m0nhawk
- 22,980
- 9
- 45
- 73
2
votes
1 answer
Building Boost.MPI with Intel MPI
I'm trying to build Boost.MPI 1.47 with Intel MPI 4.0.0.012, but Boost is not able to find the installation. I've tried various using mpi ;-variants in user-config.jam including using mpi ;, using mpi : mpicl ; and using mpi :…

larsmoa
- 12,604
- 8
- 62
- 85
2
votes
0 answers
mpi all_gatherv weird behaviour?
I'm trying to gather 2 matrices computed on different processes, i'm using the mpi allgatherv function to do so but I'm surprised by the results.
In the example I'm working on, the shape of the matrices is (20,80) and I would like to gather them…

Shinra_SGr
- 21
- 1
2
votes
1 answer
How to send subarray of 2d Boost.MultiArray via Boost.MPI?
I need to send reference to a subarray of 2d of Boost.MultiArray with Boost.MPI.
Now I have the following code:
matrix_type::array_view<2>::type
current_process_batch = matrix[boost::indices[range(bias, finish_line)][range(0,…

Denys Ivanenko
- 388
- 7
- 21
2
votes
0 answers
boost::mpi and boost:serialization with std::variant
c++17 introduces the new type std::variant. Is it possible to define a serialization routine, so as to use std::variant in conjunction with boost::mpi?
Consider, e.g., a simple program
#include
#include
#include…

francesco
- 7,189
- 7
- 22
- 49
2
votes
1 answer
How do I free a boost::mpi::request?
I'm trying to get MPI to disconnect a communicator, which is a tetchy business - I've put together a demo below. I've got two versions of the same idea, listening for an int, one using MPI_IRecv, and one using a boost::mpi::request.
You'll note…

Carbon
- 3,828
- 3
- 24
- 51
2
votes
2 answers
Using boost::log in parallel environment
I ran the following code with two processes. In the output, there is only one entry. I get a different rank every time. Seems like each process overwrites the file. How can I make all processes to log a message without overwriting?
Expected result…

Shibli
- 5,879
- 13
- 62
- 126
2
votes
1 answer
boost::mpi and boost::serialization errors
I use openmpi and linux mint,
consider the following example:
#include
#include
#include
#include
namespace mpi = boost::mpi;
using namespace std;
int main()
{
…

Alex
- 1,047
- 8
- 21
2
votes
1 answer
how could I serialize boost tuple?
when trying to broad cast an element with boost_tuple using boost mpi:
broadcast(world,J,0);
I have the error:
/usr/local/include/boost/serialization/access.hpp:118:9: error: 'class boost::tuples::tuple' has no member named…

wasabi123
- 173
- 1
- 13
2
votes
2 answers
Open MPI Broadcast Latency Measurement
From reading the documentation, MPI_Bcast is a blocking call (and therefore boost::mpi::broadcast) is as well. Is measuring the amount of time it takes the root node to broadcast a good measure of the time it takes for the data to get from the root…

jekelija
- 257
- 4
- 16
2
votes
2 answers
Boost.MPI problem
I'm working on an HPC. And on that HPC an old version of Boost was installed and that boost library doesn't have Boost.MPI. I requested from Admins to install it on the HPC. But they requested from me to install it on my home directory. So i…

systemsfault
- 15,207
- 12
- 59
- 66
2
votes
0 answers
boost mpi on homogeneous machines
Has anyone successfully used the homogeneous options in boost MPI before? I build boost mpi after uncommenting the appropriate line in the boost mpi config.cpp file and enabled BOOST_IS_BITWISE_SERIALIZABLE([classname]) for several of my classes…

Kyle
- 217
- 2
- 13
2
votes
1 answer
How to send 2d C style array over Boost::MPI?
I have double A[B_ROWS][B_COLUMNS]; in C API I used stufflike:
MPI_Isend(&A[low_bound][0], (upper_bound - low_bound) * A_COLUMNS, MPI_DOUBLE, i, MASTER_TO_SLAVE_TAG + 2, MPI_COMM_WORLD, &request);
and
MPI_Recv(&A[low_bound][0], (upper_bound -…

myWallJSON
- 9,110
- 22
- 78
- 149
2
votes
1 answer
Using MPICH with Boost.MPI on Ubuntu
I was trying to use boost.mpi under Ubuntu 12.04. apt-get will install openmpi, but some other software (involving torque) I run expect mpich2/mpich, and complain that
"mpdstartup: Command not found"
I certainly don't want to mess with changing the…

thor
- 21,418
- 31
- 87
- 173
2
votes
1 answer
all_reduce with booleans
I am trying to use the all_reduce function to collect a boolean from each processor and reduce them to true if any of the booleans are true(ie the "or" operator). But I am having issues finding the right syntax for this. What I have right now is…

Kyle
- 217
- 2
- 13