[MITgcm-devel] fixing REAL4_IS_SLOW
Jean-Michel Campin
jmc at ocean.mit.edu
Mon Oct 27 20:27:21 EDT 2008
Hi Martin,
I changed solid-body.cs-32x32x1 & inverted_barometer
to test the #undef REAL4_IS_SLOW
I added few diagnostics + mnc in inverted_barometer.
You could add more diagnostics (or even add a fresh-water
forcing in inverted_barometer, since sBeta is zero, it will
not change the solution) if you want to test more things.
Regarding a full test (applied to all experiments), just
need to change eesupp/inc/CPP_EEOPTIONS.h and it should do it.
There is one thing that I don't want, and it's this:
> or maybe that can be overriden with a -UREAL4_IS_SLOW in a
> build_options file, I haven't tried that yet?)
because genmake/makedepend/make are likely to get lost at some point,
and ends up not beeing sure of what this test means at the end.
It could be that I am the only one to think this way, but the
recent cyrus makedepend issue did not help me to change my mind.
Cheers,
Jean-Michel
On Mon, Oct 27, 2008 at 07:28:34AM +0200, Martin Losch wrote:
> Hi Jean-Michel,
>
> checked in, yes CPP_EEOPTIONS.h was no different, just for the test
> summary that I sent in the last email I undefined REAL4_IS_SLOW and
> changed it back afterwards.
>
> verification: solid-body and inverted_barometer are good choices; the
> inverted_barometer is such a superfluous experiment, just testing the
> ATMOSPHERIC_LOADING flag, that is long used in other experiments as
> well. With this REAL4_IS_SLOW flag it will have some meaning. On the
> other hand it just tests the basic gfd, maybe add some diagnostics (and
> mnc of course)?
>
> I was also thinking of having a dedicated test where everything is
> tested like this:
> >> cvs co MITgcm
> >> run ./script_that_modifies eesupp/inc/CPP_EEMACROS.h (to set #undef
> REAL4_IS_SLOW, or maybe that can be overriden with a -UREAL4_IS_SLOW in a
> build_options file, I haven't tried that yet?)
> >> run ./testreport
> just to see if compilation and execution of code work, because that was
> definitely broken; this test will not, of course, test the accuracy. What
> do you think?
>
> Martin
>
> On 27 Oct 2008, at 02:13, Jean-Michel Campin wrote:
>
>>
>> Martin,
>>
>> looked at those 2 files:
>> CPP_EEMACROS.h and CPP_EEOPTIONS.h
>> from your faulks/scratch */eesupp/inc dir
>> and you should check-in CPP_EEMACROS.h
>> (CPP_EEOPTIONS.h has not changed, right ?)
>>
>> And I started to test this on:
>> solid-body.cs-32x32x1
>> + inverted_barometer (Not yet added mnc)
>> with g77, gfortran & ifort (on my laptop) and seems to work.
>> get all 16 identical digits between the 3 compilers, for both exp.
>> I also tried natl_box (with mnc), it runs with g77 but I am getting
>> floating exception / floating invalid with gfortran / ifort
>> (wscale_ in kpp_routines.f).
>>
>> I can try pgf once we've decided which one to switch to _rs=real*4
>>
>> Cheers,
>> Jean-Michel
>> _______________________________________________
>> MITgcm-devel mailing list
>> MITgcm-devel at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel
More information about the MITgcm-devel
mailing list