Skip to content

Fix interop tests: replace MPMD with individual mpiexec runs#5

Merged
shinaoka merged 1 commit intomainfrom
fix-interop-tests
Feb 6, 2026
Merged

Fix interop tests: replace MPMD with individual mpiexec runs#5
shinaoka merged 1 commit intomainfrom
fix-interop-tests

Conversation

@shinaoka
Copy link
Copy Markdown
Member

@shinaoka shinaoka commented Feb 6, 2026

Summary

  • Replace MPMD launch mode with individual mpiexec -n 2 per language, fixing MPICH compatibility (MPMD does not share MPI_COMM_WORLD across programs)
  • Add Julia Project.toml and precompile MPI.jl before test runs to avoid 30+ minute precompilation hangs inside mpiexec
  • Add 300s timeout for Julia tests and 30-minute job timeout in CI

Test plan

  • CI passes for both MPICH and OpenMPI matrix entries
  • Rust, Python, and Julia tests each run independently with 2 ranks
  • Julia precompilation completes before test execution

🤖 Generated with Claude Code

The MPMD launch mode (mpiexec -n 1 prog1 : -n 1 prog2) does not share
MPI_COMM_WORLD across programs with MPICH, causing each process to see
size=1. Also, Julia MPI.jl first-time precompilation inside mpiexec
caused 30+ minute hangs in CI.

Changes:
- Run each language test independently with mpiexec -n 2
- Add Julia Project.toml and precompile MPI.jl before test runs
- Add 300s timeout for Julia tests in run_interop.sh
- Add 30-minute job timeout in CI workflow
- Track per-test pass/fail status with proper exit codes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@shinaoka shinaoka merged commit 68247ad into main Feb 6, 2026
8 of 10 checks passed
@shinaoka shinaoka deleted the fix-interop-tests branch February 6, 2026 02:27
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.

1 participant