Boost logo

Boost :

Subject: Re: [boost] [serialization] failing MPI build
From: Alain Miniussi (alain.miniussi_at_[hidden])
Date: 2015-04-15 07:14:32


The noptfo branch of Boost.MPI contains that modification. But still
fails at runtime.
I did set BOOST_MPI_HOMOGENEOUS on that branch, which is the most common
situation in HPC and allow some optimizations that are probably
triggering that runtime bug.

Alain

On 15/04/2015 08:53, Alain Miniussi wrote:
> On 14/04/2015 16:49, Robert Ramey wrote:
>> Alain Miniussi wrote
>>> Hi,
>>>
>>> I suspect one problem is that the commit
>>> https://github.com/boostorg/serialization/commit/5a94e5e4eb01cd8c941db725e5f89965a91740a9
>>>
>>> was not taken into account in MPI.
>>>
>>> Not sure how the MPI should be adapted to that change yet. Some
>>> parameters that were supposed to be there only to help overload
>>> resolution have been removed (according to comments in pfto.hpp).
>>>
>>> I guess I need to remove some int arguments from the
>>> (save|load)_override methods of boost::mpi::packed_(i|o)archive
>>> classes ?
>>
>> You are correct. It's easy to see the changes. If you do a diff on some
>> other archive like binary or text in the serialization library you'll see
>> that the dummy parameter used to emulate partial function template
>> overload
>> has been eliminated. And of course eliminate the #include
>> boost/serialization/ptfo.hpp . That's all that is necessary. This
>> simplifies code at the cost of eliminating support of borland 5x and mdvc
>> 7.0 and below which is no longer considered necessary. Since these
>> headers
>> are considered implementation features of the serialization library it
>> didn't occur to me that making these changes would break anything else.
>> Sorry about that.
>
> I am relatively new to that part of Boost.MPI so I cannot tell if these
> features should have been used in boost mpi in the first place.
>
>> If you're interested in enhancing, or improving the MPI implementation
>> as it
>> regards serialization, you should let me know so I could acquaint myself
>> with the MPI version and offer some suggestions. I've had some ideas
>> in my
>> head for years would simplify and expedite usage of the serialization
>> library for object transmission over a stream but I've never spend any
>> time
>> on them as it didn't seem anyone had any interest.
>
> I started doing some modifications that I will put on a branch on github.
> Right now, with those modifications the develop version of Boost.MPI
> compiles again with the develop version of serialization. But I still
> have some runtime failures so I'd like to fix those before going to
> github develop.
> The failure have to do with serialization of "complex" stl data
> structure (stl collections of non PODs). I suspect it has something to
> do with binary serialization optimisation (where non POD are considered
> POD).
>
> I'll let you know when current modifications are on a publicly available
> on github (I'm not that fluent in git/github yet).
>
> Alain Miniussi
>
>
>> Robert Ramey
>>
>>
>>
>> --
>> View this message in context:
>> http://boost.2283326.n4.nabble.com/serialization-failing-MPI-build-tp4674375p4674449.html
>>
>> Sent from the Boost - Dev mailing list archive at Nabble.com.
>>
>> _______________________________________________
>> Unsubscribe & other changes:
>> http://lists.boost.org/mailman/listinfo.cgi/boost
>>
>
>

-- 
---
Alain

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk