FAMOUS

Main.BoundsChecking History

Hide minor edits - Show changes to output

Changed lines 22-23 from:
To pass bounds checking FAMOUS requires extra mods. These fixes have been tested with Intel and IBM compilers (with the exception of the Non-MPP mod), and do not affect the bit comparison of results.
to:
FAMOUS requires extra mods to pass bounds checking . These fixes have been tested with Intel and IBM compilers (with the exception of the Non-MPP mod), and do not affect the bit comparison of results.
Changed lines 39-41 from:
These fixes do not affect the results. I tested this by running FAMOUS for 1 year using standard compile options with and without mods. Also tested [=HadCM3=] 1 day run.

to:
Changed lines 6-7 from:
To switch on bounds checking, you will need a compile override.
to:
To switch on bounds checking, you need a compile override file.
Changed lines 6-7 from:
To switch on bounds checking, you will need to add a compile override file.
to:
To switch on bounds checking, you will need a compile override.
Added line 44:
Deleted lines 38-41:

!! Validation

Added lines 4-5:
!! Compile Overrides
Changed lines 19-20 from:

to:
!! Mods

Changed lines 39-52 from:
These fixes do not affect the results. I tested this by running FAMOUS for 1 year using standard compile options with and without mods. Also tested [=HadCM3=] 1 day run.
to:

!! Validation


These fixes do not affect the
results. I tested this by running FAMOUS for 1 year using standard compile options with and without mods. Also tested [=HadCM3=] 1 day run.


!! FFT Routines

Without looking in depth, most of the fixes seem OK. The FFT routines however are old and widely used code and so warrant further investigation.

Tested FAMOUS with bounds checking on, and all necessary fixes except @@FOURIE3A@@ included. Added @@PRINT@@ statements to @@FOURIER@@ to see size, shape etc of arguments passed to @@FTRANS@@.

The routine @@FOURIER@@ passes array arguments to @@FTRANS@@ in the old fortran 77 way, by passing the starting array element only. The compiler complains because the dummy array in @@FTRANS@@ is dimensioned to @@N@@ but the routine accesses beyond this, which presumably picks out the correct element of the actual array in @@FOURIER@@. I thought that the compiler ought to only allow access to the dimensions of the dummy array although it may make sense in terms of the actual array, however it seems to work here (perhaps because of the f77 style scalar array argument).
Changed line 36 from:
These fixes do not affect the results. I tested this by running for 1 year using standard compile options with and without mods.
to:
These fixes do not affect the results. I tested this by running FAMOUS for 1 year using standard compile options with and without mods. Also tested [=HadCM3=] 1 day run.
Changed line 8 from:
@fort    FCOM_OPTS=-g -C -qfixed -q64 -qrealsize=8 -qintsize=8 -qsigtrap
to:
       @fort    FCOM_OPTS=-g -C -qfixed -q64 -qrealsize=8 -qintsize=8 -qsigtrap
Changed line 13 from:
@fort    FCOM_OPTS=-i8 -r8 -w95 -CB -g -traceback
to:
       @fort    FCOM_OPTS=-i8 -r8 -w95 -CB -g -traceback
Changed lines 7-8 from:
[@ @fort   FCOM_OPTS=-g -C -qfixed -q64 -qrealsize=8 -qintsize=8 -qsigtrap @]
to:
[@
@fort    FCOM_OPTS=-g -C -qfixed -q64 -qrealsize=8 -qintsize=8 -qsigtrap
@]
Changed lines 12-16 from:
[@ @fort   FCOM_OPTS=-i8 -r8 -w95 -CB -g -traceback @]



to:
[@
@fort    FCOM_OPTS=-i8 -r8 -w95 -CB -g -traceback
@]



Added lines 7-8:
[@ @fort    FCOM_OPTS=-g -C -qfixed -q64 -qrealsize=8 -qintsize=8 -qsigtrap @]
Changed lines 10-13 from:



to:
[@ @fort    FCOM_OPTS=-i8 -r8 -w95 -CB -g -traceback @]



Changed lines 6-11 from:
* [=HPCx=] - @@/hpcx/devt/n02/n02-ncas/aosprey/famous/overrides/bounds_traceback@@
* Ruby - @@/disk2/annette/rdata/overrides/bounds_check@@



to:
* [=HPCx=] (IBM compiler) - @@/hpcx/devt/n02/n02-ncas/aosprey/famous/overrides/bounds_traceback@@
* Ruby (Intel compiler) - @@/disk2/annette/rdata/overrides/bounds_check@@



Added lines 9-11:


Changed lines 24-26 from:
These mods have been extracted from @@coupled_bugs4@@, which contains other fixes (related to specific STASH set ups) that we have not looked at.
to:
These mods have been extracted from @@coupled_bugs4@@, which contains other fixes (related to specific STASH set ups) that we have not looked at.

These fixes do not affect the results. I tested this by running for 1 year using standard compile options with and without mods.
Deleted lines 8-9:
Note that there is also a mod for running MPP on one processor only, @@mpp1x1.mod@@, which might be helpful for debugging on Ruby.
Page last modified on February 04, 2008, at 02:16 PM by annette