[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