|
Boost Users : |
Subject: Re: [Boost-users] help figuring out msg
From: Igor R (boost.lists_at_[hidden])
Date: 2011-12-20 08:57:19
>> The lines in this call stack have "mangled" names.
>> For instance,
>> _ZNSt6vectorI12lattice_typeSaIS0_EE7reserveEm + 114
>> designates something like vector<lattice_type>::reserve()
>>
>>
>>> Is it really trying to allocate that size? Is gcc really using malloc
>>> under all these boost code? :)
>>
>>
>> Yes, the bottom line is that it throws bad_alloc due to an attmpt to
>> allocate a very large block.
>> In line [12] you can see a call to
>> boost::serialization::stl::reserve_imp<std::vector<lattice_type> >()
>> it's called when Boost.Serialization loads your vector from a stream.
>> However, for some reason it read an incorrect vector size -- perhaps
>> the file is corrupted or there's some version mismatch.
>
>
> Or loading from a binary_archive that was saved with a different endianess.
Well, according to the call stack, it was mpi::packed_archive. I never
used it, but googled-around a bit, and it seems that MPI handles
endianness issues automatically, unless BOOST_MPI_HOMOGENOUS is
defined.
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net