freepooma-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Freepooma-devel] Parallel Pooma (Repeated request)


From: Svilen Sabchevski
Subject: Re: [Freepooma-devel] Parallel Pooma (Repeated request)
Date: Mon, 5 Jun 2006 07:19:50 -0700 (PDT)

Dear Richard,
 
Thank you for your suggestion to configure with -ex option.
This indeed solved the current problem and the compilation
process continued further two more steps. But strangely
enough after this the problem with SEEK_xxx reappeared
again compiling BataBrowser.cmpl.cpp. So, I got the following diagnostics:
 
Mon Jun 5 13:56:17 EEDT 2006                                                    
                                                   
Compiler location: /home/mpich2-install/bin/mpiCC                               
                                                   
TMPDIR=/tmp/parallel; \                                                         
                                                   
 /usr/bin/time mpiCC -c src/DataBrowser/DataBrowser.cmpl.cpp \                  
                                                   
-o src/DataBrowser/parallel/DataBrowser.cmpl.o \                                
                                                   
  -ftemplate-depth-60    \                                                      
                                                   
-DNOPAssert -DNOCTAssert -O2 -funroll-loops \                                   
                                                   
-I/home/p_freepooma-2.4.1/src \                                                 
                                                   
-I/home/p_freepooma-2.4.1/lib/parallel                                          
                                                   
                                                                                
                                                   
                                                                                
                                            
                                                                                
                                                   
In file included from /home/mpich2-install/include/mpi.h:1120,                  
                                                   
                 from 
/home/p_freepooma-2.4.1/src/Threads/IterateSchedulers/SerialAsync.h:58,         
                             
                 from /home/p_freepooma-2.4.1/src/Threads/Scheduler.h:84,       
                                                   
                 from /home/p_freepooma-2.4.1/src/Threads/PoomaSmarts.h:39,     
                                                   
                 from /home/p_freepooma-2.4.1/src/Utilities/DataBlockPtr.h:49,  
                                                   
                 from /home/p_freepooma-2.4.1/src/Domain/IndirectionList.h:49,  
                                                   
                 from /home/p_freepooma-2.4.1/src/Layout/DynamicEvents.h:54,    
                                                   
                 from /home/p_freepooma-2.4.1/src/Layout/SparseTileLayout.h:58, 
                                                   
                 from /home/p_freepooma-2.4.1/src/Engine/IsValidLocation.h:54,  
                                                   
                 from /home/p_freepooma-2.4.1/src/Array/PrintArray.h:49,        
                                                   
                 from src/DataBrowser/DataBrowser.cmpl.cpp:21:                  
                                                   
/home/mpich2-install/include/mpicxx.h:26:2: #error "SEEK_SET is #defined but 
must not be for the C++ binding of MPI"               
/home/mpich2-install/include/mpicxx.h:30:2: #error "SEEK_CUR is #defined but 
must not be for the C++ binding of MPI"               
/home/mpich2-install/include/mpicxx.h:35:2: #error "SEEK_END is #defined but 
must not be for the C++ binding of MPI"               
In file included from /home/p_freepooma-2.4.1/src/Layout/DynamicEvents.h:55,    
                                                   
                 from /home/p_freepooma-2.4.1/src/Layout/SparseTileLayout.h:58, 
                                                   
                 from /home/p_freepooma-2.4.1/src/Engine/IsValidLocation.h:54,  
                                                   
                 from /home/p_freepooma-2.4.1/src/Array/PrintArray.h:49,        
                                                   
                 from src/DataBrowser/DataBrowser.cmpl.cpp:21:                  
                                                   
/home/p_freepooma-2.4.1/src/Domain/IteratorPairDomain.h:49: error: redefinition 
of `struct std::iterator_traits<_Tp*>'             
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_iterator_base_types.h:138:
 error: previous definition of `struct std::iterat
/home/p_freepooma-2.4.1/src/Domain/IteratorPairDomain.h:58: error: redefinition 
of `struct std::iterator_traits<const _Tp*>'       
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_iterator_base_types.h:148:
 error: previous definition of `struct std::iterat
Command exited with non-zero status 1                                           
                                                   
0.95user 0.18system 0:01.08elapsed 104%CPU (0avgtext+0avgdata 
293776maxresident)k                                                  
0inputs+0outputs (18331major+0minor)pagefaults 0swaps  
 
 
Probably in the chain of  #includes the order is again wrong and the header 
mpi.h is
somehow behind stdio.h. Therefore I decided to experiment with another solution
of the problems related to SEEK_xxx, namely to add -DMPICH_IGNORE_CXX_SEEK 
in parallel.suite.mk (see next line)
 
CXX_OPT_LIB_ARGS    = -ftemplate-depth-60    -DNOPAssert -DNOCTAssert -O2 
-funroll-loops -DMPICH_IGNORE_CXX_SEEK
 
After this the problem with SEEK_xxx is solved again but  there is still  error 
message:
 
Mon Jun 5 16:52:36 EEDT 2006                                                    
                                                     
