Skip to content

fix(rocprofiler-systems): Allow MPI tests to function#6475

Draft
kcossett-amd wants to merge 2 commits into
mainfrom
users/kcossett-amd/mpi-env-test-propagation
Draft

fix(rocprofiler-systems): Allow MPI tests to function#6475
kcossett-amd wants to merge 2 commits into
mainfrom
users/kcossett-amd/mpi-env-test-propagation

Conversation

@kcossett-amd

@kcossett-amd kcossett-amd commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Motivation

Jira ID: AIPROFSYST-524

Note: I'm not enabling these tests to run on TheRock CI. I'm just fixing things so that if someone were to build with THEROCK_ENABLE_MPI, then these tests would pass.

MPI tests were originally disabled as if I build with THEROCK_ENABLE_MPI, then all mpi tests would fail with:

--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    prterun-exec-failed
from the file:
    /therock/output/build/third-party/openmpi/build/stage/share/openmpi/help-mpirun.txt: No such file or directory
But I couldn't find that topic in the file.  Sorry!
--------------------------------------------------------------------------

Open MPI bakes its build-time install prefix (/therock/output/... from the manylinux container) into its binaries as string literals. Outside the container that path doesn't exist, so plugin discovery fails (prterun-exec-failed) and even the error message can't be looked up (help-mpirun.txt: No such file or directory).

Technical Details

Open MPI 5.x is three independently-prefixed layers (OMPI/OPAL, the PRRTE launcher, and PMIx), each with its own override env var. Setting these (OPAL_PREFIX, PRTE_PREFIX, PMIX_PREFIX) to rocm_path (the real install root) relocates every layer's file lookups to where the files actually are.

Test Plan

Manual Testing

Test Result

Locally, all tests pass.

100% tests passed, 0 tests failed out of 26

Label Time Summary:
all               =  91.04 sec*proc (24 tests)
baseline          =   2.31 sec*proc (1 test)
binary_rewrite    =  55.56 sec*proc (10 tests)
cleanup           =   0.16 sec*proc (1 test)
full              =  91.04 sec*proc (24 tests)
global            =   0.56 sec*proc (2 tests)
mpi               =  91.04 sec*proc (24 tests)
prerequisite      =   0.41 sec*proc (1 test)
sampling          =  11.26 sec*proc (3 tests)
sys_run           =  21.90 sec*proc (10 tests)

Total Test time (real) =  91.62 sec

Submission Checklist

@therock-pr-bot

therock-pr-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown

✅ All Checks Passed — Ready for Review

Check Status Details
🌿 Branch Name ✅ Pass
📝 PR Title/Description ✅ Pass
Forbidden Files ✅ Pass
🧪 Unit Test ✅ Pass PR does not contain code files — Unit Test auto-passed
🔎 pre-commit ✅ Pass
🚫 Draft PR 🔜 To Be Enabled
🚩 Feature Flag 🔜 To Be Enabled
📊 Code Coverage 🔜 To Be Enabled
🤖 therock-pr-bot ✅ Pass

🎉 All checks passed! This PR is ready for review.

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

@therock-pr-bot

Copy link
Copy Markdown

🎉 All checks passed! This PR is ready for review.

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

Labels

None yet

Projects

Status: TODO

Development

Successfully merging this pull request may close these issues.

1 participant