<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Hi Rajeev,<BR>
&nbsp;<BR>
I&nbsp;just have a try,&nbsp;delete the mpif.h file in the application directories.&nbsp;But in this way I&nbsp;can not&nbsp;even compile the model successfully.<BR>
&nbsp;<BR>
&nbsp;<BR>
Liu. S&nbsp;<BR>
<HR id=stopSpelling>
From: thakur@mcs.anl.gov<BR>To: mpich-discuss@mcs.anl.gov<BR>Date: Wed, 23 Dec 2009 02:54:14 -0600<BR>Subject: Re: [mpich-discuss] how to deal with these errors?<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding-bottom:0px;padding-left:0px;padding-right:0px;padding-top:0px;}
.ExternalClass BODY.ecxhmmessage
{font-family:Verdana;font-size:10pt;}
</STYLE>

<DIV dir=ltr align=left><SPAN class=ecx140565308-23122009><FONT color=#0000ff face=Arial>Make sure there is no mpif.h file in any of the application directories.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=ecx140565308-23122009><FONT color=#0000ff face=Arial></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=ecx140565308-23122009><FONT color=#0000ff face=Arial>Rajeev</FONT></SPAN></DIV><BR>
<BLOCKQUOTE style="BORDER-LEFT: #0000ff 2px solid; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
<DIV dir=ltr lang=en-us class=ecxOutlookMessageHeader align=left>
<HR>
<FONT face=Tahoma><B>From:</B> mpich-discuss-bounces@mcs.anl.gov [mailto:mpich-discuss-bounces@mcs.anl.gov] <B>On Behalf Of </B>LSB<BR><B>Sent:</B> Wednesday, December 23, 2009 2:39 AM<BR><B>To:</B> mpich-discuss@mcs.anl.gov<BR><B>Subject:</B> Re: [mpich-discuss] how to deal with these errors?<BR></FONT><BR></DIV>
<DIV></DIV>Hi Correa,<BR>&nbsp;<BR>Thank you for your reply. Meet you here agian, haha<BR>I have&nbsp;reorgnized my questions, and posted it on the&nbsp;CGD&nbsp;forum.<BR><BR>I&nbsp;have&nbsp;edited the related directories of the MPI include files and library after you answered me through the ccsm maillist. However, the "invalid communicator" is still there.&nbsp;I am sure my CCSM3 Makefiles now points to MPICH2 include files and the library directories are also have been changed to associate to MPICH2.&nbsp;Is there any&nbsp;other reason that&nbsp;can lead to this problem?<BR>&nbsp;<BR>I said that I can "run" CCSM3 by delete any one of the five components. I infact meant that in this situation I can see these process names by the command "top". But if I&nbsp;run all&nbsp;the five, I&nbsp;can not see these process&nbsp;names with "top",&nbsp;and the error message as mentioned&nbsp;before will appear.<BR>&nbsp;<BR>The resolution I use is T31_gx3v5. I asked for two nodes(each 
 node with 16G memory and 16 cpus). But I&nbsp;am not sure&nbsp;whether these resources are enough for CCSM3 running or not.<BR>&nbsp;<BR>Thanks for your help.<BR>&nbsp;<BR>Liu. S<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&gt; Date: Tue, 22 Dec 2009 16:30:40 -0500<BR>&gt; From: gus@ldeo.columbia.edu<BR>&gt; To: mpich-discuss@mcs.anl.gov<BR>&gt; Subject: Re: [mpich-discuss] how to deal with these errors?<BR>&gt; <BR>&gt; Hi Liu<BR>&gt; <BR>&gt; As I mentioned, probably to you, in the CCSM3 forum:<BR>&gt; <BR>&gt; **<BR>&gt; <BR>&gt; Regarding 1),<BR>&gt; the "Invalid communicator" error is often produced by the use<BR>&gt; of a wrong mpi.h or mpif.h include files, i.e.,<BR>&gt; include files from another MPI that may be in your system.<BR>&gt; <BR>&gt; If you search this mailing list archives, or the OpenMPI mailing list<BR>&gt; archives, you will find other postings reporting this error.<BR>&gt; <BR>&gt; For instance, in one of our computers here, the MPICH-1<BR>&gt; mpi.h has this:<B
 R>&gt; <BR>&gt; #define MPI_COMM_WORLD 91<BR>&gt; <BR>&gt; whereas the MPICH2 mpi.h has something else:<BR>&gt; <BR>&gt; #define MPI_COMM_WORLD ((MPI_Comm)0x44000000)<BR>&gt; <BR>&gt; As you can see, eve n MPI_COMM_WORLD is different on MPICH-1 and MPICH2.<BR>&gt; You cannot patch this by hand.<BR>&gt; You must use the correct mpi.h/mpif.h, associated to your<BR>&gt; mpicc and mpif90.<BR>&gt; <BR>&gt; You may want to compile everything again fresh.<BR>&gt; Object files and modules that were built with the wrong mpi.h<BR>&gt; will only cause you headaches, and the "Invalid communicator"<BR>&gt; error will never go away.<BR>&gt; Get rid of them before you restart.<BR>&gt; Do make clean/cleanall, or make cleandist.<BR>&gt; Even better: simply start from a fresh tarball.<BR>&gt; <BR>&gt; To compile, you should preferably use the MPICH2<BR>&gt; compiler wrappers mpif90 and mpicc.<BR>&gt; <BR>&gt; Wherever the CCSM3 Makefiles point to MPI include files,<BR>&gt; make sure the direc
 tories are those of MPICH2, not any other MPI.<BR>&gt; <BR>&gt; Likewise for the MPI library directories:<BR>&gt; they must be those associated to MPICH2.<BR>&gt; <BR>&gt; To save you headaches, you can u se full path names to<BR>&gt; the MPICH2 mpicc and mpif90.<BR>&gt; <BR>&gt; You may need to compile the ESMF library separately,<BR>&gt; as their makefiles seem to be hardwired not to use the MPI compiler<BR>&gt; wrappers.<BR>&gt; <BR>&gt; **<BR>&gt; <BR>&gt; As for 2), CCSM3 is an MPMD program with 5 executables.<BR>&gt; It cannot work correctly if you delete one of them.<BR>&gt; You actually eliminated the flux coupler, which coordinates<BR>&gt; the work of all other four components.<BR>&gt; The other components only talk to the coupler.<BR>&gt; Therefore, what probably happens<BR>&gt; is that the other four executables are waiting<BR>&gt; forever for the flux coupler to answer.<BR>&gt; <BR>&gt; **<BR>&gt; <BR>&gt; As for 3), besides requiring a substantial number of CPUs
 ,<BR>&gt; CCSM3 also needs a significant amount of memory.<BR>&gt; On how many nodes, and with how much memory on each,<BR>&gt; are you trying to run the job?<BR>&gt; Which resolution (T42, T31, T85)?<BR>&amp; gt; <BR>&gt; In any case, increasing the number of processors<BR>&gt; will not solve the MPI error message of 1),<BR>&gt; which requires using the correct mpi.h.<BR>&gt; <BR>&gt; **<BR>&gt; <BR>&gt; Only question 1) is a general MPI/MPICH question.<BR>&gt; Questions 2) and 3) are specific CCSM3 issues.<BR>&gt; It may be more productive to discuss them in the CCSM3 forum.<BR>&gt; <BR>&gt; In any case, let's hope you can get additional help here also.<BR>&gt; <BR>&gt; **<BR>&gt; <BR>&gt; I hope this helps.<BR>&gt; Gus Correa<BR>&gt; ---------------------------------------------------------------------<BR>&gt; Gustavo Correa<BR>&gt; Lamont-Doherty Earth Observatory - Columbia University<BR>&gt; Palisades, NY, 10964-8000 - USA<BR>&gt; --------------------------------------
 -------------------------------<BR>&gt; <BR>&gt; LSB wrote:<BR>&gt; &gt; Hi everyone,<BR>&gt; &gt; <BR>&gt; &gt; I want to run Community Climate System Model on our machine under <BR>&gt; &gt; MPICH2. I compile d it successfully. However, I got some error message <BR>&gt; &gt; about mpi during runnig it.<BR>&gt; &gt; <BR>&gt; &gt; 1) In the run script, I asked for 32 cpus ( use PBS batch system). After <BR>&gt; &gt; starting up mpd daemons, I wrote " <BR>&gt; &gt; /mnt/storage-space/disk1/mpich/bin/mpiexec -l -n 2 $EXEROOT/all/cpl : -n <BR>&gt; &gt; 2 $EXEROOT/all/csim : -n 8 $EXEROOT/all/clm : -n 4 $EXEROOT/all/pop : -n <BR>&gt; &gt; 16 $EXEROOT/all/cam" . <BR>&gt; &gt; The process is over quite quickly after I qsub it. With error message <BR>&gt; &gt; like:<BR>&gt; &gt; rank 5 in job 1 compute-0-10.local_46741 caused collective abort of <BR>&gt; &gt; all ranks<BR>&gt; &gt; exit status of rank 5: return code 1<BR>&gt; &gt; AND<BR>&gt; &gt; 14: Fatal error in MPI_Cart_shift:
  Invalid communicator, error stack:<BR>&gt; &gt; 14: MPI_Cart_shift(172): MPI_Cart_shift(MPI_COMM_NULL, direction=1, <BR>&gt; &gt; displ=1, source=0x2582aa0, dest=0x2582aa4) failed<BR>&gt; &gt; 14: MPI_Cart_shif t(80).: Null communi cator<BR>&gt; &gt; 15: Fatal error in MPI_Cart_shift: Invalid communicator, error stack:<BR>&gt; &gt; 15: MPI_Cart_shift(172): MPI_Cart_shift(MPI_COMM_NULL, direction=1, <BR>&gt; &gt; displ=1, source=0x2582aa0, dest=0x2582aa4) failed<BR>&gt; &gt; 5: Assertion failed in file helper_fns.c at line 337: 0<BR>&gt; &gt; 15: MPI_Cart_shift(80).: Null communicator<BR>&gt; &gt; 5: memcpy argument memory ranges overlap, dst_=0xf2c37f4 src_=0xf2c37f4 <BR>&gt; &gt; len_=4<BR>&gt; &gt; 9: Assertion failed in file helper_fns.c at line 337: 0<BR>&gt; &gt; 5:<BR>&gt; &gt; 9: memcpy argument memory ranges overlap, dst_=0x1880ce64 <BR>&gt; &gt; src_=0x1880ce64 len_=4<BR>&gt; &gt; 5: internal ABORT - process 5<BR>&gt; &gt; 9:<BR>&gt; &gt; 9: internal ABORT - proces
 s 9<BR>&gt; &gt; 4: Assertion failed in file helper_fns.c at line 337: 0<BR>&gt; &gt; 4: memcpy argument memory ranges overlap, dst_=0x1c9615d0 <BR>&gt; &gt; src_=0x1c9615d0 len_=4<BR>&gt; &gt; 4:<BR>&gt; &gt; 4: internal ABORT - process 4<BR>&gt; &gt; <BR>&gt; &gt; 2) What quite puzzeled me is that if I delete any one of the five (cpl, <BR>&gt; &gt; csim, clm, pop, cam ) , the model can running sucsessfully. For example, <BR>&gt; &gt; delete "cpl", I wro te "<BR>&gt; &gt; /mnt/storage-space/disk1/mpich/bin/mpiexec -l -n 2 $EXEROOT/all/csim : <BR>&gt; &gt; -n 8 $EXEROOT/all/clm : -n 4 $EXEROOT/all/pop : -n 16 $EXEROOT/all/cam" <BR>&gt; &gt; will be ok.<BR>&gt; &gt; but if I run all of the five at the same time, the error message as <BR>&gt; &gt; mentioned above will appear.<BR>&gt; &gt; <BR>&gt; &gt; 3) If ask for a few more cpus, things may become better, I guess. So I <BR>&gt; &gt; have a try . Ask for 34 cpus but still use 2+2+8+4+16=32 cpus, mpi <BR>&gt; &gt; error messa
 ge still exists.<BR>&gt; &gt; <BR>&gt; &gt; How should I solve the problem?<BR>&gt; &gt; Anyone can give some suggestions?<BR>&gt; &gt; <BR>&gt; &gt; Thanks in advace!<BR>&gt; &gt; <BR>&gt; &gt; <BR>&gt; &gt; L. S<BR>&gt; &gt; <BR>&gt; _______________________________________________<BR>&gt; mpich-discuss mailing list<BR>&gt; mpich-discuss@mcs.anl.gov<BR>&gt; https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss<BR><BR>
<HR>
更多热辣资讯尽在新版MSN首页! <A href="http://cn.msn.com/">立刻访问!</A> </BLOCKQUOTE>                                               <br /><hr />聊天+搜索+邮箱 想要轻松出游,手机MSN帮你搞定! <a href='http://3g.msn.cn/' target='_new'>立刻下载!</a></body>
</html>