<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<STYLE>.hmmessage P {
        PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px
}
BODY.hmmessage {
        FONT-FAMILY: Verdana; FONT-SIZE: 10pt
}
</STYLE>

<META name=GENERATOR content="MSHTML 8.00.6001.18854"></HEAD>
<BODY class=hmmessage>
<DIV dir=ltr align=left><SPAN class=937023714-23122009><FONT color=#0000ff 
face=Arial>You need to compile with mpif77 or mpif90, not just f77 or 
f90.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=937023714-23122009><FONT color=#0000ff 
face=Arial></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=937023714-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=OutlookMessageHeader align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma><B>From:</B> mpich-discuss-bounces@mcs.anl.gov 
  [mailto:mpich-discuss-bounces@mcs.anl.gov] <B>On Behalf Of 
  </B>LS<BR><B>Sent:</B> Wednesday, December 23, 2009 6:04 AM<BR><B>To:</B> 
  MPICH<BR><B>Subject:</B> Re: [mpich-discuss] how to deal with these 
  errors?<BR></FONT><BR></DIV>
  <DIV></DIV>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> 
  </B></BLOCKQUOTE></BODY></HTML>