ECP-copa / Cabana

Performance-portable library for particle-based simulations
Other
188 stars 51 forks source link

Enable global particle redistribution based on the grid #707

Closed streeve closed 5 months ago

streeve commented 7 months ago

While it should often be avoided, global communication is occasionally needed in applications. This uses the background grid to determine the rank to send any particle to (including removing those outside the global domain).

Still to do:

streeve commented 7 months ago

@kwitaechong can you test this as a replacement for your custom migrateAllToAll?

streeve commented 7 months ago

Currently relying on KOKKOS_CLASS_LAMBDA without requiring C++20 causing the CI failures

streeve commented 6 months ago

retest this please.

streeve commented 6 months ago

@kwitaechong can you test on Summit or Frontier to find where the device failure is occurring?

streeve commented 6 months ago

Manually checked that tests pass with SYCL. Should be ready to merge once it's removed from Cuda-SYCL tests

streeve commented 5 months ago

I/O timeouts unrelated