@@ -104,44 +104,58 @@ AC_DEFUN([OMPI_CHECK_UCX],[
104
104
old_CPPFLAGS= " $CPPFLAGS "
105
105
AS_IF([test -n " $ompi_check_ucx_dir " ],
106
106
[CPPFLAGS= " $CPPFLAGS -I$ompi_check_ucx_dir /include" ])
107
- AC_CHECK_DECLS([ucp_tag_send_nbr],
108
- [AC_DEFINE([HAVE_UCP_TAG_SEND_NBR],[1],
109
- [have ucp_tag_send_nbr ()])], [],
110
- [# include <ucp/api/ucp.h>])
111
- AC_CHECK_DECLS([ucp_ep_flush_nb, ucp_worker_flush_nb,
112
- ucp_request_check_status, ucp_put_nb, ucp_get_nb,
113
- ucp_put_nbx, ucp_get_nbx, ucp_atomic_op_nbx],
114
- [], [],
115
- [# include <ucp/api/ucp.h>])
116
- AC_CHECK_DECLS([ucm_test_events,
117
- ucm_test_external_events],
118
- [], [],
119
- [# include <ucm/api/ucm.h>])
120
- AC_CHECK_DECLS([UCP_ATOMIC_POST_OP_AND,
121
- UCP_ATOMIC_POST_OP_OR,
122
- UCP_ATOMIC_POST_OP_XOR,
123
- UCP_ATOMIC_FETCH_OP_FAND,
124
- UCP_ATOMIC_FETCH_OP_FOR,
125
- UCP_ATOMIC_FETCH_OP_FXOR,
126
- UCP_PARAM_FIELD_ESTIMATED_NUM_PPN],
127
- [], [],
128
- [# include <ucp/api/ucp.h>])
129
- AC_CHECK_DECLS([UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS],
130
- [AC_DEFINE([HAVE_UCP_WORKER_ADDRESS_FLAGS], [1],
131
- [have worker address attribute])], [],
132
- [# include <ucp/api/ucp.h>])
133
- AC_CHECK_DECLS([UCP_ATTR_FIELD_MEMORY_TYPES],
134
- [AC_DEFINE([HAVE_UCP_ATTR_MEMORY_TYPES], [1],
135
- [have memory types attribute])], [],
136
- [# include <ucp/api/ucp.h>])
137
- AC_CHECK_DECLS([ucp_tag_send_nbx,
138
- ucp_tag_send_sync_nbx,
139
- ucp_tag_recv_nbx],
140
- [], [],
141
- [# include <ucp/api/ucp.h>])
142
- AC_CHECK_TYPES([ucp_request_param_t],
143
- [], [],
144
- [[# include <ucp/api/ucp.h>]])
107
+ # Turn off UCX version v1.8 due to issue #8321
108
+ AC_MSG_CHECKING([UCX version])
109
+ AC_PREPROC_IFELSE([AC_LANG_PROGRAM([# include <ucp/api/ucp_version.h>
110
+ # if (UCP_API_MAJOR == 1) && (UCP_API_MINOR == 8)
111
+ # error "Invalid version"
112
+ # endif], [])],
113
+ [AC_MSG_RESULT([ok (not 1.8.x)])],
114
+ [AC_MSG_RESULT([bad (1.8.x)])
115
+ AC_MSG_WARN([UCX support skipped because version 1.8.x was found, which has a known catastrophic issue.])
116
+ AC_MSG_WARN([Please upgrade to UCX version 1.9 or higher.])
117
+ ompi_check_ucx_happy= no])
118
+ AS_IF([test " $ompi_check_ucx_happy " = yes],
119
+ [
120
+ AC_CHECK_DECLS([ucp_tag_send_nbr],
121
+ [AC_DEFINE([HAVE_UCP_TAG_SEND_NBR],[1],
122
+ [have ucp_tag_send_nbr ()])], [],
123
+ [# include <ucp/api/ucp.h>])
124
+ AC_CHECK_DECLS([ucp_ep_flush_nb, ucp_worker_flush_nb,
125
+ ucp_request_check_status, ucp_put_nb, ucp_get_nb,
126
+ ucp_put_nbx, ucp_get_nbx, ucp_atomic_op_nbx],
127
+ [], [],
128
+ [# include <ucp/api/ucp.h>])
129
+ AC_CHECK_DECLS([ucm_test_events,
130
+ ucm_test_external_events],
131
+ [], [],
132
+ [# include <ucm/api/ucm.h>])
133
+ AC_CHECK_DECLS([UCP_ATOMIC_POST_OP_AND,
134
+ UCP_ATOMIC_POST_OP_OR,
135
+ UCP_ATOMIC_POST_OP_XOR,
136
+ UCP_ATOMIC_FETCH_OP_FAND,
137
+ UCP_ATOMIC_FETCH_OP_FOR,
138
+ UCP_ATOMIC_FETCH_OP_FXOR,
139
+ UCP_PARAM_FIELD_ESTIMATED_NUM_PPN],
140
+ [], [],
141
+ [# include <ucp/api/ucp.h>])
142
+ AC_CHECK_DECLS([UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS],
143
+ [AC_DEFINE([HAVE_UCP_WORKER_ADDRESS_FLAGS], [1],
144
+ [have worker address attribute])], [],
145
+ [# include <ucp/api/ucp.h>])
146
+ AC_CHECK_DECLS([UCP_ATTR_FIELD_MEMORY_TYPES],
147
+ [AC_DEFINE([HAVE_UCP_ATTR_MEMORY_TYPES], [1],
148
+ [have memory types attribute])], [],
149
+ [# include <ucp/api/ucp.h>])
150
+ AC_CHECK_DECLS([ucp_tag_send_nbx,
151
+ ucp_tag_send_sync_nbx,
152
+ ucp_tag_recv_nbx],
153
+ [], [],
154
+ [# include <ucp/api/ucp.h>])
155
+ AC_CHECK_TYPES([ucp_request_param_t],
156
+ [], [],
157
+ [[# include <ucp/api/ucp.h>]])
158
+ ])
145
159
CPPFLAGS= $old_CPPFLAGS
146
160
147
161
OPAL_SUMMARY_ADD([[Transports]],[[Open UCX]],[$1 ],[$ompi_check_ucx_happy ])])])
0 commit comments