Open psychocoderHPC opened 2 years ago
A scatch with 3 particle patches. Patches are overlapping but each particle is only linked from one particle patch.
Thanks for raising this. So just to clarify: you ask if the patch constraints allow
I think that sounds reasonable and should cause little issues, let me check if the wording needs an update.
Current wording as of 1.1.0:
Patches of particles must be hyperrectangles [...]. The union of all particle patches must correspond to the complete particle's records.
That does not mean it has to be unique, so we are good here. You can do that and it fulfills the standard in openPMD 1.X :) There is also no plan to restrict this in 2.X.
Thanks for the answer.
Sounds good, marked for clarification in 2.0.
OpenPMD is defining particle patches https://github.com/openPMD/openPMD-standard/blob/1e1d1fe9fd5914628898ab36fb516c4cfc27eeca/STANDARD.md#sub-group-for-each-particle-species to speedup visualization/checkpointing and other operations. Particle patches are a spatial region description with a link, defined by numParticles and numParticlesOffset to the large particle data array. The standard is not defining if it is allowed that the description of a patch (offset and extent) must be unique or if it is allowed that patch description to overlap.
example:
IMO it is not a problem and very useful but with the restriction that a particle described by
numParticles100
andnumParticlesOffset
can only exist in one patch even if two patches overlap in their spatial description.Can we clarify this in the standard?
I came up with this during the refactoring of the particle IO in PIConGPU where I like to introduce some kind of load balancing. To be more flexible I would like to linearize my domain to have more possibilities and simpler solutions for the domain decomposition. If I linearize my domain I will end up with multiple patches overlapping in there spatial description but where each particle is guaranteed to be linked only from one patch.