Draft: Reduce the number of activated comms
Compare changes
Possible improvement:
The logic is that if you recurse a few levels on the subtask, you may not have any two sub-cells that touch over the border and are active. You may as well not run the comm in that case. You probably want the task itself (i.e. the subpair) still as it will deal with the dependencies and will abort quickly anyway.