[MITgcm-support] package checkpointing issue
Matthew Mazloff
mmazloff at MIT.EDU
Mon Sep 18 10:29:32 EDT 2006
Hello all,
When checkpointing the model state, SUBROUTINE
WRITE_CHECKPOINT, first checks to see
IF (
& ( .NOT.modelEnd .AND. (permCheckPoint.OR.tempCheckPoint) )
& .OR.
& ( modelEnd .AND. .NOT.(permCheckPoint.OR.tempCheckPoint) )
& ) THEN
CALL WRITE_CHECKPOINT_NOW(
& permCheckPoint, myTime, myIter, myThid )
ENDIF
For package checkpointing it appears this is not done; there is no
equivalent IF statement in packages_write_pickup. So package pickups
are being written at every timestep...as more packages are added this
is significantly hurting performance. Adding the seaice package has
slowed my model down by a factor of 4.5, and though I haven't done
any profiling, my first guess is that it is a result of this
significant increase in I/O.
Two possible remedies...take the call to PACKAGE_WRITE_PICKUP out of
THE_MAIN_LOOP and call it with WRITE_CHECKPOINT_NOW, or add an
equivalent if statement in PACKAGE_WRITE_PICKUP.
Thank you,
Matt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20060918/89eb7980/attachment.htm>
More information about the MITgcm-support
mailing list