add grompp warning for suitableness for domain decomposition
Faezeh Pousaneh once showed us a simulation that was in a rectangular prism that was long in the x dimension. This does not suit domain decomposition where we first partition the system along planes normal to the z axis, because you run into minimum-size limits quickly. grompp could warn if there is a dimension other than z that was longer than the other dimensions by some significant factor (2?). mdrun could warn similarly, but can probably be a bit smarter when it knows the actual number of ranks, perhaps.
Similarly, systems with spatially inhomogeneous workloads (e.g. membranes, surfaces) might benefit from choosing the right orientation even when their sizes are similar in each dimension. But I don't recall if that's significant other than at high parallelization, and it's certainly harder to detect at grompp time (would require some kind of grid search).
#1 Updated by Berk Hess almost 4 years ago
This doesn't really warrant a warning, since there will be no incorrect results (and no issue when you don't use DD). But since it affects performance a lot, we can make an exception to our grompp warning rule, because I agree that most users will ignore mdrun warnings.
We should check PBC, walls and semiisotropic pressure coupling, Ewald 3DC and other stuff that is orientation dependent before issuing the warning.
Membranes are not particularly problematic and difficult to detect anyhow. Inhomogeneous, effectively flat systems would indeed also benefit from orientation, but I don't think there are many of those.
But conversely, having a box with large z might not be problematic if it contains only a cubic non-vacuum part (I have many such runs); but currently DD only decomposes based on volume, which is still problematic. It should look at the atom distribution as well.