
2 Nov
2011
2 Nov
'11
3:46 p.m.
nm -Cspl ./Mg | grep lattice | c++filt shows boost files & a few of mine where serialized/archived neighbors is called & maybe the index is out of range in these other files, where I did not intend to interfere, for a process there: struct lattice_type { /* must have serialize: AND in this order/syntax: http://www.boost.org/doc/libs/1_47_0/libs/serialization/doc/ */ #ifdef BOOST_MPI_HPP private: friend class boost::serialization::access; #endif /* BOOST_MPI_HPP */ public: lattice_type* neighbors[ en - 1 ]; /* must have serialize; helps too w/IO? https://groups.google.com/group/boost-list/browse_thread/thread/95a8eb0570fd6ffe?hl=en */ #ifdef BOOST_MPI_HPP protected: template<class Archive> inline void serialize( Archive & ar , const unsigned int version) //http://www.boost.org/doc/libs/1_46_1/doc/html/mpi/tutorial.html { ar & neighbors ; // for 'packing' (& who knows what else) for message-passing (void)(version) ; // ends "unused parameter 'version'" warnings } public: #endif otherwise. nm -Cspl ./Mg | grep ignore_skeleton_oarchive | c++filt and other similar ones w/different names have shown me line #'s from boost code but I'm pretty sure the error is in my code & I'm trying to track to which line in which of my files. I suspect it has to do w/serialization (or maybe I need to spell out how to de-serialize somewhere) but I haven't pinned it down yet but this is helping so far. Thanks! Jacques On Nov 1, 2011, at 11:52 PM, Andrey Moshbear wrote: > On Tue, Nov 1, 2011 at 20:03, Andrey Moshbear <andrey.vul@gmail.com> wrote: >> On Tue, Nov 1, 2011 at 14:31, Jacques C. Richard <richard@tamu.edu> wrote: >>> I am trying boost::mpi on a big code & getting the following error message from mac mpiC++ (same from an intel super-computer). Can anyone pick out something quickly from that to help please or do you need to see more? I'd like to figure out what I did to not do it! :) >>> Thanks! >>> Jacques >>> > [snip] >> >> It would be nice if you used nm -C to get namespace::class::method >> instead of gcc's mangled mess. >> >> How do you do this? >> $nm -C prog_or_lib | grep $(nm prog_or_lib | grep _Z[gcc mangle] | cut >> -d' ' -f1) in terminal. >> >> All I can see is boost::mpi::detail::ignore_skeleton_oarchive followed >> by template args and overloads, >> boost::archive::detail::interface_oarchive followed by template args >> and overloads, and boost::serialization followed by template args and >> overloads. >> Run nm -C to get human-useful symbol names in the backtrace. >> > > c++filt is your friend. > > Demangled backtrace: >>> Process=1's mpe_decomp1d MiniGridSize= 3 3 3 >>> Pause @ "main: 879: Domain decomposition" if 1 process: <Enter> or <Return> continues; ^C aborts: >>> init_internal_neighbors_wf: Process 1 of 2 exchanging (if necessary) w/+/-1! Sender=1, Receiver=0 >>> [jacques-richards-mac-mini:00474] *** Process received signal *** >>> [jacques-richards-mac-mini:00474] Signal: Segmentation fault (11) >>> [jacques-richards-mac-mini:00474] Signal code: Address not mapped (1) >>> [jacques-richards-mac-mini:00474] Failing at address: 0x200000001 >>> [jacques-richards-mac-mini:00474] [ 0] 2 libSystem.B.dylib 0x00007fff86fa51ba _sigtramp + 26 >>> [jacques-richards-mac-mini:00474] [ 1] 3 ??? 0x0000000000000000 0x0 + 0 >>> [jacques-richards-mac-mini:00474] [ 2] 4 Mg 0x000000010010ff0e void boost::mpi::detail::ignore_skeleton_oarchive<boost::mpi::detail::content_oarchive>::save_override<lattice_type*>(lattice_type* const&, int) + 40 >>> [jacques-richards-mac-mini:00474] [ 3] 5 Mg 0x000000010010ff3a boost::mpi::detail::content_oarchive& boost::archive::detail::interface_oarchive<boost::mpi::detail::content_oarchive>::operator<< <lattice_type* const>(lattice_type* const&) + 42 >>> [jacques-richards-mac-mini:00474] [ 4] 6 Mg 0x000000010010ff6e void boost::serialization::nvp<lattice_type* const>::save<boost::mpi::detail::content_oarchive>(boost::mpi::detail::content_oarchive&, unsigned int) const > + 40 >>> [jacques-richards-mac-mini:00474] [ 5] 7 Mg 0x000000010010ff93 boost::serialization::access::??incomplete_name?? >>> ... > _______________________________________________ > Boost-users mailing list > Boost-users@lists.boost.org > http://lists.boost.org/mailman/listinfo.cgi/boost-users Dr. Jacques C. Richard NSF Research Experiences for Undergraduates (REU) Sites Sr. Lecturer/Research Associate, Aerospace Engineering Dept. Texas A & M University, College Station, TX 77843-3141 richard@tamu.edu 979-845-3916 (fax 6051) http://aeweb.tamu.edu/Richard/