Skip to content

Conversation

@yfguo
Copy link
Contributor

@yfguo yfguo commented Oct 25, 2025

Trying do multiple polling for the recv and send queue to improve the message latency. This helps the for multiple incoming messages or deferred sends use cases. Two CVARs are add to control the maximum number of loops in one progress call If any of the queue is empty, POSIX will skip the rest iterations. The CVARs are default to 1 which disables the multi-polling.

I got some unexpected result. I was testing with test/mpi/bench/p2p_bw and it was improving the throught with send/recv loops set to 8.
image

But, when I try OSU_BW, the results are inverted. I need to understand why this is the case.

image

Pull Request Description

Author Checklist

  • Provide Description
    Particularly focus on why, not what. Reference background, issues, test failures, xfail entries, etc.
  • Commits Follow Good Practice
    Commits are self-contained and do not do two things at once.
    Commit message is of the form: module: short description
    Commit message explains what's in the commit.
  • Passes All Tests
    Whitespace checker. Warnings test. Additional tests via comments.
  • Contribution Agreement
    For non-Argonne authors, check contribution agreement.
    If necessary, request an explicit comment from your companies PR approval manager.

@yfguo yfguo force-pushed the fix-shm-progress-multi-polling branch from 4626de4 to fdeff50 Compare October 29, 2025 19:37
@yfguo
Copy link
Contributor Author

yfguo commented Oct 30, 2025

I got some unexpected result. I was testing with test/mpi/bench/p2p_bw and it was improving the throught with send/recv loops set to 8.
image

But, when I try OSU_BW, the results are inverted. I need to understand why this is the case.

image

@yfguo yfguo force-pushed the fix-shm-progress-multi-polling branch from fdeff50 to 37c5480 Compare November 5, 2025 20:42
@yfguo yfguo requested a review from raffenet November 5, 2025 20:44
@yfguo
Copy link
Contributor Author

yfguo commented Nov 5, 2025

I also changed the default of the CVARs to 1. This way, the multi-polling becomes a opt-in feature.

Trying do multiple polling for the recv and send queue to
improve the message latency. This helps the for multiple
incoming messages or deferred sends use cases. Two CVARs are
add to control the maximum number of loops in one progress call
If any of the queue is empty, POSIX will skip the rest iterations.
@yfguo yfguo force-pushed the fix-shm-progress-multi-polling branch from 37c5480 to 0f36b33 Compare November 5, 2025 20:53
@yfguo
Copy link
Contributor Author

yfguo commented Nov 26, 2025

The usefulness of the patch need more investigation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants