Stabilize nvhpc CI: force Open MPI off UCX to avoid flaky UCP worker failures (#6554)

GitHub-hosted runners have no real InfiniBand, and the Open MPI bundled
with NVIDIA HPC-X intermittently has UCX select a non-functional verbs
interface (e.g. ud_verbs/mana_0), causing:

  ucp_worker.c:1487 UCX ERROR uct_iface_open(ud_verbs/mana_0:1) failed
  pml_ucx.c:319 Error: Failed to create UCP worker
  MPI_INIT has failed because at least one MPI process is unreachable

which fails h5_api_test_parallel_* tests in the "Run Tests" step. This
only affects nvhpc.yml (HPC-X's bundled Open MPI ships UCX); main-par.yml
uses Ubuntu's openmpi-bin package, which doesn't use UCX and is unaffected.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Mark Kittisopikul
2026-07-30 14:32:26 -05:00
committed by GitHub
co-authored by Claude Sonnet 5
parent 68a0a4b136
commit a8161b7dc6
+10
View File
@@ -23,6 +23,16 @@ jobs:
CUDAVERDOT: "13.2"
NVERDOT: "26.5"
NVERDASH: "26-5"
# CI stabilization: GitHub-hosted runners have no real InfiniBand, and the
# Open MPI bundled with NVIDIA HPC-X sometimes has UCX select a
# non-functional verbs interface (e.g. ud_verbs/mana_0), causing
# intermittent "Failed to create UCP worker" / MPI_Init unreachable (-12)
# failures. Force ob1 + tcp/shared-memory transports and skip UCX.
OMPI_MCA_pml: ob1
OMPI_MCA_btl: self,tcp,sm
OMPI_MCA_mtl: ^ucx
UCX_TLS: tcp,self,sm
OMPI_MCA_btl_tcp_if_exclude: lo,docker0
steps:
- name: Get Sources