ECP-copa / Cabana

Performance-portable library for particle-based simulations
Other
212 stars 50 forks source link

Add MPI support for Periodic Boundaries and Cartesian Decompositions #77

Open sslattery opened 5 years ago

sslattery commented 5 years ago

Many applications in PIC and MD operate on a Cartesian Domain decomposition and often employ periodic boundary conditions. Our communication structures currently do not consider a Cartesian case and are instead more general. Because of this, we may miss opportunities for optimization. In addition, it makes support for periodic boundaries difficult.

sslattery commented 5 years ago

Discussed this further with @streeve today - there is a clear implementation path forward in applications without this infrastructure. However, future analysis with ExaMiniMD to see if their Cartesian communication patterns and inline coordinate mapping is significantly more performant on Summit/Sierra

sslattery commented 4 years ago

After some further discussion with @streeve today it seems this would be best resolved with a Cabana/Cajita merger. This would allow for combined Cartesian structure with particles in the communication plan which naturally allows for partitioning and handling periodicity.

streeve commented 4 years ago

Noting this can now be done with Cajita as the last part of #197