How to ensure that each particle's ID is unique during parallel execution? #4860
-
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi @1120805582, can you clarify how you are plotting exactly? (Python snippet?) By default, our 64bit particle indices are unique and not reassigned over simulation lifetime, including parallel execution. We do this by varying the high bits of each MPI rank for the ids we generate, which we call the |
Beta Was this translation helpful? Give feedback.
Hi @1120805582, can you clarify how you are plotting exactly? (Python snippet?)
Do you plot this while running via Python WarpX (PICMI) or from output data (plotfiles? openPMD?)?
By default, our 64bit particle indices are unique and not reassigned over simulation lifetime, including parallel execution.
We do this by varying the high bits of each MPI rank for the ids we generate, which we call the
cpu
part. We then combine this with lower bits, which we call the MPI-localid
part in AMReX and which is not unique in itself. Combined, this makes the parallelly uniqueidcpu
, which is 64bit.