Skip to content

Runner: make MPI bind-to configurable - #797

Open
one (alephpiece) wants to merge 6 commits into
microsoft:mainfrom
alephpiece:one/runner-bind-to-configurable
Open

Runner: make MPI bind-to configurable#797
one (alephpiece) wants to merge 6 commits into
microsoft:mainfrom
alephpiece:one/runner-bind-to-configurable

Conversation

@alephpiece

Copy link
Copy Markdown
Contributor

Description

Make MPI process binding configurable in SuperBench runner modes so benchmarks with their own topology-aware affinity logic can disable the default -bind-to numa behavior when needed.

Major Revision

  • Add a new optional bind_to field for mpi modes in the runner
  • Keep backward compatibility by defaulting bind_to to numa
  • Update MPI command generation to use the configured bind_to value instead of a hard-coded numa

@alephpiece
one (alephpiece) requested a review from a team as a code ownerMarch 27, 2026 02:35
@alephpiece

Copy link
Copy Markdown
ContributorAuthor

@microsoft-github-policy-service agree

polarG

This comment was marked as duplicate.

@polarGHongtao Zhang (polarG) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall: The feature is well-motivated and docs are solid, but the PR needs fixes before merge. See inline comments for details.

#SeverityFinding
1BLOCKERExisting MPI tests break — missing bind_to key on test mode dicts
2SHOULD-FIXNo input validation on bind_to — injection risk + invalid values
3SHOULD-FIXNo new tests for the bind_to feature

Comment threadsuperbench/runner/runner.py
Comment threadsuperbench/runner/runner.py
Comment threadsuperbench/runner/runner.py
@polarG
Hongtao Zhang (polarG) dismissed their stale reviewApril 17, 2026 17:47

Replaced with inline file comments.

@polarG

Copy link
Copy Markdown
Contributor

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 3 pipeline(s).

@codecov

codecovBot commented Apr 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 85.70%. Comparing base (3c95714) to head (a5fb2be).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@ Coverage Diff @@## main #797 +/- ##
==========================================
+ Coverage 85.69% 85.70% +0.01% 
==========================================
Files 103 103 Lines 7890 7897 +7 ==========================================
+ Hits 6761 6768 +7 
Misses 1129 1129 
FlagCoverage Δ
cpu-python3.10-unit-test70.45% <100.00%> (+0.02%)⬆️
cpu-python3.12-unit-test70.45% <100.00%> (+0.02%)⬆️
cpu-python3.7-unit-test69.87% <100.00%> (+0.02%)⬆️
cuda-unit-test83.61% <100.00%> (+0.01%)⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for freeto 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

@alephpiece@polarG