Skip to content

ch4/ofi: add mr cache for FI_HMEM_MR#7864

Open
hzhou wants to merge 3 commits into
pmodels:mainfrom
hzhou:2606_ofi_mr_cache
Open

ch4/ofi: add mr cache for FI_HMEM_MR#7864
hzhou wants to merge 3 commits into
pmodels:mainfrom
hzhou:2606_ofi_mr_cache

Conversation

@hzhou

@hzhou hzhou commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Pull Request Description

The provider (e.g. EFA) may not cache internally with mr registration.
Without caching, the overhead of mr registration will hurt performance.

Add MPIDI_OFI_mr_cache facility to cache mrs in MPICH. Use a simple
array-based cache for:
1. simplicity
2. cache size limit and LRU eviction
3. stale cache entry detection (optional)

[skip warnings]

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.

nmnobre and others added 3 commits July 1, 2026 10:08
Expose buffer id so MPICH layer can use buffer id to manage caches.
Add function to retrieve buffer id.
The provider (e.g. EFA) may not use cache internally with mr
registration. Without caching, the overhead of mr registration will kill
most performance.

Add MPIDI_OFI_mr_cache facility to cache the mrs in MPICH.

Use the simple array for cache for:
    1. simplicity
    2. cache size limit and LRU eviction
    3. in case we need check for stale cache entries
@hzhou

hzhou commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

test:mpich/ch4/ofi

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