Skip to content

Reduce redundancy of FoT data in volume files #6943

@nilsvu

Description

@nilsvu

We currently store the full FoTs in every volume data observation. Since they grow in size as the simulation progresses and are currently never truncated (except in worldtube simulations, where they are updated so often that they have to be truncated), the size of FoT data in the volume file grows quadratically with time. @nikwit measured this to be tens of MB around 800M of a BBH, which is not too bad at this point but will be a lot of data for long simulations.

One option to resolve this is to store only the FoT evaluated at the observation time in the volume observation. FoTs already support this (see FunctionOfTime::create_at_time), so this could be done quite easily. It does, however, break time interpolation (e.g. the SpacetimeInterpolator class) because we can no longer evaluate the FoT between spatial slices. For this we could store the most recent full FoT once in the volume data subfile (not in each observation).

In addition, we could store the domain (static block maps) just once in the volume data subfile, as it never changes throughout a simulation (at least while we don't do regridding). I haven't checked if the domain is large enough in size to make this relevant.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions