Opened 9 years ago

Last modified 6 years ago

#3918 new Support Requests

MPI std::string serialization

Reported by: Ghost99 <ghost99@…> Owned by: Matthias Troyer
Milestone: Component: mpi
Version: Boost 1.41.0 Severity: Problem
Keywords: Cc:

Description

I'm new in MPI and cluster computations. I have 2 machines on gentoo (amd64 and x86), both with openmpi-1.4.1 and boost-1.41.0 . 'Heterogeneous' flags is set. I'm trying to run example at http://www.boost.org/doc/libs/1_41_0/doc/html/mpi/tutorial.html#mpi.nonblocking and it work when i run it in two processes at one machine, but it throws an exception, if i use both (-npernode 1). I didn't fully understand what serialization does, but on separate machine it work with or without it (i'm talking about header boost/serialization/string.hpp), with using both of machines, i always have exception.

I don't mark that message as bug, i really think i'm just doing something wrong.

Attachments (2)

exception.txt (546 bytes) - added by Ghost99 <ghost99@…> 9 years ago.
Exception text
vector.cc (656 bytes) - added by ghost99@… 8 years ago.
Hello world code.

Download all attachments as: .zip

Change History (7)

Changed 9 years ago by Ghost99 <ghost99@…>

Attachment: exception.txt added

Exception text

comment:1 Changed 8 years ago by Matthias Troyer

Can you check whether this still exists for the current trunk?

comment:2 Changed 8 years ago by ghost99@…

No, I can't. Current version of boost available in Gentoo portage is 1.42.0, and problem is still there. Serialization does not work like it should. It's impossible to send vectors of any type or strings, with or without using 'skeleton' (from x86_64 to x86). Exception is rising when 'skeleton' is broadcasting.

On x86_64 to x86_64 broadcasting all fine.

comment:3 Changed 8 years ago by Matthias Troyer

You could build it from source.

comment:4 Changed 8 years ago by ghost99@…

I have installed boost-1.45.0 from overlay to both of machines. And result is same. Here is my source code, please check it for stupid errors. This code work fine in homogeneous network (all processes in one machine), but in heterogeneous network raise exception.

Of course OpenMPI compiled with heterogeneous flag.

Changed 8 years ago by ghost99@…

Attachment: vector.cc added

Hello world code.

comment:5 Changed 6 years ago by Matthias Troyer

Owner: changed from Douglas Gregor to Matthias Troyer
Note: See TracTickets for help on using tickets.