[MITgcm-support] problem with compilation

jeff polton jpolton at ucsd.edu
Thu Nov 17 16:47:35 EST 2005


Thanks everyone for your help and suggestions. By piecing together  
various bits of advice and with a big dose of help from the NERSC  
consultant I've got the MITgcm running on a new IBM SP:  
seaborg.nersc.gov.

$uname -a
AIX s00513 2 5 006006564C00

Here is the optfile for an MPI run incase anyone else needs it in the  
future:

#!/bin/bash
#
# Run on seaborg.nersc.gov 147Nov 2005
#
# Also had to change "ETIME" to "ETIME_" in timers.F (JP 14Nov05)
#
MAKEDEPEND='$(TOOLSDIR)/cyrus-imapd-makedepend/makedepend'
DEFINES='-DWORDLENGTH=4 -DNML_TERMINATOR=" /"'

CPP='/lib/cpp -P'
FC='mpxlf95_r -c'
LINK='mpxlf95_r $(NETCDF)'
LIBS=' -lessl'

FFLAGS='-qfixed=132 -bmaxdata:0x80000000'
FOPTIM='-O3 -qarch=pwr3 -qtune=pwr3 -qcache=auto -qmaxmem=-1'
NOOPTFLAGS=' '

Thanks again,

Jeff Polton

On Nov 15, 2005, at 3:27 PM, m. r. schaferkotter wrote:

> hey jeff;
> you certainly persevere...
>
> i thought i would include the options file that i use on an sp3  
> without incident
> (note it was included with MITgcm distribution and i only modified   
> one line, the INCLUDES).
>
> #!/bin/bash
> #
> #  $Header: /u/gcmpack/MITgcm/tools/build_options/sp3+mpi,v 1.1  
> 2005/01/13 00:16:31 ce107 Exp $
> #
>
> #  tested on blackforest, ce107 Jan 2005
>
>
> S64='$(TOOLSDIR)/set64bitConst.sh'
> MAKEDEPEND=makedepend
> DEFINES='-DALLOW_USE_MPI -DALWAYS_USE_MPI -DTARGET_AIX -DWORDLENGTH=4'
>
> INCLUDES='-I/usr/lpp/ppe.poe/include/thread'
> CPP='/lib/cpp -P'
> CC='mpcc_r -q64'
> FC='mpxlf95 -q64'
> LINK='mpxlf95_r -q64'
> LIBS='-L/usr/local/apps/mass -lmass'
> FFLAGS='-qfixed=132'
> FOPTIM='-O3 -qarch=pwr3 -qtune=pwr3 -qcache=auto -qmaxmem=-1'
> FC_NAMEMANGLE="#define FC_NAMEMANGLE(X) X"
>
>
>
> here/s the build script that i use:
>
> r4n3.navo.hpc.mil% cat build.mpi.csh
> #!/bin/csh
>
> setenv ROOTDIR   /u/home/schaferk/MITgcm
>
> ${ROOTDIR}/tools/genmake2  "-mods=../code"  
> "-disable=gmredi,kpp,zonal_filt,shap_filt" \
> "-mpi" "-optfile=${ROOTDIR}/tools/build_options/sp3+mpi"
>
> #"-mpi" "-optfile=${ROOTDIR}/tools/build_options/linux_ia32_pgf77+mpi"
>
> make CLEAN  &&  make makefile  &&  make depend  &&  make
>
>
> also you don/t say what LoadLeveler macros you define.
> in the script that gets 'llsubmit'ed i have the following at the top:
>
> #@ class             = background
> #@ job_name          = mitgcm
> #@ job_type          = parallel
> #@ output            = $(job_name).$(jobid).out
> #@ error             = $(job_name).$(jobid).err
> #@ account_no        = NRLSS037
> #@ wall_clock_limit  = 04:00:00
> #@ node_usage        = not_shared
> #@ network.MPI       = css0,shared,US
> #@ environment       =  
> ENVIRONMENT=BATCH;MP_EUILIB=us;MP_EUIDEVICE=css0;MP_SHARED_MEMORY=YES; 
> MP_INTRDELAY=100
> #@ node              = 1
> #@ tasks_per_node    = 4
> #@ resources         = ConsumableCpus(1) ConsumableMemory(32 mb)
> #@ notification      = never
> #@ queue
>
> you can change the class to a different queue (like batch), and also  
> the tasks_per_node.
>
> hope this helps.
> michael
>
>
> On Tuesday, Nov 15, 2005, at 16:10 US/Central, jeff polton wrote:
>
>> Constantinos,
>>
>>> Since you've built an MPI executable you should use poe to launch it.
>>
>> That was indeed my hope but running it from the command line with poe  
>> or as a batch file is met with similar frustration. Actually the poe  
>> route gives a different error message which may help the diagnosis:
>>
>> %poe ./mitgcmuv > output.txt -nodes 1 -tasks_per_node 16 -retry 30  
>> -retrycount 10
>>
>> --------------------------------------------------------------
>>  User: jeff                       Repo: m556
>>  Job Name: <none specified>       Group: m556
>>  Class Of Service: interactive    Job Class: interactive
>>  Job Accepted: Mon Nov 14 15:35:42 2005
>> --------------------------------------------------------------
>>
>> llsubmit: Processed command file through Submit Filter:  
>> "/usr/common/nsg/sbin/subfilter".
>> sh: ./mitgcmuv: 0403-006 Execute permission denied.
>> ERROR: 0031-250  task 11: Terminated
>> ERROR: 0031-250  task 0: Terminated
>> ERROR: 0031-250  task 4: Terminated
>> ERROR: 0031-250  task 7: Terminated
>> ERROR: 0031-250  task 9: Terminated
>> ERROR: 0031-250  task 14: Terminated
>> ERROR: 0031-250  task 2: Terminated
>> ERROR: 0031-250  task 3: Terminated
>> ERROR: 0031-250  task 5: Terminated
>> ERROR: 0031-250  task 6: Terminated
>> ERROR: 0031-250  task 8: Terminated
>> ERROR: 0031-250  task 10: Terminated
>> ERROR: 0031-250  task 12: Terminated
>> ERROR: 0031-250  task 13: Terminated
>> ERROR: 0031-250  task 15: Terminated
>>
>>
>> But the executable is executable by all:
>> %ls -lrt mit*
>> -rwx------    1 jeff     m556      5195296 2005-11-14 15:28 mitgcmuv
>>
>> Hmmm. Anyone seen anything similar before?
>>
>> Thanks,
>> Jeff
>>
>> On Nov 15, 2005, at 12:23 PM, Constantinos Evangelinos wrote:
>>
>>> On Tuesday 15 November 2005 13:57, jeff polton wrote:
>>>
>>>> Hi,
>>>> Using the newest genmake2 and DEFINES='-DWORDLENGTH=4' does let me  
>>>> get
>>>> further down the road to a running version of the MITgcm on an IBM  
>>>> SP.
>>>> In fact I now have an executable file but it crashes rather quickly:
>>>>
>>>> ./mitgcmuv: Syntax error at line 1: `)' not expected.
>>>
>>> Since you've built an MPI executable you should use poe to launch it.
>>>
>>> Constantinos
>>> -- 
>>> Dr. Constantinos Evangelinos
>>> Department of Earth, Atmospheric and Planetary Sciences
>>> Massachusetts Institute of Technology
>>>
>>> _______________________________________________
>>> MITgcm-support mailing list
>>> MITgcm-support at mitgcm.org
>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>>
>>
>> _______________________________________________
>> MITgcm-support mailing list
>> MITgcm-support at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>
>




More information about the MITgcm-support mailing list