axom icon indicating copy to clipboard operation
axom copied to clipboard

Simplify logic handling skips in DistributedClosestPoint

Open gunney1 opened this issue 2 years ago • 2 comments

We can simplify the logic that allows ranks to skip searches for query points from query partitions that are far away. We are currently sending short messages to let the searching rank to know it doesn't have to do a particular search. This complicated logic boils down to a way to account for the searches the rank can skip. It can be replaced as follows.

  1. All-gather the query mesh bounding boxes at the same time we all-gather the object mesh bounding box.
  2. Before the search loop begins, every rank compares its object bounding boxes with the gathered query bounding boxes to determine how many query partitions it is close to. This is how many messages it would receive.
  3. Change the search loop to loop over the number of messages it should receive.

This change can improve performance, because it removes the short skip messages. It is not likely to take longer to all-gather a second set of bounding boxes.

gunney1 avatar Aug 21 '22 05:08 gunney1

@gunney1 was this handled in #921, or is it still an ongoing concern?

kennyweiss avatar Jan 17 '23 18:01 kennyweiss

This is a nice-to-have optimization

rhornung67 avatar Jan 08 '24 22:01 rhornung67

This was handled by PR https://github.com/LLNL/axom/pull/921, as @kennyweiss mentioned. Closing.

gunney1 avatar May 03 '24 20:05 gunney1