Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [OMPI users] Signal code: Address not mapped (1) error
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2010-03-17 12:42:36


>From the stack trace, it looks like the error is somewhere inside Boost. I'm unfamiliar with the details of Boost -- you might want to ask them about it.

On Mar 17, 2010, at 6:11 AM, alev mutlu wrote:

> Hi the following codes compiles fine but gives some run time errors.
> Ant suggestions to fix the problem.
>
> cheers
>
>
> Code
>
> #include <boost/mpi/environment.hpp>
> #include <boost/mpi/communicator.hpp>
> #include <boost/mpi/collectives.hpp>
> #include <boost/thread/barrier.hpp>
> #include <boost/thread/mutex.hpp>
> #include <boost/config.hpp>
> #include <boost/archive/text_oarchive.hpp>
> #include <boost/archive/text_iarchive.hpp>
> #include <boost/serialization/access.hpp>
> #include <boost/serialization/string.hpp>
> #include <boost/mpi/skeleton_and_content.hpp>
> #include <boost/mpi/datatype.hpp>
> #include <boost/mpi/allocator.hpp>
> #include <boost/archive/tmpdir.hpp>
> #include <boost/serialization/utility.hpp>
> #include <boost/serialization/base_object.hpp>
> #include <boost/mpi.hpp>
> #include <boost/tokenizer.hpp>
> #include <boost/archive/tmpdir.hpp>
> #include <boost/archive/binary_oarchive.hpp>
> #include <boost/serialization/export.hpp>
> #include <boost/serialization/base_object.hpp>
> #include <boost/serialization/utility.hpp>
> #include <boost/serialization/hash_map.hpp>
> #include <boost/serialization/map.hpp>
>
>
>
> #include <string>
> #include <iostream>
> #include <vector>
> #include <fstream>
>
> #define MASTER 0
>
> int arraySize = 7;
>
> using namespace std;
> namespace mpi = boost::mpi;
>
> struct field {
> string field_name;
> string field_type;
> string field_ref;
> string field_colType;
>
> };
>
> namespace boost {
> namespace serialization{
> template<class Archive>
> void serialize(Archive & ar, struct field & f, unsigned int version){
> ar & f.field_name;
> ar & f.field_type;
> ar & f.field_ref;
> ar & f.field_colType;
> }
> }
> }
>
> int main(int argc, char* argv[])
> {
> mpi::environment env(argc, argv);
> mpi::communicator world;
> int m_mySize, w_mySize, kk,i;
> struct field *relAllValues;
> struct field *relMyValues;
> vector<struct field> C;
> struct field c;
>
> w_mySize = arraySize / world.size();
> cout << "w_mySize = " << w_mySize << endl;
> if (world.rank() == MASTER){
> for(int i = 0; i < arraySize; i++){
> c.field_name = "field_name=" ;
> c.field_type = "field_type=";
> c.field_ref = "field_ref=";
> c.field_colType = "field_colType=";
> C.push_back(c);
> }
> m_mySize = arraySize / world.size() + arraySize % world.size();
> relMyValues = (struct field *) malloc(sizeof(struct field) * w_mySize);
> relAllValues = (struct field *) malloc(sizeof(struct field) * arraySize);
>
> }
> else{
> relMyValues = (struct field *) malloc(sizeof(struct field) * w_mySize);
> }
>
> if (world.rank() == MASTER){
> scatter(world, C, relMyValues, w_mySize, 0);
> }
> else{
> scatter(world, C, relMyValues, w_mySize, 0);
> }
> }
>
> and the run time errors
>
> [ceng34:00724] *** Process received signal ***
> [ceng34:00724] Signal: Segmentation fault (11)
> [ceng34:00724] Signal code: Address not mapped (1)
> [ceng34:00724] Failing at address: 0xfffffffffffffff8
> [ceng34:00724] [ 0] /lib64/libpthread.so.0 [0x315880de80]
> [ceng34:00724] [ 1] /usr/lib64/libstdc++.so.6(_ZN9__gnu_cxx18__exchange_and_addEPVii+0x2) [0x385dab7672]
> [ceng34:00724] [ 2] /usr/lib64/libstdc++.so.6(_ZNSs6assignERKSs+0x9b) [0x385da9ca4b]
> [ceng34:00724] [ 3] test-boost(_ZN5fieldaSERKS_+0x47) [0x42197f]
> [ceng34:00724] [ 4] test-boost(_ZNSt6__copyILb0ESt26random_access_iterator_tagE4copyIPK5fieldPS3_EET0_T_S8_S7_+0x3c) [0x4221be]
> [ceng34:00724] [ 5] test-boost(_ZSt10__copy_auxIPK5fieldPS0_ET0_T_S5_S4_+0x29) [0x422203]
> [ceng34:00724] [ 6] test-boost(_ZNSt13__copy_normalILb0ELb0EE6copy_nIPK5fieldPS2_EET0_T_S7_S6_+0x25) [0x42222b]
> [ceng34:00724] [ 7] test-boost(_ZSt4copyIPK5fieldPS0_ET0_T_S5_S4_+0x2d) [0x42225b]
> [ceng34:00724] [ 8] test-boost(_ZN5boost3mpi6detail12scatter_implI5fieldEEvRKNS0_12communicatorEPKT_PS7_iiN4mpl_5bool_ILb0EEE+0x90) [0x42a630]
> [ceng34:00724] [ 9] test-boost(_ZN5boost3mpi7scatterI5fieldEEvRKNS0_12communicatorEPKT_PS6_ii+0x50) [0x42b162]
> [ceng34:00724] [10] test-boost(_ZN5boost3mpi7scatterI5fieldEEvRKNS0_12communicatorERKSt6vectorIT_SaIS7_EEPS7_ii+0x55) [0x42b1db]
> [ceng34:00724] [11] test-boost(main+0x20e) [0x420880]
> [ceng34:00724] [12] /lib64/libc.so.6(__libc_start_main+0xf4) [0x3157c1d8b4]
> [ceng34:00724] [13] test-boost(__gxx_personality_v0+0x169) [0x420489]
> [ceng34:00724] *** End of error message ***
> mpirun noticed that job rank 0 with PID 724 on node ceng34-ib exited on signal 11 (Segmentation fault).
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users

-- 
Jeff Squyres
jsquyres_at_[hidden]
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/