xcompact3d / x3d2

https://xcompact3d.github.io/x3d2
BSD 3-Clause "New" or "Revised" License
3 stars 4 forks source link

Reordering test fails when run in parallel #86

Closed pbartholomew08 closed 3 months ago

pbartholomew08 commented 3 months ago

Current test is performed in serial, which passes. However if ran in parallel it fails with SIGFPE, with @Nanoseb tracked this down to it should be passed n_padded rather than n_loc.

Proposal: 1) Duplicate test for serial and parallel execution 2) Rewrite ordering operations to us padded values

semi-h commented 3 months ago

This bit may also cause a problem with parallel runs.

https://github.com/xcompact3d/x3d2/blob/8024542e37a7c43c2e0f44ffb5e5454b23f22e86/tests/test_reordering.f90#L71-L73

If we divide only one of the dimensions by nproc then its equivalent to a slab decomposition and it should be fine for the tests. Or we we want to test with 2D decomposition then we might have nproc_x and nproc_y where nproc = nproc_x*nproc_y.

Nanoseb commented 3 months ago

This bit may also cause a problem with parallel runs.

https://github.com/xcompact3d/x3d2/blob/8024542e37a7c43c2e0f44ffb5e5454b23f22e86/tests/test_reordering.f90#L71-L73

If we divide only one of the dimensions by nproc then its equivalent to a slab decomposition and it should be fine for the tests. Or we we want to test with 2D decomposition then we might have nproc_x and nproc_y where nproc = nproc_x*nproc_y.

This doesn't cause any problem at the moment because the test doesn't run a proper computation. It isn't realistic/meaningful, but I am tempted to keep it that way as it test having a domain decomposition in each direction.