[MITgcm-devel] timing test

Jean-Michel Campin jmc at ocean.mit.edu
Sat Oct 15 13:27:44 EDT 2005


Hi,

I did some 1.year tests with H&S 20.levels on CS-grid (same set-up as
the tutorial), on the myrinet cluster, using 6 nodes, with ifc compiler,
and find some curious things in the timing info that the model produces:

1) UPDATE_CG2D takes more than SOLVE_FOR_PRESSURE
(And I don't know why, since there is only 1 exch in UPDATE_CG2D)
UPDATE_CG2D: Wall clock time:   1007.
SOLVE_FOR_PRESSURE: Wall clock time:   904.

Now, if I change it to only update the preconditioner (where the
exch is) 1 every 192 iterations (instead of every iter),
time in UPDATE_CG2D goes down (as expected), but double
in SOLVE_FOR_P:
UPDATE_CG2D:Wall clock time:   24.7
SOLVE_FOR_PRESSURE: Wall clock time:   1860.
I checked that the number of iterations that the solver
is doing is the same (16, sometime 15) in both cases.
The only explanation I can see is that, in the 1rst case, part of
the time spent in solve_for_p is counted as been spent in update_cg2d.

2) when I change to Olx=Oly=3 instead of =2, the total time increases
by more than 50.%, and the parts that take more time
(up to a doubling) are where 3.D exch are called.
This slow-down surprises me (has something to do with
the volume of data that are exchanged ?).

If, in the Shapiro filter, I only do 2 UV-3D exch per iteration
instead of 4 (this new thing that I put recently, but which
requires Olx=Oly=3), the total time is reduced by ~17.% (and get a
reduction of 43.% in the shapiro part); and this looks reasonable to me.

Any comment ?

Jean-Michel




More information about the MITgcm-devel mailing list