Compiler location: /home/mpich2-install/bin/mpiCC                               
                                                     
TMPDIR=/tmp/parallel; \                                                         
                                                     
 /usr/bin/time mpiCC -c src/DataBrowser/DataBrowser.cmpl.cpp \                  
                                                     
-o src/DataBrowser/parallel/DataBrowser.cmpl.o \                                
                                                     
  -ftemplate-depth-60    \                                                      
                                                     
-DNOPAssert -DNOCTAssert -O2 -funroll-loops -DMPICH_IGNORE_CXX_SEEK \           
                                                     
-I/home/p_freepooma-2.4.1/src \                                                 
                                                     
-I/home/p_freepooma-2.4.1/lib/parallel                                          
                                                     
                                                                                
                                                     
                                                                                
                                                     
                                                                                
                                                     
In file included from /home/p_freepooma-2.4.1/src/Layout/DynamicEvents.h:55,    
                                                     
                 from /home/p_freepooma-2.4.1/src/Layout/SparseTileLayout.h:58, 
                                                     
                 from /home/p_freepooma-2.4.1/src/Engine/IsValidLocation.h:54,  
                                                     
                 from /home/p_freepooma-2.4.1/src/Array/PrintArray.h:49,        
                                                     
                 from src/DataBrowser/DataBrowser.cmpl.cpp:23:                  
                                                     
/home/p_freepooma-2.4.1/src/Domain/IteratorPairDomain.h:49: error: redefinition 
of `struct std::iterator_traits<_Tp*>'               
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_iterator_base_types.h:138:
 error: previous definition of `struct std::iterator
/home/p_freepooma-2.4.1/src/Domain/IteratorPairDomain.h:58: error: redefinition 
of `struct std::iterator_traits<const _Tp*>'         
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_iterator_base_types.h:148:
 error: previous definition of `struct std::iterator
Command exited with non-zero status 1                                           
                                                     
1.01user 0.12system 0:01.04elapsed 108%CPU (0avgtext+0avgdata 
293792maxresident)k                                                    
0inputs+0outputs (18333major+0minor)pagefaults 0swaps                           
                                                     
                                                                                
          
 
I am sorry for bothering you so frequently. I really appreciate your valuable 
time.   In an anticipation of
your next hint I would like to acknowledge that each your response helps me to 
make several more
steps further.
 
With best wishes and regards,
 
Svilen 
 
P.S. Please note that adding -DMPICH_IGNORE_CXX_SEEK  still requires -ex option 
during configure in order to
escape from the error of the previous step.

 
 
************************************ 
 
Dr. Svilen SABCHEVSKI 
Lab. Electron Beam Technologies 
Institute of Electronics of the 
Bulgarian Academy of Sciences 
72 Tzarigradsko Shose Blvd. 
1784 Sofia, BULGARIA 
 
e-mail: address@hidden 
phone: (+359 2) 7144680 
fax: (+359 2) 9753201 
 
************************************ 


----- Original Message ----
From: Richard Guenther <address@hidden>
To: Dr. S.Sabchevski <address@hidden>
Sent: Monday, June 5, 2006 1:15:46 PM
Subject: Re: [Freepooma-devel] Parallel Pooma (Repeated request)


On Mon, 5 Jun 2006, Dr. S.Sabchevski wrote:

> Dear Richard,
>
> Thanks for your prompt reply.
>
> Now I understand that the problem with SEEK_SET, SEEK_CUR
> and SEEK_END is in fact a bug in MPICH2 since  both stdio.h
> and the MPI C++ interfaces use SEEK_SET, SEEK_CUR, and SEEK_END.
> Moreover, I found an easy way to go round it. I just moved the
> #if POOMA_MPI block in the file
> p_freepooma-2.4.1/srcThreads/IterateSchedulers/SerialAsync.h
>
> in the very beginning of #include statements, i.e. now we have:
>
>
>
> #if POOMA_MPI
>
> #include <mpi.h>
>
> #endif
>
>
>
> #include <list>
>
> #include <vector>
>
> #include <map>
>
> #include <set>
>
> #include <functional>
>
> #include <stack>
>
> #include "Pooma/Configuration.h"
>
> #include "Threads/IterateSchedulers/IterateScheduler.h"
>
> #include "Threads/IterateSchedulers/Runnable.h"
>
> #include "Utilities/PAssert.h"
>
>
>
> After this small change  there are no problems with SEEK_xxx anymore  :-),

Hmm, this looks like a reasonable workaround if it works out in the end...

> but the second error  persists :-(

Well, it is for the same reason.  You need to avoid including mpicxx.h
at all, as it uses exceptions.  Alternatively you can enable exception
support in POOMA as well - use --ex at POOMA configure time.  Even then
you may later experience linkage problems - but I'm not sure.

Hope this gets you further,
Richard.

PS: I'd like to cover these MPI install problems in the INSTALL file,
so if you get it working I'd appreciate if you give me a note.

--
Richard Guenther <richard dot guenther at uni-tuebingen dot de>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]