[MITgcm-support] Porting MITgcm to Solaris x64

Patrick Heimbach heimbach at MIT.EDU
Wed May 30 17:26:28 EDT 2007


Bill,

you should not do step 7 i.e.
you should not comment out lines in SIZE.h
The fact that you had to comment out these lines
is that you were not using a SIZE.h customized to
your experiment, but instead ran into a "safety trap" compile failure
(reminding you that you need to use customized SIZE.h
rahter than default one in model/inc/)
You need to link the customized header from directory code/
So, after step 4. do this:

5. cd verification/exp2/build/
6. ../../../tools/genmake2 -of ../../../tools/build_options/ 
sunos_i86_f77 -mods ../code
7. make depend; make
8. ln -s ../input/* .
9. ./mitgcmuv > output.txt

For more, read manual, section 3.4 onward:
http://mitgcm.org/r2_web_testing/latest/online_documents/node94.html

-Patrick



On May 30, 2007, at 5:13 PM, william aiken wrote:

> Andrea,
>
>  I commented out only these lines:
>
> c These lines are here to deliberately cause a compile-time error.
> c If you see these lines in your .F files or the compiler shows them
> c as an error then it means you have not placed your configuration
> c files in the appropriate place.
> c You need to place you own copy of SIZE.h in the include
> c path for the model, and comment out these lines.
>
> Attached is my SIZE.h file.
>
> Thanks,
>
> Bill
>
>
> Andrea Molod wrote On 05/30/07 17:03,:
>> hi bill,
>> your step 7 below seems to have commented out the line
>> in SIZE.h that tells the model how many levels, which in
>> the case of exp2 should be 20. i think if you 'uncomment'
>> this line (why did you comment it out?) it should see
>> that there should be 20 levels and continue along.
>> andrea
>>
>> On Wed, 30 May 2007, william aiken wrote:
>>
>>
>>> Hi,
>>>
>>> I am porting MITgcm to Solaris x64. I expect the 32 bit binaries  
>>> will
>>> run on both AMD Opteron and Intel Woodcrest systems with Solaris 10.
>>>
>>> These are the steps that I have taken:
>>>
>>> 1. downloaded MITgcm_checkponts58.tar.gz
>>> 2. gunzipped and untarred the file.
>>> 3. mkdir tools/build_options
>>> 4. copied sunos_sun4u_f77 to sunos_i86_f77
>>> 5. cd verification/exp2/input
>>> 6. ran genmake2 and make depend
>>> 7. commented out lines in SIZE.h
>>> 8. make
>>> 9. ./mitgcmuv > output.txt yields 166 lines in
>>>    output.txt (attached) and these 2 lines to
>>>  the screen:
>>>
>>> S/R INI_PARMS: No value for delZ/delP/delR at K =   21
>>> STOP: ABNORMAL END: S/R INI_PARMS
>>>
>>> 10. I reviewed ../results/output.txt and it appears the next 2  
>>> lines in
>>> output.txt should have been:
>>>
>>> (PID.TID 0000.0001) S/R INI_PARMS ; starts to read PARM05
>>> (PID.TID 0000.0001) S/R INI_PARMS ; read PARM05 : OK
>>>
>>> I noted that results/output.txt has different parameters than my  
>>> run.
>>>
>>> It appears for my case that delZ has 20 elements, but mitgcm is  
>>> trying
>>> to access the 21st element.
>>>
>>> Any suggestions on what this behavior signifies are greatly  
>>> appreciated.
>>>
>>> Regards,
>>>
>>> Bill
>>>
>
> -- 
> William Aiken          Sun Microsystems, Inc.
> Phone: 781.442.3312    Market Development Engineering
> FAX: 781.442.1678      One Network Drive UBUR01-204
>                        Burlington, Massachusetts 01803
>
> C $Header: /u/gcmpack/MITgcm/model/inc/SIZE.h,v 1.27 2005/09/19  
> 18:42:35 baylor Exp $
> C $Name:  $
>
> c These lines are here to deliberately cause a compile-time error.
> c If you see these lines in your .F files or the compiler shows them
> c as an error then it means you have not placed your configuration
> c files in the appropriate place.
> c You need to place you own copy of SIZE.h in the include
> c path for the model, and comment out these lines.
>
> C
> CBOP
> C    !ROUTINE: SIZE.h
> C    !INTERFACE:
> C    include SIZE.h
> C    !DESCRIPTION: \bv
> C     *==========================================================*
> C     | SIZE.h Declare size of underlying computational grid.
> C     *==========================================================*
> C     | The design here support a three-dimensional model grid
> C     | with indices I,J and K. The three-dimensional domain
> C     | is comprised of nPx*nSx blocks of size sNx along one axis
> C     | nPy*nSy blocks of size sNy along another axis and one
> C     | block of size Nz along the final axis.
> C     | Blocks have overlap regions of size OLx and OLy along the
> C     | dimensions that are subdivided.
> C     *==========================================================*
> C     \ev
> CEOP
> C     Voodoo numbers controlling data layout.
> C     sNx :: No. X points in sub-grid.
> C     sNy :: No. Y points in sub-grid.
> C     OLx :: Overlap extent in X.
> C     OLy :: Overlat extent in Y.
> C     nSx :: No. sub-grids in X.
> C     nSy :: No. sub-grids in Y.
> C     nPx :: No. of processes to use in X.
> C     nPy :: No. of processes to use in Y.
> C     Nx  :: No. points in X for the total domain.
> C     Ny  :: No. points in Y for the total domain.
> C     Nr  :: No. points in Z for full process domain.
>       INTEGER sNx
>       INTEGER sNy
>       INTEGER OLx
>       INTEGER OLy
>       INTEGER nSx
>       INTEGER nSy
>       INTEGER nPx
>       INTEGER nPy
>       INTEGER Nx
>       INTEGER Ny
>       INTEGER Nr
>       PARAMETER (
>      &           sNx =  20,
>      &           sNy =  16,
>      &           OLx =   4,
>      &           OLy =   4,
>      &           nSx =   1,
>      &           nSy =   1,
>      &           nPx =   1,
>      &           nPy =   1,
>      &           Nx  = sNx*nSx*nPx,
>      &           Ny  = sNy*nSy*nPy,
>      &           Nr  =  23)
>
> C     MAX_OLX  - Set to the maximum overlap region size of any array
> C     MAX_OLY    that will be exchanged. Controls the sizing of exch
> C                routine buufers.
>       INTEGER MAX_OLX
>       INTEGER MAX_OLY
>       PARAMETER ( MAX_OLX = OLx,
>      &            MAX_OLY = OLy )
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support

---
Dr Patrick Heimbach | heimbach at mit.edu | http://www.mit.edu/~heimbach
MIT | EAPS, 54-1518 | 77 Massachusetts Ave | Cambridge, MA 02139, USA
FON: +1-617-253-5259 | FAX: +1-617-253-4464 | SKYPE: patrick.heimbach





More information about the MITgcm-support mailing list