[Developers] optimising the size of checkpoints
Thomas Radke
tradke at aei.mpg.de
Sun Jun 19 18:24:19 CDT 2005
Thomas Radke wrote:
> Erik Schnetter wrote:
>
>> Since the tags are tables, it would need to be checkpoint=0 or
>> checkpoint="no" (with quotes). I would prefer the former, which would
>> make it CCTK_INT, the same as boolean parameters.
>
>
> Sounds good to me. Would it also make sense to code in the integer how
> many timelevels should be checkpointed ?
>
>
>> How much would be saved? Did you try estimating what fraction of data
>> is unnecessary?
>
>
> Well, you people doing productions runs tell me. Christian estimates a
> reduction of ~30-40% (which sounds a bit too much to me) but that was
> probably with Carpet::enable_all_storage left to "yes", Christian ? It
> would also need careful revision of analysis thorns before one can add
> those do-no-checkpoint tags to grid variables. But as a start I'll
> prepare a patch which implements such tags and also adds the necessary
> logic to the existing checkpoint methods.
After doing some tests with checkpointing and Carpet::enable_all_storage
= "no" I reconsidered my suggestion above and put its implementation on
a low priority level.
It turns out that checkpointing Carpet runs with only necessary storage
switched on reduces the overall size of the checkpoint drastically (from
480 MBytes down to 300 MBytes for
AEIThorns/BSSN_MoL/par/BenchBSSN_MoL_40l_3rl.par on a single processor).
The only change necessary in the parfile was to set ADM_BSSN::timelevels
= 3.
Rather than implementing the checkpoint tags feature now, I propose to
change the default for Carpet::enable_all_storage and fix existing
parfiles accordingly. This seems much easier and has the most impact on
optimising the size of checkpoints.
--
Cheers, Thomas.
More information about the Developers
mailing list