diff --git a/config/ompi_check_ucx.m4 b/config/ompi_check_ucx.m4 index e691fc03e73..3ac674dc5ae 100644 --- a/config/ompi_check_ucx.m4 +++ b/config/ompi_check_ucx.m4 @@ -74,8 +74,15 @@ AC_DEFUN([OMPI_CHECK_UCX],[ [ompi_check_ucx_cv_have_version_1_8=yes])]) AS_IF([test "${ompi_check_ucx_cv_have_version_1_8}" = "yes"], [AC_MSG_WARN([UCX support skipped because version 1.8.x was found, which has a known catastrophic issue.]) - AC_MSG_WARN([Please upgrade to UCX version 1.9 or higher.]) ompi_check_ucx_happy=no])]) + AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[ +#include + ]], [[ +#if (UCP_API_MAJOR < 1) || ((UCP_API_MAJOR == 1) && (UCP_API_MINOR < 9)) +#error "Version too low" +#endif + ]])], + [], [AC_MSG_WARN([UCX version is too old, please upgrade to 1.9 or higher.])]) AS_IF([test "$ompi_check_ucx_happy" = yes], [AC_CHECK_DECLS([ucp_tag_send_nbr], diff --git a/ompi/mca/pml/ucx/pml_ucx.c b/ompi/mca/pml/ucx/pml_ucx.c index a41b8d0bb5a..a585d52319b 100644 --- a/ompi/mca/pml/ucx/pml_ucx.c +++ b/ompi/mca/pml/ucx/pml_ucx.c @@ -217,6 +217,12 @@ int mca_pml_ucx_open(void) return OMPI_ERROR; } + if ((major_version == 1) && (minor_version < 9)) { + /* show warning due to issue #8549 */ + PML_UCX_WARN("UCX version %u.%u.%u is too old, please install 1.9.x or " + "newer", major_version, minor_version, release_number); + } + /* Read options */ status = ucp_config_read("MPI", NULL, &config); if (UCS_OK != status) {