diff --git a/api/latest b/api/latest index f5a8e286c16..e0c4adc5060 120000 --- a/api/latest +++ b/api/latest @@ -1 +1 @@ -v1.12 \ No newline at end of file +v1.14 \ No newline at end of file diff --git a/api/v1.14/html/Architecture.png b/api/v1.14/html/Architecture.png new file mode 100644 index 00000000000..dd09d211c69 Binary files /dev/null and b/api/v1.14/html/Architecture.png differ diff --git a/api/v1.14/html/UCX_Logo_80x80.png b/api/v1.14/html/UCX_Logo_80x80.png new file mode 100644 index 00000000000..1a60fd766dd Binary files /dev/null and b/api/v1.14/html/UCX_Logo_80x80.png differ diff --git a/api/v1.14/html/annotated.html b/api/v1.14/html/annotated.html new file mode 100644 index 00000000000..b75b2d9960c --- /dev/null +++ b/api/v1.14/html/annotated.html @@ -0,0 +1,210 @@ + + + + + + +UCX: Data Structures + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Cucp_am_handler_paramActive Message handler parameters passed to ucp_worker_set_am_recv_handler routine
 Cucp_am_recv_paramOperation parameters provided in ucp_am_recv_callback_t callback
 Cucp_conn_request_attrUCP listener's connection request attributes
 Cucp_context_attrContext attributes
 Cucp_datatype_attrUCP datatype attributes
 Cucp_dt_iovStructure for scatter-gather I/O
 Cucp_ep_attrUCP endpoint attributes
 Cucp_ep_evaluate_perf_attr_tUCP endpoint performance evaluation result attributes
 Cucp_ep_evaluate_perf_param_tUCP endpoint performance evaluation request attributes
 Cucp_ep_paramsTuning parameters for the UCP endpoint
 Cucp_err_handlerUCP endpoint error handling context
 Cucp_generic_dt_opsUCP generic data type descriptor
 Cucp_lib_attrLib attributes
 Cucp_listener_accept_handler
 Cucp_listener_attrUCP listener attributes
 Cucp_listener_conn_handlerUCP callback to handle the connection request in a client-server connection establishment flow
 Cucp_listener_paramsParameters for a UCP listener object
 Cucp_mem_advise_paramsTuning parameters for the UCP memory advice
 Cucp_mem_attrAttributes of the UCP Memory handle, filled by ucp_mem_query function
 Cucp_mem_map_paramsTuning parameters for the UCP memory mapping
 Cucp_memh_buffer_release_paramsMemory handle release parameters passed to ucp_memh_buffer_release
 Cucp_memh_pack_paramsMemory handle pack parameters passed to ucp_memh_pack
 Cucp_paramsTuning parameters for UCP library
 Cucp_request_attr_tAttributes of a particular request
 Cucp_request_param_tOperation parameters passed to ucp_tag_send_nbx, ucp_tag_send_sync_nbx, ucp_tag_recv_nbx, ucp_put_nbx, ucp_get_nbx, ucp_am_send_nbx and ucp_am_recv_data_nbx
 Cucp_request_param_t.cb
 Cucp_request_param_t.recv_info
 Cucp_stream_poll_epOutput parameter of ucp_stream_worker_poll function
 Cucp_tag_recv_infoUCP receive information descriptor
 Cucp_transport_entry_tThe ucp_transports_t and ucp_transport_entry_t structures are used when ucp_ep_query is called to return an array of transport name and device name pairs that are used by an active endpoint
 Cucp_transports_tStructure containing an array of transport layers and device names used by an endpoint
 Cucp_worker_address_attrUCP worker address attributes
 Cucp_worker_attrUCP worker attributes
 Cucp_worker_paramsTuning parameters for the UCP worker
 Cucs_callbackq
 Cucs_callbackq_elem
 Cucs_config_allow_list_t
 Cucs_log_component_config
 Cucs_sock_addr
 Cuct_allocated_memoryDescribes a memory allocated by UCT
 Cuct_cm_attrConnection manager attributes, capabilities and limitations
 Cuct_cm_ep_client_connect_argsArguments to the client's connect callback
 Cuct_cm_ep_priv_data_pack_argsArguments to the client-server private data pack callback
 Cuct_cm_ep_resolve_argsArguments to the client-server resolved callback
 Cuct_cm_ep_server_conn_notify_argsArguments to the server's notify callback
 Cuct_cm_listener_conn_request_argsArguments to the listener's connection request callback
 Cuct_cm_remote_dataData received from the remote peer
 Cuct_completionCompletion handle
 Cuct_component_attrUCT component attributes
 Cuct_ep_connect_paramsParameters for connecting a UCT endpoint by uct_ep_connect
 Cuct_ep_paramsParameters for creating a UCT endpoint by uct_ep_create
 Cuct_iface_attrInterface attributes: capabilities and limitations
 Cuct_iface_attr.cap
 Cuct_iface_attr.cap.am
 Cuct_iface_attr.cap.atomic32
 Cuct_iface_attr.cap.atomic64
 Cuct_iface_attr.cap.get
 Cuct_iface_attr.cap.put
 Cuct_iface_attr.cap.tag
 Cuct_iface_attr.cap.tag.eager
 Cuct_iface_attr.cap.tag.recv
 Cuct_iface_attr.cap.tag.rndv
 Cuct_iface_paramsParameters used for interface creation
 Cuct_iface_params.mode
 Cuct_iface_params.mode.device
 Cuct_iface_params.mode.sockaddr
 Cuct_iovStructure for scatter-gather I/O
 Cuct_listener_attrUCT listener attributes, capabilities and limitations
 Cuct_listener_paramsParameters for creating a listener object uct_listener_h by uct_listener_create
 Cuct_md_attrMemory domain attributes
 Cuct_md_attr.cap
 Cuct_md_mem_attrMemory domain attributes
 Cuct_md_resource_descMemory domain resource descriptor
 Cuct_mem_alloc_params_tParameters for allocating memory using uct_mem_alloc
 Cuct_mem_alloc_params_t.mds
 Cuct_pending_reqPending request
 Cuct_ppn_bandwidth
 Cuct_rkey_bundleRemote key with its type
 Cuct_tag_contextPosted tag context
 Cuct_tl_resource_descCommunication resource descriptor
+
+
+
+ + + + diff --git a/api/v1.14/html/annotated_dup.js b/api/v1.14/html/annotated_dup.js new file mode 100644 index 00000000000..61eb4b4ce59 --- /dev/null +++ b/api/v1.14/html/annotated_dup.js @@ -0,0 +1,83 @@ +var annotated_dup = +[ + [ "ucp_am_handler_param", "group___u_c_p___w_o_r_k_e_r.html#structucp__am__handler__param", "group___u_c_p___w_o_r_k_e_r_structucp__am__handler__param" ], + [ "ucp_am_recv_param", "group___u_c_p___w_o_r_k_e_r.html#structucp__am__recv__param", "group___u_c_p___w_o_r_k_e_r_structucp__am__recv__param" ], + [ "ucp_conn_request_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__conn__request__attr", "group___u_c_p___w_o_r_k_e_r_structucp__conn__request__attr" ], + [ "ucp_context_attr", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__context__attr", "group___u_c_p___c_o_n_t_e_x_t_structucp__context__attr" ], + [ "ucp_datatype_attr", "group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__datatype__attr", "group___u_c_p___d_a_t_a_t_y_p_e_structucp__datatype__attr" ], + [ "ucp_dt_iov", "group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__dt__iov", "group___u_c_p___d_a_t_a_t_y_p_e_structucp__dt__iov" ], + [ "ucp_ep_attr", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__attr", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__attr" ], + [ "ucp_ep_evaluate_perf_attr_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__attr__t", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__attr__t" ], + [ "ucp_ep_evaluate_perf_param_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__param__t", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__param__t" ], + [ "ucp_ep_params", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__params", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__params" ], + [ "ucp_err_handler", "group___u_c_p___c_o_m_m.html#structucp__err__handler", "group___u_c_p___c_o_m_m_structucp__err__handler" ], + [ "ucp_generic_dt_ops", "structucp__generic__dt__ops.html", "structucp__generic__dt__ops" ], + [ "ucp_lib_attr", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__lib__attr", "group___u_c_p___c_o_n_t_e_x_t_structucp__lib__attr" ], + [ "ucp_listener_accept_handler", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__accept__handler", "group___u_c_p___w_o_r_k_e_r_structucp__listener__accept__handler" ], + [ "ucp_listener_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__attr", "group___u_c_p___w_o_r_k_e_r_structucp__listener__attr" ], + [ "ucp_listener_conn_handler", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__conn__handler", "group___u_c_p___w_o_r_k_e_r_structucp__listener__conn__handler" ], + [ "ucp_listener_params", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__params", "group___u_c_p___w_o_r_k_e_r_structucp__listener__params" ], + [ "ucp_mem_advise_params", "group___u_c_p___m_e_m.html#structucp__mem__advise__params", "group___u_c_p___m_e_m_structucp__mem__advise__params" ], + [ "ucp_mem_attr", "group___u_c_p___m_e_m.html#structucp__mem__attr", "group___u_c_p___m_e_m_structucp__mem__attr" ], + [ "ucp_mem_map_params", "group___u_c_p___m_e_m.html#structucp__mem__map__params", "group___u_c_p___m_e_m_structucp__mem__map__params" ], + [ "ucp_memh_buffer_release_params", "group___u_c_p___m_e_m.html#structucp__memh__buffer__release__params", "group___u_c_p___m_e_m_structucp__memh__buffer__release__params" ], + [ "ucp_memh_pack_params", "group___u_c_p___m_e_m.html#structucp__memh__pack__params", "group___u_c_p___m_e_m_structucp__memh__pack__params" ], + [ "ucp_params", "group___u_c_p___c_o_n_f_i_g.html#structucp__params", "group___u_c_p___c_o_n_f_i_g_structucp__params" ], + [ "ucp_request_attr_t", "group___u_c_p___c_o_m_m.html#structucp__request__attr__t", "group___u_c_p___c_o_m_m_structucp__request__attr__t" ], + [ "ucp_request_param_t", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__request__param__t", "group___u_c_p___c_o_n_t_e_x_t_structucp__request__param__t" ], + [ "ucp_request_param_t.cb", "group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8cb", "group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8cb" ], + [ "ucp_request_param_t.recv_info", "group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8recv__info", "group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8recv__info" ], + [ "ucp_stream_poll_ep", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__stream__poll__ep", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__stream__poll__ep" ], + [ "ucp_tag_recv_info", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__tag__recv__info", "group___u_c_p___c_o_n_t_e_x_t_structucp__tag__recv__info" ], + [ "ucp_transport_entry_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transport__entry__t", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__transport__entry__t" ], + [ "ucp_transports_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transports__t", "group___u_c_p___e_n_d_p_o_i_n_t_structucp__transports__t" ], + [ "ucp_worker_address_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__worker__address__attr", "group___u_c_p___w_o_r_k_e_r_structucp__worker__address__attr" ], + [ "ucp_worker_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__worker__attr", "group___u_c_p___w_o_r_k_e_r_structucp__worker__attr" ], + [ "ucp_worker_params", "group___u_c_p___w_o_r_k_e_r.html#structucp__worker__params", "group___u_c_p___w_o_r_k_e_r_structucp__worker__params" ], + [ "ucs_callbackq", "namespace_3global_scope_4.html#structucs__callbackq", "namespace_3global_scope_4_structucs__callbackq" ], + [ "ucs_callbackq_elem", "namespace_3global_scope_4.html#structucs__callbackq__elem", "namespace_3global_scope_4_structucs__callbackq__elem" ], + [ "ucs_config_allow_list_t", "namespace_3global_scope_4.html#structucs__config__allow__list__t", "namespace_3global_scope_4_structucs__config__allow__list__t" ], + [ "ucs_log_component_config", "namespace_3global_scope_4.html#structucs__log__component__config", "namespace_3global_scope_4_structucs__log__component__config" ], + [ "ucs_sock_addr", "group___u_c_s___r_e_s_o_u_r_c_e.html#structucs__sock__addr", "group___u_c_s___r_e_s_o_u_r_c_e_structucs__sock__addr" ], + [ "uct_allocated_memory", "group___u_c_t___m_d.html#structuct__allocated__memory", "group___u_c_t___m_d_structuct__allocated__memory" ], + [ "uct_cm_attr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__attr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__attr" ], + [ "uct_cm_ep_client_connect_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__client__connect__args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__client__connect__args" ], + [ "uct_cm_ep_priv_data_pack_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__priv__data__pack__args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__priv__data__pack__args" ], + [ "uct_cm_ep_resolve_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__resolve__args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__resolve__args" ], + [ "uct_cm_ep_server_conn_notify_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__server__conn__notify__args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__server__conn__notify__args" ], + [ "uct_cm_listener_conn_request_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__listener__conn__request__args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__listener__conn__request__args" ], + [ "uct_cm_remote_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__remote__data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__remote__data" ], + [ "uct_completion", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__completion", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__completion" ], + [ "uct_component_attr", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__component__attr", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__component__attr" ], + [ "uct_ep_connect_params", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__ep__connect__params", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__ep__connect__params" ], + [ "uct_ep_params", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__ep__params", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__ep__params" ], + [ "uct_iface_attr", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr" ], + [ "uct_iface_attr.cap", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap" ], + [ "uct_iface_attr.cap.am", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8am", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8am" ], + [ "uct_iface_attr.cap.atomic32", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic32", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic32" ], + [ "uct_iface_attr.cap.atomic64", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic64", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic64" ], + [ "uct_iface_attr.cap.get", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8get", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8get" ], + [ "uct_iface_attr.cap.put", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8put", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8put" ], + [ "uct_iface_attr.cap.tag", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag" ], + [ "uct_iface_attr.cap.tag.eager", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8eager", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8eager" ], + [ "uct_iface_attr.cap.tag.recv", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8recv", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8recv" ], + [ "uct_iface_attr.cap.tag.rndv", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8rndv", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8rndv" ], + [ "uct_iface_params", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params" ], + [ "uct_iface_params.mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#unionuct__iface__params_8mode", "group___u_c_t___r_e_s_o_u_r_c_e_unionuct__iface__params_8mode" ], + [ "uct_iface_params.mode.device", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8device", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8device" ], + [ "uct_iface_params.mode.sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8sockaddr" ], + [ "uct_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iov", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__iov" ], + [ "uct_listener_attr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__attr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__attr" ], + [ "uct_listener_params", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__params", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__params" ], + [ "uct_md_attr", "group___u_c_t___m_d.html#structuct__md__attr", "group___u_c_t___m_d_structuct__md__attr" ], + [ "uct_md_attr.cap", "group___u_c_t___m_d.html#structuct__md__attr_8cap", "group___u_c_t___m_d_structuct__md__attr_8cap" ], + [ "uct_md_mem_attr", "group___u_c_t___m_d.html#structuct__md__mem__attr", "group___u_c_t___m_d_structuct__md__mem__attr" ], + [ "uct_md_resource_desc", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__md__resource__desc", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__md__resource__desc" ], + [ "uct_mem_alloc_params_t", "group___u_c_t___m_d.html#structuct__mem__alloc__params__t", "group___u_c_t___m_d_structuct__mem__alloc__params__t" ], + [ "uct_mem_alloc_params_t.mds", "group___u_c_t___m_d.html#structuct__mem__alloc__params__t_8mds", "group___u_c_t___m_d_structuct__mem__alloc__params__t_8mds" ], + [ "uct_pending_req", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__pending__req", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__pending__req" ], + [ "uct_ppn_bandwidth", "namespace_3global_scope_4.html#structuct__ppn__bandwidth", "namespace_3global_scope_4_structuct__ppn__bandwidth" ], + [ "uct_rkey_bundle", "group___u_c_t___m_d.html#structuct__rkey__bundle", "group___u_c_t___m_d_structuct__rkey__bundle" ], + [ "uct_tag_context", "structuct__tag__context.html", "structuct__tag__context" ], + [ "uct_tl_resource_desc", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__tl__resource__desc", "group___u_c_t___r_e_s_o_u_r_c_e_structuct__tl__resource__desc" ] +]; \ No newline at end of file diff --git a/api/v1.14/html/arrowdown.png b/api/v1.14/html/arrowdown.png new file mode 100644 index 00000000000..0b63f6d38c4 Binary files /dev/null and b/api/v1.14/html/arrowdown.png differ diff --git a/api/v1.14/html/arrowright.png b/api/v1.14/html/arrowright.png new file mode 100644 index 00000000000..c6ee22f937a Binary files /dev/null and b/api/v1.14/html/arrowright.png differ diff --git a/api/v1.14/html/async__fwd_8h_source.html b/api/v1.14/html/async__fwd_8h_source.html new file mode 100644 index 00000000000..86be63686f8 --- /dev/null +++ b/api/v1.14/html/async__fwd_8h_source.html @@ -0,0 +1,130 @@ + + + + + + +UCX: async_fwd.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
async_fwd.h
+
+
+
1 
7 #ifndef UCS_ASYNC_FWD_H
8 #define UCS_ASYNC_FWD_H
9 
10 #include <ucs/config/types.h>
11 #include <ucs/time/time_def.h>
12 #include <ucs/type/status.h>
13 #include <ucs/sys/event_set.h>
14 
15 BEGIN_C_DECLS
16 
20 #define UCS_ASYNC_PTHREAD_ID_NULL ((pthread_t)-1)
21 
22 
23 typedef struct ucs_async_context ucs_async_context_t;
24 
25 
35 typedef void (*ucs_async_event_cb_t)(int id, ucs_event_set_types_t events,
36  void *arg);
37 
38 
55 ucs_status_t ucs_async_set_event_handler(ucs_async_mode_t mode, int event_fd,
56  ucs_event_set_types_t events,
57  ucs_async_event_cb_t cb, void *arg,
58  ucs_async_context_t *async);
59 
60 
76 ucs_status_t ucs_async_add_timer(ucs_async_mode_t mode, ucs_time_t interval,
77  ucs_async_event_cb_t cb, void *arg,
78  ucs_async_context_t *async, int *timer_id_p);
79 
80 
94 ucs_status_t ucs_async_remove_handler(int id, int sync);
95 
96 
107 ucs_status_t ucs_async_modify_handler(int fd, ucs_event_set_types_t events);
108 
109 
123 ucs_status_t ucs_async_context_create(ucs_async_mode_t mode,
124  ucs_async_context_t **async_p);
125 
126 
136 void ucs_async_context_destroy(ucs_async_context_t *async);
137 
138 
146 void ucs_async_poll(ucs_async_context_t *async);
147 
148 
149 void __ucs_async_poll_missed(ucs_async_context_t *async);
150 
151 END_C_DECLS
152 
153 #endif
void ucs_async_poll(ucs_async_context_t *async)
+
ucs_status_t ucs_async_context_create(ucs_async_mode_t mode, ucs_async_context_t **async_p)
Create an asynchronous execution context.
+
ucs_status_t ucs_async_set_event_handler(ucs_async_mode_t mode, int event_fd, ucs_event_set_types_t events, ucs_async_event_cb_t cb, void *arg, ucs_async_context_t *async)
+
ucs_status_t
Status codes.
Definition: status.h:45
+
ucs_status_t ucs_async_add_timer(ucs_async_mode_t mode, ucs_time_t interval, ucs_async_event_cb_t cb, void *arg, ucs_async_context_t *async, int *timer_id_p)
+
ucs_status_t ucs_async_remove_handler(int id, int sync)
+
void ucs_async_context_destroy(ucs_async_context_t *async)
Destroy the asynchronous execution context.
+
unsigned long ucs_time_t
Definition: time_def.h:23
+
void(* ucs_async_event_cb_t)(int id, ucs_event_set_types_t events, void *arg)
Definition: async_fwd.h:35
+
ucs_status_t ucs_async_modify_handler(int fd, ucs_event_set_types_t events)
+
+
+ + + + diff --git a/api/v1.14/html/bc_s.png b/api/v1.14/html/bc_s.png new file mode 100644 index 00000000000..224b29aa984 Binary files /dev/null and b/api/v1.14/html/bc_s.png differ diff --git a/api/v1.14/html/bdwn.png b/api/v1.14/html/bdwn.png new file mode 100644 index 00000000000..940a0b95044 Binary files /dev/null and b/api/v1.14/html/bdwn.png differ diff --git a/api/v1.14/html/callbackq_8h_source.html b/api/v1.14/html/callbackq_8h_source.html new file mode 100644 index 00000000000..b20fc5029a9 --- /dev/null +++ b/api/v1.14/html/callbackq_8h_source.html @@ -0,0 +1,131 @@ + + + + + + +UCX: callbackq.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
callbackq.h
+
+
+
1 
8 #ifndef UCS_CALLBACKQ_H
9 #define UCS_CALLBACKQ_H
10 
11 #include <ucs/datastruct/list.h>
12 #include <ucs/sys/compiler_def.h>
13 #include <ucs/type/status.h>
14 #include <stddef.h>
15 #include <stdint.h>
16 
17 BEGIN_C_DECLS
18 
21 /*
22  * Thread-safe callback queue:
23  * - only one thread can dispatch
24  * - any thread can add and remove
25  * - add/remove operations are O(1)
26  */
27 
28 #define UCS_CALLBACKQ_FAST_COUNT 7 /* Max. number of fast-path callbacks */
29 #define UCS_CALLBACKQ_ID_NULL (-1) /* Invalid callback identifier */
30 
31 
32 /*
33  * Forward declarations
34  */
35 typedef struct ucs_callbackq ucs_callbackq_t;
37 
38 
48 typedef unsigned (*ucs_callback_t)(void *arg);
49 
50 
59 typedef int (*ucs_callbackq_predicate_t)(const ucs_callbackq_elem_t *elem,
60  void *arg);
61 
62 
68  UCS_CALLBACKQ_FLAG_FAST = UCS_BIT(0),
71 };
72 
73 
78  ucs_callback_t cb;
79  void *arg;
80  unsigned flags;
81  int id;
82 };
83 
84 
88 struct ucs_callbackq {
93  ucs_callbackq_elem_t fast_elems[UCS_CALLBACKQ_FAST_COUNT + 1];
94 
99  char priv[72];
100 };
101 
102 
108 ucs_status_t ucs_callbackq_init(ucs_callbackq_t *cbq);
109 
110 
116 void ucs_callbackq_cleanup(ucs_callbackq_t *cbq);
117 
118 
132 int ucs_callbackq_add(ucs_callbackq_t *cbq, ucs_callback_t cb, void *arg,
133  unsigned flags);
134 
135 
146 void ucs_callbackq_remove(ucs_callbackq_t *cbq, int id);
147 
148 
162 int ucs_callbackq_add_safe(ucs_callbackq_t *cbq, ucs_callback_t cb, void *arg,
163  unsigned flags);
164 
165 
176 void ucs_callbackq_remove_safe(ucs_callbackq_t *cbq, int id);
177 
178 
191 void ucs_callbackq_remove_if(ucs_callbackq_t *cbq, ucs_callbackq_predicate_t pred,
192  void *arg);
193 
194 
203 static inline unsigned ucs_callbackq_dispatch(ucs_callbackq_t *cbq)
204 {
205  ucs_callbackq_elem_t *elem;
206  ucs_callback_t cb;
207  unsigned count;
208 
209  count = 0;
210  for (elem = cbq->fast_elems; (cb = elem->cb) != NULL; ++elem) {
211  count += cb(elem->arg);
212  }
213  return count;
214 }
215 
216 END_C_DECLS
217 
218 #endif
Definition: callbackq.h:88
+
int id
Definition: callbackq.h:81
+
ucs_status_t
Status codes.
Definition: status.h:45
+
ucs_callbackq_elem_t fast_elems[UCS_CALLBACKQ_FAST_COUNT+1]
Definition: callbackq.h:93
+
Definition: callbackq.h:77
+
ucs_callback_t cb
Definition: callbackq.h:78
+
Definition: callbackq.h:68
+
unsigned flags
Definition: callbackq.h:80
+
Definition: callbackq.h:69
+
ucs_callbackq_flags
Definition: callbackq.h:67
+
void * arg
Definition: callbackq.h:79
+
+
+ + + + diff --git a/api/v1.14/html/classes.html b/api/v1.14/html/classes.html new file mode 100644 index 00000000000..64c9763044d --- /dev/null +++ b/api/v1.14/html/classes.html @@ -0,0 +1,149 @@ + + + + + + +UCX: Data Structure Index + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Data Structure Index
+
+
+ + + + + + + + + + + + + + + + + + + + +
  u  
+
ucp_listener_conn_handler   ucp_worker_attr   uct_ep_connect_params   uct_iov   
ucp_listener_params   ucp_worker_params   uct_ep_params   uct_listener_attr   
ucp_am_handler_param   ucp_mem_advise_params   ucs_callbackq   uct_iface_attr   uct_listener_params   
ucp_am_recv_param   ucp_mem_attr   ucs_callbackq_elem   uct_iface_attr.cap   uct_md_attr   
ucp_conn_request_attr   ucp_mem_map_params   ucs_config_allow_list_t   uct_iface_attr.cap.am   uct_md_attr.cap   
ucp_context_attr   ucp_memh_buffer_release_params   ucs_log_component_config   uct_iface_attr.cap.atomic32   uct_md_mem_attr   
ucp_datatype_attr   ucp_memh_pack_params   ucs_sock_addr   uct_iface_attr.cap.atomic64   uct_md_resource_desc   
ucp_dt_iov   ucp_params   uct_allocated_memory   uct_iface_attr.cap.get   uct_mem_alloc_params_t   
ucp_ep_attr   ucp_request_attr_t   uct_cm_attr   uct_iface_attr.cap.put   uct_mem_alloc_params_t.mds   
ucp_ep_evaluate_perf_attr_t   ucp_request_param_t   uct_cm_ep_client_connect_args   uct_iface_attr.cap.tag   uct_pending_req   
ucp_ep_evaluate_perf_param_t   ucp_request_param_t.cb   uct_cm_ep_priv_data_pack_args   uct_iface_attr.cap.tag.eager   uct_ppn_bandwidth   
ucp_ep_params   ucp_request_param_t.recv_info   uct_cm_ep_resolve_args   uct_iface_attr.cap.tag.recv   uct_rkey_bundle   
ucp_err_handler   ucp_stream_poll_ep   uct_cm_ep_server_conn_notify_args   uct_iface_attr.cap.tag.rndv   uct_tag_context   
ucp_generic_dt_ops   ucp_tag_recv_info   uct_cm_listener_conn_request_args   uct_iface_params   uct_tl_resource_desc   
ucp_lib_attr   ucp_transport_entry_t   uct_cm_remote_data   uct_iface_params.mode   
ucp_listener_accept_handler   ucp_transports_t   uct_completion   uct_iface_params.mode.device   
ucp_listener_attr   ucp_worker_address_attr   uct_component_attr   uct_iface_params.mode.sockaddr   
+ +
+
+ + + + diff --git a/api/v1.14/html/closed.png b/api/v1.14/html/closed.png new file mode 100644 index 00000000000..98cc2c909da Binary files /dev/null and b/api/v1.14/html/closed.png differ diff --git a/api/v1.14/html/compiler__def_8h_source.html b/api/v1.14/html/compiler__def_8h_source.html new file mode 100644 index 00000000000..53455b23f31 --- /dev/null +++ b/api/v1.14/html/compiler__def_8h_source.html @@ -0,0 +1,120 @@ + + + + + + +UCX: compiler_def.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
compiler_def.h
+
+
+
1 
9 #ifndef UCS_COMPILER_DEF_H
10 #define UCS_COMPILER_DEF_H
11 
12 /* Note: Place "@file <file name>.h" after BEGIN_C_DECS
13  * to avoid bugs in a documentation */
14 #ifdef __cplusplus
15 # define BEGIN_C_DECLS extern "C" {
16 # define END_C_DECLS }
17 #else
18 # define BEGIN_C_DECLS
19 # define END_C_DECLS
20 #endif
21 
22 /*
23  * Assertions which are checked in compile-time
24  *
25  * Usage: UCS_STATIC_ASSERT(condition)
26  */
27 #define UCS_STATIC_ASSERT(_cond) \
28  switch(0) {case 0:case (_cond):;}
29 
30 /* Maximal allocation size for on-stack buffers */
31 #define UCS_ALLOCA_MAX_SIZE 1200
32 
33 /* Aliasing structure */
34 #define UCS_S_MAY_ALIAS __attribute__((may_alias))
35 
36 /* A function without side effects */
37 #define UCS_F_PURE __attribute__((pure))
38 
39 /* A function which does not return */
40 #define UCS_F_NORETURN __attribute__((noreturn))
41 
42 /* Packed structure */
43 #define UCS_S_PACKED __attribute__((packed))
44 
45 /* Avoid inlining the function */
46 #define UCS_F_NOINLINE __attribute__ ((noinline))
47 
48 /* Shared library constructor and destructor */
49 #define UCS_F_CTOR __attribute__((constructor))
50 #define UCS_F_DTOR __attribute__((destructor))
51 
52 /* Silence "defined but not used" error for static function */
53 #define UCS_F_MAYBE_UNUSED __attribute__((used))
54 
55 /* Non-null return */
56 #define UCS_F_NON_NULL __attribute__((nonnull))
57 
58 /* Always inline the function */
59 #ifdef __GNUC__
60 #define UCS_F_ALWAYS_INLINE inline __attribute__ ((always_inline))
61 #else
62 #define UCS_F_ALWAYS_INLINE inline
63 #endif
64 
65 /* Silence "uninitialized variable" for stupid compilers (gcc 4.1)
66  * which can't optimize properly.
67  */
68 #if (((__GNUC__ == 4) && (__GNUC_MINOR__ == 1)) || !defined(__OPTIMIZE__))
69 # define UCS_V_INITIALIZED(_v) (_v = (ucs_typeof(_v))0)
70 #else
71 # define UCS_V_INITIALIZED(_v) ((void)0)
72 #endif
73 
74 /* The i-th bit */
75 #define UCS_BIT(i) (1ul << (i))
76 
77 /* Mask of bits 0..i-1 */
78 #define UCS_MASK(i) (UCS_BIT(i) - 1)
79 
80 /*
81  * Enable compiler checks for printf-like formatting.
82  *
83  * @param fmtargN number of formatting argument
84  * @param vargN number of variadic argument
85  */
86 #define UCS_F_PRINTF(fmtargN, vargN) __attribute__((format(printf, fmtargN, vargN)))
87 
88 /* Unused variable */
89 #define UCS_V_UNUSED __attribute__((unused))
90 
91 /* Aligned variable */
92 #define UCS_V_ALIGNED(_align) __attribute__((aligned(_align)))
93 
94 /* Used for labels */
95 #define UCS_EMPTY_STATEMENT {}
96 
97 /* Helper macro for address arithmetic in bytes */
98 #define UCS_PTR_BYTE_OFFSET(_ptr, _offset) \
99  ((void *)((intptr_t)(_ptr) + (intptr_t)(_offset)))
100 
101 /* Helper macro to calculate an address with offset equal to size of _type */
102 #define UCS_PTR_TYPE_OFFSET(_ptr, _type) \
103  ((void *)((ucs_typeof(_type) *)(_ptr) + 1))
104 
105 /* Helper macro to calculate ptr difference (_end - _start) */
106 #define UCS_PTR_BYTE_DIFF(_start, _end) \
107  ((ptrdiff_t)((uintptr_t)(_end) - (uintptr_t)(_start)))
108 
109 
113 #define ucs_static_array_size(_array) \
114  (sizeof(_array) / sizeof((_array)[0]))
115 
116 
120 #define ucs_offsetof(_type, _member) \
121  ((unsigned long)&( ((_type*)0)->_member ))
122 
123 
133 #define ucs_container_of(_ptr, _type, _member) \
134  ( (_type*)( (char*)(void*)(_ptr) - ucs_offsetof(_type, _member) ) )
135 
136 
144 #define ucs_typeof(_type) \
145  __typeof__(_type)
146 
147 
153 #define ucs_derived_of(_ptr, _type) \
154  ({\
155  UCS_STATIC_ASSERT(offsetof(_type, super) == 0) \
156  ucs_container_of(_ptr, _type, super); \
157  })
158 
165 #define ucs_field_sizeof(_type, _field) \
166  sizeof(((_type*)0)->_field)
167 
174 #define ucs_field_type(_type, _field) \
175  ucs_typeof(((_type*)0)->_field)
176 
180 #define ucs_compiler_fence() asm volatile(""::: "memory")
181 
185 #define ucs_prefetch(p) __builtin_prefetch(p)
186 
187 /* Branch prediction */
188 #define ucs_likely(x) __builtin_expect(x, 1)
189 #define ucs_unlikely(x) __builtin_expect(x, 0)
190 
191 /* Check if an expression is a compile-time constant */
192 #define ucs_is_constant(expr) __builtin_constant_p(expr)
193 
194 /*
195  * Define code which runs at global constructor phase
196  */
197 #define UCS_STATIC_INIT \
198  static void UCS_F_CTOR UCS_PP_APPEND_UNIQUE_ID(ucs_initializer_ctor)()
199 
200 /*
201  * Define code which runs at global destructor phase
202  */
203 #define UCS_STATIC_CLEANUP \
204  static void UCS_F_DTOR UCS_PP_APPEND_UNIQUE_ID(ucs_initializer_dtor)()
205 
206 /*
207  * Check if the two types are the same
208  */
209 #define ucs_same_type(_type1, _type2) \
210  __builtin_types_compatible_p(_type1, _type2)
211 
212 /*
213  * Iterate over all elements of a C-array
214  */
215 #define ucs_carray_for_each(_elem, _array, _length) \
216  for ((_elem) = (_array); (_elem) < ((_array) + (_length)); ++(_elem))
217 
218 /*
219  * Swap two variables values
220  */
221 #define ucs_swap(_a, _b) \
222  { \
223  ucs_typeof(*(_a)) __tmp; \
224  \
225  UCS_STATIC_ASSERT(ucs_same_type(ucs_typeof(*(_a)), ucs_typeof(*(_b)))); \
226  __tmp = *(_a); \
227  *(_a) = *(_b); \
228  *(_b) = __tmp; \
229  }
230 
231 #endif /* UCS_COMPILER_DEF_H */
+
+ + + + diff --git a/api/v1.14/html/deprecated.html b/api/v1.14/html/deprecated.html new file mode 100644 index 00000000000..e3f1154ed1c --- /dev/null +++ b/api/v1.14/html/deprecated.html @@ -0,0 +1,209 @@ + + + + + + +UCX: Deprecated List + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Deprecated List
+
+
+
+
Global ucp_am_send_nb (ucp_ep_h ep, uint16_t id, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_send_callback_t cb, unsigned flags)
+
Use ucp_am_send_nbx instead.
+
Global ucp_atomic_add32 (ucp_ep_h ep, uint32_t add, uint64_t remote_addr, ucp_rkey_h rkey)
+
Replaced by ucp_atomic_post with opcode UCP_ATOMIC_POST_OP_ADD.
+
Global ucp_atomic_add64 (ucp_ep_h ep, uint64_t add, uint64_t remote_addr, ucp_rkey_h rkey)
+
Replaced by ucp_atomic_post with opcode UCP_ATOMIC_POST_OP_ADD.
+
Global ucp_atomic_cswap32 (ucp_ep_h ep, uint32_t compare, uint32_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
+
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_CSWAP.
+
Global ucp_atomic_cswap64 (ucp_ep_h ep, uint64_t compare, uint64_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
+
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_CSWAP.
+
Global ucp_atomic_fadd32 (ucp_ep_h ep, uint32_t add, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
+
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_FADD.
+
Global ucp_atomic_fadd64 (ucp_ep_h ep, uint64_t add, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
+
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_FADD.
+
Global ucp_atomic_fetch_nb (ucp_ep_h ep, ucp_atomic_fetch_op_t opcode, uint64_t value, void *result, size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
+
Use ucp_atomic_op_nbx with the flag UCP_OP_ATTR_FIELD_REPLY_BUFFER instead.
+
Global ucp_atomic_fetch_op_t
+
Use ucp_atomic_op_nbx and ucp_atomic_op_t instead.
+
Global ucp_atomic_post (ucp_ep_h ep, ucp_atomic_post_op_t opcode, uint64_t value, size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey)
+
Use ucp_atomic_op_nbx without the flag UCP_OP_ATTR_FIELD_REPLY_BUFFER instead.
+
Global ucp_atomic_post_op_t
+
Use ucp_atomic_op_nbx and ucp_atomic_op_t instead.
+
Global ucp_atomic_swap32 (ucp_ep_h ep, uint32_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
+
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_SWAP.
+
Global ucp_atomic_swap64 (ucp_ep_h ep, uint64_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
+
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_SWAP.
+
Global ucp_disconnect_nb (ucp_ep_h ep)
+
Replaced by ucp_ep_close_nb.
+
Global ucp_ep_close_nb (ucp_ep_h ep, unsigned mode)
+
Use ucp_ep_close_nbx instead.
+
Global ucp_ep_destroy (ucp_ep_h ep)
+
Replaced by ucp_ep_close_nb.
+
Global ucp_ep_flush (ucp_ep_h ep)
+
Replaced by ucp_ep_flush_nb.
+
Global ucp_ep_flush_nb (ucp_ep_h ep, unsigned flags, ucp_send_callback_t cb)
+
Use ucp_ep_flush_nbx instead.
+
Global ucp_ep_modify_nb (ucp_ep_h ep, const ucp_ep_params_t *params)
+
Use ucp_listener_conn_handler_t instead of ucp_listener_accept_handler_t, if you have other use case please submit an issue on https://github.com/openucx/ucx or report to ucx-g.nosp@m.roup.nosp@m.@elis.nosp@m.t.or.nosp@m.nl.go.nosp@m.v
+
Global ucp_get (ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
+
Replaced by ucp_get_nb.
+
Global ucp_get_nb (ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
+
Use ucp_get_nbx instead.
+
Global ucp_get_nbi (ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
+
Use ucp_get_nbx without passing the flag UCP_OP_ATTR_FIELD_CALLBACK instead. If a request pointer is returned, release it immediately by ucp_request_free.
+
Global ucp_listener_accept_handler_t
+
Replaced by ucp_listener_conn_handler_t.
+
Global ucp_listener_accept_handler_t
+
Replaced by ucp_listener_conn_handler_t.
+
Global ucp_put (ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
+
Replaced by ucp_put_nb. The following example implements the same functionality using ucp_put_nb :
+
Global ucp_put_nb (ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
+
Use ucp_put_nbx instead.
+
Global ucp_put_nbi (ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
+
Use ucp_put_nbx without passing the flag UCP_OP_ATTR_FIELD_CALLBACK instead. If a request pointer is returned, release it immediately by ucp_request_free.
+
Global ucp_request_is_completed (void *request)
+
Replaced by ucp_request_test.
+
Global ucp_request_release (void *request)
+
Replaced by ucp_request_free.
+
Global ucp_request_test (void *request, ucp_tag_recv_info_t *info)
+
Replaced by ucp_tag_recv_request_test and ucp_request_check_status depends on use case.
+
Global ucp_rkey_buffer_release (void *rkey_buffer)
+
Replaced by ucp_memh_buffer_release().
+
Global ucp_rkey_pack (ucp_context_h context, ucp_mem_h memh, void **rkey_buffer_p, size_t *size_p)
+
Replaced by ucp_memh_pack().
+
Global ucp_stream_recv_nb (ucp_ep_h ep, void *buffer, size_t count, ucp_datatype_t datatype, ucp_stream_recv_callback_t cb, size_t *length, unsigned flags)
+
Use ucp_stream_recv_nbx instead.
+
Global ucp_stream_send_nb (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_send_callback_t cb, unsigned flags)
+
Use ucp_stream_send_nbx instead.
+
Global ucp_tag_msg_recv_nb (ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_message_h message, ucp_tag_recv_callback_t cb)
+
Use ucp_tag_recv_nbx instead.
+
Global ucp_tag_recv_nb (ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_tag_t tag_mask, ucp_tag_recv_callback_t cb)
+
Use ucp_tag_recv_nbx instead.
+
Global ucp_tag_recv_nbr (ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_tag_t tag_mask, void *req)
+
Use ucp_tag_recv_nbx with the flag UCP_OP_ATTR_FIELD_REQUEST instead.
+
Global ucp_tag_send_nb (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_send_callback_t cb)
+
Use ucp_tag_send_nbx instead.
+
Global ucp_tag_send_nbr (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, void *req)
+
Use ucp_tag_send_nbx with the flag UCP_OP_ATTR_FIELD_REQUEST instead.
+
Global ucp_tag_send_sync_nb (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_send_callback_t cb)
+
Use ucp_tag_send_sync_nbx instead.
+
Global ucp_worker_flush (ucp_worker_h worker)
+
Replaced by ucp_worker_flush_nb. The following example implements the same functionality using ucp_worker_flush_nb :
+
Global ucp_worker_flush_nb (ucp_worker_h worker, unsigned flags, ucp_send_callback_t cb)
+
Use ucp_worker_flush_nbx instead.
+
Global ucp_worker_get_address (ucp_worker_h worker, ucp_address_t **address_p, size_t *address_length_p)
+
Use ucp_worker_query with the flag UCP_WORKER_ATTR_FIELD_ADDRESS in order to obtain the worker address.
+
Global ucp_worker_set_am_handler (ucp_worker_h worker, uint16_t id, ucp_am_callback_t cb, void *arg, uint32_t flags)
+
Use ucp_worker_set_am_recv_handler instead.
+
+
+
+ + + + diff --git a/api/v1.14/html/dir_1659c59dcdbe18b621f54b1ef0f6f4c9.html b/api/v1.14/html/dir_1659c59dcdbe18b621f54b1ef0f6f4c9.html new file mode 100644 index 00000000000..9daf041d550 --- /dev/null +++ b/api/v1.14/html/dir_1659c59dcdbe18b621f54b1ef0f6f4c9.html @@ -0,0 +1,130 @@ + + + + + + +UCX: api Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
api Directory Reference
+
+
+ + + + + + + + +

+Files

file  ucp.h [code]
 
file  ucp_compat.h [code]
 
file  ucp_def.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_1c93fb0e274825ee3f8885f93e5ea363.html b/api/v1.14/html/dir_1c93fb0e274825ee3f8885f93e5ea363.html new file mode 100644 index 00000000000..12b7e5bcff7 --- /dev/null +++ b/api/v1.14/html/dir_1c93fb0e274825ee3f8885f93e5ea363.html @@ -0,0 +1,129 @@ + + + + + + +UCX: api Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
api Directory Reference
+
+
+ + + + + + + +

+Files

file  uct.h [code]
 Unified Communication Transport.
 
file  uct_def.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_36fdb95a94f45e39a2040c31ddd31225.html b/api/v1.14/html/dir_36fdb95a94f45e39a2040c31ddd31225.html new file mode 100644 index 00000000000..31b28083af5 --- /dev/null +++ b/api/v1.14/html/dir_36fdb95a94f45e39a2040c31ddd31225.html @@ -0,0 +1,126 @@ + + + + + + +UCX: async Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
async Directory Reference
+
+
+ + + + +

+Files

file  async_fwd.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_4b6387ca6c2433d33ff8cebb03d1c9cf.html b/api/v1.14/html/dir_4b6387ca6c2433d33ff8cebb03d1c9cf.html new file mode 100644 index 00000000000..ee5debb7fd2 --- /dev/null +++ b/api/v1.14/html/dir_4b6387ca6c2433d33ff8cebb03d1c9cf.html @@ -0,0 +1,138 @@ + + + + + + +UCX: ucs Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucs Directory Reference
+
+
+ + + + + + + + + + + + + + + + +

+Directories

directory  async
 
directory  config
 
directory  datastruct
 
directory  memory
 
directory  sys
 
directory  time
 
directory  type
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_4c780fc7bd1b054a8fd909bf37e638e8.html b/api/v1.14/html/dir_4c780fc7bd1b054a8fd909bf37e638e8.html new file mode 100644 index 00000000000..51c2425d6b5 --- /dev/null +++ b/api/v1.14/html/dir_4c780fc7bd1b054a8fd909bf37e638e8.html @@ -0,0 +1,126 @@ + + + + + + +UCX: time Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
time Directory Reference
+
+
+ + + + +

+Files

file  time_def.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/api/v1.14/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html new file mode 100644 index 00000000000..291a3636780 --- /dev/null +++ b/api/v1.14/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -0,0 +1,130 @@ + + + + + + +UCX: src Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
src Directory Reference
+
+
+ + + + + + + + +

+Directories

directory  ucp
 
directory  ucs
 
directory  uct
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_7e9580f7d5a447a1ad6c976d66f43d97.html b/api/v1.14/html/dir_7e9580f7d5a447a1ad6c976d66f43d97.html new file mode 100644 index 00000000000..61330839576 --- /dev/null +++ b/api/v1.14/html/dir_7e9580f7d5a447a1ad6c976d66f43d97.html @@ -0,0 +1,126 @@ + + + + + + +UCX: ucp Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucp Directory Reference
+
+
+ + + + +

+Directories

directory  api
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_8763891bebbe3f83ca5e81e2d3bf898e.html b/api/v1.14/html/dir_8763891bebbe3f83ca5e81e2d3bf898e.html new file mode 100644 index 00000000000..7e7dd48cf21 --- /dev/null +++ b/api/v1.14/html/dir_8763891bebbe3f83ca5e81e2d3bf898e.html @@ -0,0 +1,126 @@ + + + + + + +UCX: memory Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
memory Directory Reference
+
+
+ + + + +

+Files

file  memory_type.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_9182fa9dcf28807332430d9f0469c7a9.html b/api/v1.14/html/dir_9182fa9dcf28807332430d9f0469c7a9.html new file mode 100644 index 00000000000..acb37e0ff7b --- /dev/null +++ b/api/v1.14/html/dir_9182fa9dcf28807332430d9f0469c7a9.html @@ -0,0 +1,129 @@ + + + + + + +UCX: type Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
type Directory Reference
+
+
+ + + + + + + +

+Files

file  status.h [code]
 Unified Communication Services.
 
file  thread_mode.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_966ceeb60a198c7f2c4538eba94cad34.html b/api/v1.14/html/dir_966ceeb60a198c7f2c4538eba94cad34.html new file mode 100644 index 00000000000..abe7fc2f4f9 --- /dev/null +++ b/api/v1.14/html/dir_966ceeb60a198c7f2c4538eba94cad34.html @@ -0,0 +1,126 @@ + + + + + + +UCX: config Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
config Directory Reference
+
+
+ + + + +

+Files

file  types.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_9c8a053dfc2c97cd678899a55ba24f2d.html b/api/v1.14/html/dir_9c8a053dfc2c97cd678899a55ba24f2d.html new file mode 100644 index 00000000000..81cc28db540 --- /dev/null +++ b/api/v1.14/html/dir_9c8a053dfc2c97cd678899a55ba24f2d.html @@ -0,0 +1,126 @@ + + + + + + +UCX: uct Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
uct Directory Reference
+
+
+ + + + +

+Directories

directory  api
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_bda1aca17be1467105c0c9d575a28072.html b/api/v1.14/html/dir_bda1aca17be1467105c0c9d575a28072.html new file mode 100644 index 00000000000..a97cdd442d8 --- /dev/null +++ b/api/v1.14/html/dir_bda1aca17be1467105c0c9d575a28072.html @@ -0,0 +1,126 @@ + + + + + + +UCX: sys Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
sys Directory Reference
+
+
+ + + + +

+Files

file  compiler_def.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/dir_f0a01d00a336ff0b43099df76ae9e0f7.html b/api/v1.14/html/dir_f0a01d00a336ff0b43099df76ae9e0f7.html new file mode 100644 index 00000000000..5986b379068 --- /dev/null +++ b/api/v1.14/html/dir_f0a01d00a336ff0b43099df76ae9e0f7.html @@ -0,0 +1,126 @@ + + + + + + +UCX: datastruct Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
datastruct Directory Reference
+
+
+ + + + +

+Files

file  callbackq.h [code]
 
+
+
+ + + + diff --git a/api/v1.14/html/doc.png b/api/v1.14/html/doc.png new file mode 100644 index 00000000000..17edabff95f Binary files /dev/null and b/api/v1.14/html/doc.png differ diff --git a/api/v1.14/html/doxygen.css b/api/v1.14/html/doxygen.css new file mode 100644 index 00000000000..1425ec530d3 --- /dev/null +++ b/api/v1.14/html/doxygen.css @@ -0,0 +1,1475 @@ +/* The standard CSS for doxygen 1.8.11 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px 6px; + margin: 4px 8px 4px 2px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content:"\000A"; + white-space: pre; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah, span.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #9CAFD4; + border-bottom: 1px solid #9CAFD4; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +.arrow { + color: #9CAFD4; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #728DC1; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto,sans-serif; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +table.classindex +{ + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectalign +{ + vertical-align: middle; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/api/v1.14/html/doxygen.png b/api/v1.14/html/doxygen.png new file mode 100644 index 00000000000..3ff17d807fd Binary files /dev/null and b/api/v1.14/html/doxygen.png differ diff --git a/api/v1.14/html/dynsections.js b/api/v1.14/html/dynsections.js new file mode 100644 index 00000000000..85e18369095 --- /dev/null +++ b/api/v1.14/html/dynsections.js @@ -0,0 +1,97 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + +UCX: Examples + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Examples
+
+
+
Here is a list of all examples:
+
+
+ + + + diff --git a/api/v1.14/html/examples.js b/api/v1.14/html/examples.js new file mode 100644 index 00000000000..b6e621fd27d --- /dev/null +++ b/api/v1.14/html/examples.js @@ -0,0 +1,6 @@ +var examples = +[ + [ "ucp_client_server.c", "ucp_client_server_8c-example.html", null ], + [ "ucp_hello_world.c", "ucp_hello_world_8c-example.html", null ], + [ "uct_hello_world.c", "uct_hello_world_8c-example.html", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/folderclosed.png b/api/v1.14/html/folderclosed.png new file mode 100644 index 00000000000..bb8ab35edce Binary files /dev/null and b/api/v1.14/html/folderclosed.png differ diff --git a/api/v1.14/html/folderopen.png b/api/v1.14/html/folderopen.png new file mode 100644 index 00000000000..d6c7f676a3b Binary files /dev/null and b/api/v1.14/html/folderopen.png differ diff --git a/api/v1.14/html/functions.html b/api/v1.14/html/functions.html new file mode 100644 index 00000000000..8cebc5858a3 --- /dev/null +++ b/api/v1.14/html/functions.html @@ -0,0 +1,208 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- a -

+
+
+ + + + diff --git a/api/v1.14/html/functions_b.html b/api/v1.14/html/functions_b.html new file mode 100644 index 00000000000..84777fb29e6 --- /dev/null +++ b/api/v1.14/html/functions_b.html @@ -0,0 +1,169 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- b -

+
+
+ + + + diff --git a/api/v1.14/html/functions_c.html b/api/v1.14/html/functions_c.html new file mode 100644 index 00000000000..5d73b924458 --- /dev/null +++ b/api/v1.14/html/functions_c.html @@ -0,0 +1,213 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- c -

+
+
+ + + + diff --git a/api/v1.14/html/functions_d.html b/api/v1.14/html/functions_d.html new file mode 100644 index 00000000000..c8e9dff9382 --- /dev/null +++ b/api/v1.14/html/functions_d.html @@ -0,0 +1,201 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- d -

+
+
+ + + + diff --git a/api/v1.14/html/functions_dup.js b/api/v1.14/html/functions_dup.js new file mode 100644 index 00000000000..429a6a67d00 --- /dev/null +++ b/api/v1.14/html/functions_dup.js @@ -0,0 +1,22 @@ +var functions_dup = +[ + [ "a", "functions.html", null ], + [ "b", "functions_b.html", null ], + [ "c", "functions_c.html", null ], + [ "d", "functions_d.html", null ], + [ "e", "functions_e.html", null ], + [ "f", "functions_f.html", null ], + [ "h", "functions_h.html", null ], + [ "i", "functions_i.html", null ], + [ "k", "functions_k.html", null ], + [ "l", "functions_l.html", null ], + [ "m", "functions_m.html", null ], + [ "n", "functions_n.html", null ], + [ "o", "functions_o.html", null ], + [ "p", "functions_p.html", null ], + [ "r", "functions_r.html", null ], + [ "s", "functions_s.html", null ], + [ "t", "functions_t.html", null ], + [ "u", "functions_u.html", null ], + [ "w", "functions_w.html", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/functions_e.html b/api/v1.14/html/functions_e.html new file mode 100644 index 00000000000..6488803b3fd --- /dev/null +++ b/api/v1.14/html/functions_e.html @@ -0,0 +1,204 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- e -

+
+
+ + + + diff --git a/api/v1.14/html/functions_f.html b/api/v1.14/html/functions_f.html new file mode 100644 index 00000000000..fc089d1df6d --- /dev/null +++ b/api/v1.14/html/functions_f.html @@ -0,0 +1,222 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + diff --git a/api/v1.14/html/functions_h.html b/api/v1.14/html/functions_h.html new file mode 100644 index 00000000000..4b7d4540004 --- /dev/null +++ b/api/v1.14/html/functions_h.html @@ -0,0 +1,158 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- h -

+
+
+ + + + diff --git a/api/v1.14/html/functions_i.html b/api/v1.14/html/functions_i.html new file mode 100644 index 00000000000..780972fa327 --- /dev/null +++ b/api/v1.14/html/functions_i.html @@ -0,0 +1,168 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- i -

+
+
+ + + + diff --git a/api/v1.14/html/functions_k.html b/api/v1.14/html/functions_k.html new file mode 100644 index 00000000000..1021ba538fe --- /dev/null +++ b/api/v1.14/html/functions_k.html @@ -0,0 +1,158 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- k -

+
+
+ + + + diff --git a/api/v1.14/html/functions_l.html b/api/v1.14/html/functions_l.html new file mode 100644 index 00000000000..90f4d873b7a --- /dev/null +++ b/api/v1.14/html/functions_l.html @@ -0,0 +1,181 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- l -

+
+
+ + + + diff --git a/api/v1.14/html/functions_m.html b/api/v1.14/html/functions_m.html new file mode 100644 index 00000000000..1ca2d8959ff --- /dev/null +++ b/api/v1.14/html/functions_m.html @@ -0,0 +1,218 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- m -

+
+
+ + + + diff --git a/api/v1.14/html/functions_n.html b/api/v1.14/html/functions_n.html new file mode 100644 index 00000000000..fac7f9740f0 --- /dev/null +++ b/api/v1.14/html/functions_n.html @@ -0,0 +1,169 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- n -

+
+
+ + + + diff --git a/api/v1.14/html/functions_o.html b/api/v1.14/html/functions_o.html new file mode 100644 index 00000000000..4f1a19e3157 --- /dev/null +++ b/api/v1.14/html/functions_o.html @@ -0,0 +1,164 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- o -

+
+
+ + + + diff --git a/api/v1.14/html/functions_p.html b/api/v1.14/html/functions_p.html new file mode 100644 index 00000000000..3562f444439 --- /dev/null +++ b/api/v1.14/html/functions_p.html @@ -0,0 +1,184 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- p -

+
+
+ + + + diff --git a/api/v1.14/html/functions_r.html b/api/v1.14/html/functions_r.html new file mode 100644 index 00000000000..573e99771c3 --- /dev/null +++ b/api/v1.14/html/functions_r.html @@ -0,0 +1,209 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- r -

+
+
+ + + + diff --git a/api/v1.14/html/functions_s.html b/api/v1.14/html/functions_s.html new file mode 100644 index 00000000000..c688d81848f --- /dev/null +++ b/api/v1.14/html/functions_s.html @@ -0,0 +1,205 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- s -

+
+
+ + + + diff --git a/api/v1.14/html/functions_t.html b/api/v1.14/html/functions_t.html new file mode 100644 index 00000000000..98bace66c9f --- /dev/null +++ b/api/v1.14/html/functions_t.html @@ -0,0 +1,178 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- t -

+
+
+ + + + diff --git a/api/v1.14/html/functions_u.html b/api/v1.14/html/functions_u.html new file mode 100644 index 00000000000..c828f22f558 --- /dev/null +++ b/api/v1.14/html/functions_u.html @@ -0,0 +1,166 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- u -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars.html b/api/v1.14/html/functions_vars.html new file mode 100644 index 00000000000..c01eda22ede --- /dev/null +++ b/api/v1.14/html/functions_vars.html @@ -0,0 +1,208 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- a -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars.js b/api/v1.14/html/functions_vars.js new file mode 100644 index 00000000000..e21e85cde09 --- /dev/null +++ b/api/v1.14/html/functions_vars.js @@ -0,0 +1,22 @@ +var functions_vars = +[ + [ "a", "functions_vars.html", null ], + [ "b", "functions_vars_b.html", null ], + [ "c", "functions_vars_c.html", null ], + [ "d", "functions_vars_d.html", null ], + [ "e", "functions_vars_e.html", null ], + [ "f", "functions_vars_f.html", null ], + [ "h", "functions_vars_h.html", null ], + [ "i", "functions_vars_i.html", null ], + [ "k", "functions_vars_k.html", null ], + [ "l", "functions_vars_l.html", null ], + [ "m", "functions_vars_m.html", null ], + [ "n", "functions_vars_n.html", null ], + [ "o", "functions_vars_o.html", null ], + [ "p", "functions_vars_p.html", null ], + [ "r", "functions_vars_r.html", null ], + [ "s", "functions_vars_s.html", null ], + [ "t", "functions_vars_t.html", null ], + [ "u", "functions_vars_u.html", null ], + [ "w", "functions_vars_w.html", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/functions_vars_b.html b/api/v1.14/html/functions_vars_b.html new file mode 100644 index 00000000000..c30bbfd14f4 --- /dev/null +++ b/api/v1.14/html/functions_vars_b.html @@ -0,0 +1,169 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- b -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_c.html b/api/v1.14/html/functions_vars_c.html new file mode 100644 index 00000000000..d83f94420bc --- /dev/null +++ b/api/v1.14/html/functions_vars_c.html @@ -0,0 +1,213 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- c -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_d.html b/api/v1.14/html/functions_vars_d.html new file mode 100644 index 00000000000..be8d2e79621 --- /dev/null +++ b/api/v1.14/html/functions_vars_d.html @@ -0,0 +1,201 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- d -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_e.html b/api/v1.14/html/functions_vars_e.html new file mode 100644 index 00000000000..7d83d74f28e --- /dev/null +++ b/api/v1.14/html/functions_vars_e.html @@ -0,0 +1,204 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- e -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_f.html b/api/v1.14/html/functions_vars_f.html new file mode 100644 index 00000000000..ea6e17fb98a --- /dev/null +++ b/api/v1.14/html/functions_vars_f.html @@ -0,0 +1,222 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + diff --git a/api/v1.14/html/functions_vars_h.html b/api/v1.14/html/functions_vars_h.html new file mode 100644 index 00000000000..b1477e8b61c --- /dev/null +++ b/api/v1.14/html/functions_vars_h.html @@ -0,0 +1,158 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- h -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_i.html b/api/v1.14/html/functions_vars_i.html new file mode 100644 index 00000000000..c5505ce2b00 --- /dev/null +++ b/api/v1.14/html/functions_vars_i.html @@ -0,0 +1,168 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- i -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_k.html b/api/v1.14/html/functions_vars_k.html new file mode 100644 index 00000000000..c2b88d5b4b6 --- /dev/null +++ b/api/v1.14/html/functions_vars_k.html @@ -0,0 +1,158 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- k -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_l.html b/api/v1.14/html/functions_vars_l.html new file mode 100644 index 00000000000..120a0209fe6 --- /dev/null +++ b/api/v1.14/html/functions_vars_l.html @@ -0,0 +1,181 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- l -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_m.html b/api/v1.14/html/functions_vars_m.html new file mode 100644 index 00000000000..7f7be925305 --- /dev/null +++ b/api/v1.14/html/functions_vars_m.html @@ -0,0 +1,218 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- m -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_n.html b/api/v1.14/html/functions_vars_n.html new file mode 100644 index 00000000000..e1e54dbb9e0 --- /dev/null +++ b/api/v1.14/html/functions_vars_n.html @@ -0,0 +1,169 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + diff --git a/api/v1.14/html/functions_vars_o.html b/api/v1.14/html/functions_vars_o.html new file mode 100644 index 00000000000..0cd0d902e3e --- /dev/null +++ b/api/v1.14/html/functions_vars_o.html @@ -0,0 +1,164 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- o -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_p.html b/api/v1.14/html/functions_vars_p.html new file mode 100644 index 00000000000..01f5748833b --- /dev/null +++ b/api/v1.14/html/functions_vars_p.html @@ -0,0 +1,184 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- p -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_r.html b/api/v1.14/html/functions_vars_r.html new file mode 100644 index 00000000000..147dc0bff55 --- /dev/null +++ b/api/v1.14/html/functions_vars_r.html @@ -0,0 +1,209 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- r -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_s.html b/api/v1.14/html/functions_vars_s.html new file mode 100644 index 00000000000..7688ef88bff --- /dev/null +++ b/api/v1.14/html/functions_vars_s.html @@ -0,0 +1,205 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- s -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_t.html b/api/v1.14/html/functions_vars_t.html new file mode 100644 index 00000000000..8431a14cf6c --- /dev/null +++ b/api/v1.14/html/functions_vars_t.html @@ -0,0 +1,178 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- t -

+
+
+ + + + diff --git a/api/v1.14/html/functions_vars_u.html b/api/v1.14/html/functions_vars_u.html new file mode 100644 index 00000000000..d591d8cbdb7 --- /dev/null +++ b/api/v1.14/html/functions_vars_u.html @@ -0,0 +1,166 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + diff --git a/api/v1.14/html/functions_vars_w.html b/api/v1.14/html/functions_vars_w.html new file mode 100644 index 00000000000..5e9dcdc237e --- /dev/null +++ b/api/v1.14/html/functions_vars_w.html @@ -0,0 +1,158 @@ + + + + + + +UCX: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- w -

+
+
+ + + + diff --git a/api/v1.14/html/functions_w.html b/api/v1.14/html/functions_w.html new file mode 100644 index 00000000000..c8371f04075 --- /dev/null +++ b/api/v1.14/html/functions_w.html @@ -0,0 +1,158 @@ + + + + + + +UCX: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- w -

+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___a_p_i.html b/api/v1.14/html/group___u_c_p___a_p_i.html new file mode 100644 index 00000000000..adad89dff87 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___a_p_i.html @@ -0,0 +1,143 @@ + + + + + + +UCX: Unified Communication Protocol (UCP) API + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Unified Communication Protocol (UCP) API
+
+
+ + + + + + + + + + + + + + + + + + +

+Modules

 UCP Application Context
 
 UCP Worker
 
 UCP Memory routines
 
 UCP Wake-up routines
 
 UCP Endpoint
 
 UCP Communication routines
 
 UCP Configuration
 
 UCP Data type routines
 
+

Detailed Description

+

This section describes UCP API.

+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___a_p_i.js b/api/v1.14/html/group___u_c_p___a_p_i.js new file mode 100644 index 00000000000..6901e7eeff4 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___a_p_i.js @@ -0,0 +1,11 @@ +var group___u_c_p___a_p_i = +[ + [ "UCP Application Context", "group___u_c_p___c_o_n_t_e_x_t.html", "group___u_c_p___c_o_n_t_e_x_t" ], + [ "UCP Worker", "group___u_c_p___w_o_r_k_e_r.html", "group___u_c_p___w_o_r_k_e_r" ], + [ "UCP Memory routines", "group___u_c_p___m_e_m.html", "group___u_c_p___m_e_m" ], + [ "UCP Wake-up routines", "group___u_c_p___w_a_k_e_u_p.html", "group___u_c_p___w_a_k_e_u_p" ], + [ "UCP Endpoint", "group___u_c_p___e_n_d_p_o_i_n_t.html", "group___u_c_p___e_n_d_p_o_i_n_t" ], + [ "UCP Communication routines", "group___u_c_p___c_o_m_m.html", "group___u_c_p___c_o_m_m" ], + [ "UCP Configuration", "group___u_c_p___c_o_n_f_i_g.html", "group___u_c_p___c_o_n_f_i_g" ], + [ "UCP Data type routines", "group___u_c_p___d_a_t_a_t_y_p_e.html", "group___u_c_p___d_a_t_a_t_y_p_e" ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_m_m.html b/api/v1.14/html/group___u_c_p___c_o_m_m.html new file mode 100644 index 00000000000..ea8023cced5 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_m_m.html @@ -0,0 +1,3747 @@ + + + + + + +UCX: UCP Communication routines + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + +

+Data Structures

struct  ucp_request_attr_t
 Attributes of a particular request. More...
 
struct  ucp_err_handler
 UCP endpoint error handling context. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef uint64_t ucp_tag_t
 UCP Tag Identifier. More...
 
typedef struct ucp_recv_desc * ucp_tag_message_h
 UCP Message descriptor. More...
 
typedef uint64_t ucp_datatype_t
 UCP Datatype Identifier. More...
 
typedef void(* ucp_send_callback_t) (void *request, ucs_status_t status)
 Completion callback for non-blocking sends. More...
 
typedef void(* ucp_send_nbx_callback_t) (void *request, ucs_status_t status, void *user_data)
 Completion callback for non-blocking sends. More...
 
typedef void(* ucp_err_handler_cb_t) (void *arg, ucp_ep_h ep, ucs_status_t status)
 Callback to process peer failure. More...
 
typedef struct ucp_err_handler ucp_err_handler_t
 UCP endpoint error handling context. More...
 
typedef void(* ucp_stream_recv_callback_t) (void *request, ucs_status_t status, size_t length)
 Completion callback for non-blocking stream oriented receives. More...
 
typedef void(* ucp_stream_recv_nbx_callback_t) (void *request, ucs_status_t status, size_t length, void *user_data)
 Completion callback for non-blocking stream receives ucp_stream_recv_nbx call. More...
 
typedef void(* ucp_tag_recv_callback_t) (void *request, ucs_status_t status, ucp_tag_recv_info_t *info)
 Completion callback for non-blocking tag receives. More...
 
typedef void(* ucp_tag_recv_nbx_callback_t) (void *request, ucs_status_t status, const ucp_tag_recv_info_t *tag_info, void *user_data)
 Completion callback for non-blocking tag receives ucp_tag_recv_nbx call. More...
 
typedef void(* ucp_am_recv_data_nbx_callback_t) (void *request, ucs_status_t status, size_t length, void *user_data)
 Completion callback for non-blocking Active Message receives. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  ucp_atomic_op_t {
+  UCP_ATOMIC_OP_ADD, +UCP_ATOMIC_OP_SWAP, +UCP_ATOMIC_OP_CSWAP, +UCP_ATOMIC_OP_AND, +
+  UCP_ATOMIC_OP_OR, +UCP_ATOMIC_OP_XOR, +UCP_ATOMIC_OP_LAST +
+ }
 Atomic operation requested for ucp_atomic_op_nbx. More...
 
enum  ucp_stream_recv_flags_t { UCP_STREAM_RECV_FLAG_WAITALL = UCS_BIT(0) + }
 Flags to define behavior of ucp_stream_recv_nb function. More...
 
enum  ucp_op_attr_t {
+  UCP_OP_ATTR_FIELD_REQUEST = UCS_BIT(0), +UCP_OP_ATTR_FIELD_CALLBACK = UCS_BIT(1), +UCP_OP_ATTR_FIELD_USER_DATA = UCS_BIT(2), +UCP_OP_ATTR_FIELD_DATATYPE = UCS_BIT(3), +
+  UCP_OP_ATTR_FIELD_FLAGS = UCS_BIT(4), +UCP_OP_ATTR_FIELD_REPLY_BUFFER = UCS_BIT(5), +UCP_OP_ATTR_FIELD_MEMORY_TYPE = UCS_BIT(6), +UCP_OP_ATTR_FIELD_RECV_INFO = UCS_BIT(7), +
+  UCP_OP_ATTR_FIELD_MEMH = UCS_BIT(8), +UCP_OP_ATTR_FLAG_NO_IMM_CMPL = UCS_BIT(16), +UCP_OP_ATTR_FLAG_FAST_CMPL = UCS_BIT(17), +UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL = UCS_BIT(18), +
+  UCP_OP_ATTR_FLAG_MULTI_SEND = UCS_BIT(19) +
+ }
 UCP operation fields and flags. More...
 
enum  ucp_req_attr_field { UCP_REQUEST_ATTR_FIELD_INFO_STRING = UCS_BIT(0), +UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE = UCS_BIT(1), +UCP_REQUEST_ATTR_FIELD_STATUS = UCS_BIT(2), +UCP_REQUEST_ATTR_FIELD_MEM_TYPE = UCS_BIT(3) + }
 UCP request query attributes. More...
 
enum  ucp_am_recv_attr_t { UCP_AM_RECV_ATTR_FIELD_REPLY_EP = UCS_BIT(0), +UCP_AM_RECV_ATTR_FLAG_DATA = UCS_BIT(16), +UCP_AM_RECV_ATTR_FLAG_RNDV = UCS_BIT(17) + }
 UCP AM receive data parameter fields and flags. More...
 
enum  ucp_am_handler_param_field { UCP_AM_HANDLER_PARAM_FIELD_ID = UCS_BIT(0), +UCP_AM_HANDLER_PARAM_FIELD_FLAGS = UCS_BIT(1), +UCP_AM_HANDLER_PARAM_FIELD_CB = UCS_BIT(2), +UCP_AM_HANDLER_PARAM_FIELD_ARG = UCS_BIT(3) + }
 UCP AM receive data parameters fields and flags. More...
 
enum  ucp_atomic_post_op_t {
+  UCP_ATOMIC_POST_OP_ADD, +UCP_ATOMIC_POST_OP_AND, +UCP_ATOMIC_POST_OP_OR, +UCP_ATOMIC_POST_OP_XOR, +
+  UCP_ATOMIC_POST_OP_LAST +
+ }
 Atomic operation requested for ucp_atomic_post. More...
 
enum  ucp_atomic_fetch_op_t {
+  UCP_ATOMIC_FETCH_OP_FADD, +UCP_ATOMIC_FETCH_OP_SWAP, +UCP_ATOMIC_FETCH_OP_CSWAP, +UCP_ATOMIC_FETCH_OP_FAND, +
+  UCP_ATOMIC_FETCH_OP_FOR, +UCP_ATOMIC_FETCH_OP_FXOR, +UCP_ATOMIC_FETCH_OP_LAST +
+ }
 Atomic operation requested for ucp_atomic_fetch. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_request_query (void *request, ucp_request_attr_t *attr)
 Get information about ucp_request. More...
 
ucs_status_ptr_t ucp_am_send_nbx (ucp_ep_h ep, unsigned id, const void *header, size_t header_length, const void *buffer, size_t count, const ucp_request_param_t *param)
 Send Active Message. More...
 
ucs_status_ptr_t ucp_am_recv_data_nbx (ucp_worker_h worker, void *data_desc, void *buffer, size_t count, const ucp_request_param_t *param)
 Receive Active Message as defined by provided data descriptor. More...
 
void ucp_am_data_release (ucp_worker_h worker, void *data)
 Releases Active Message data. More...
 
ucs_status_ptr_t ucp_stream_send_nbx (ucp_ep_h ep, const void *buffer, size_t count, const ucp_request_param_t *param)
 Non-blocking stream send operation. More...
 
ucs_status_ptr_t ucp_tag_send_nbx (ucp_ep_h ep, const void *buffer, size_t count, ucp_tag_t tag, const ucp_request_param_t *param)
 Non-blocking tagged-send operation. More...
 
ucs_status_ptr_t ucp_tag_send_sync_nbx (ucp_ep_h ep, const void *buffer, size_t count, ucp_tag_t tag, const ucp_request_param_t *param)
 Non-blocking synchronous tagged-send operation. More...
 
ucs_status_ptr_t ucp_stream_recv_nbx (ucp_ep_h ep, void *buffer, size_t count, size_t *length, const ucp_request_param_t *param)
 Non-blocking stream receive operation of structured data into a user-supplied buffer. More...
 
ucs_status_ptr_t ucp_stream_recv_data_nb (ucp_ep_h ep, size_t *length)
 Non-blocking stream receive operation of unstructured data into a UCP-supplied buffer. More...
 
ucs_status_ptr_t ucp_tag_recv_nbx (ucp_worker_h worker, void *buffer, size_t count, ucp_tag_t tag, ucp_tag_t tag_mask, const ucp_request_param_t *param)
 Non-blocking tagged-receive operation. More...
 
ucp_tag_message_h ucp_tag_probe_nb (ucp_worker_h worker, ucp_tag_t tag, ucp_tag_t tag_mask, int remove, ucp_tag_recv_info_t *info)
 Non-blocking probe and return a message. More...
 
ucs_status_ptr_t ucp_tag_msg_recv_nbx (ucp_worker_h worker, void *buffer, size_t count, ucp_tag_message_h message, const ucp_request_param_t *param)
 Non-blocking receive operation for a probed message. More...
 
ucs_status_ptr_t ucp_put_nbx (ucp_ep_h ep, const void *buffer, size_t count, uint64_t remote_addr, ucp_rkey_h rkey, const ucp_request_param_t *param)
 Non-blocking remote memory put operation. More...
 
ucs_status_ptr_t ucp_get_nbx (ucp_ep_h ep, void *buffer, size_t count, uint64_t remote_addr, ucp_rkey_h rkey, const ucp_request_param_t *param)
 Non-blocking remote memory get operation. More...
 
ucs_status_ptr_t ucp_atomic_op_nbx (ucp_ep_h ep, ucp_atomic_op_t opcode, const void *buffer, size_t count, uint64_t remote_addr, ucp_rkey_h rkey, const ucp_request_param_t *param)
 Post an atomic memory operation. More...
 
ucs_status_t ucp_request_check_status (void *request)
 Check the status of non-blocking request. More...
 
ucs_status_t ucp_tag_recv_request_test (void *request, ucp_tag_recv_info_t *info)
 Check the status and currently available state of non-blocking request returned from ucp_tag_recv_nb routine. More...
 
ucs_status_t ucp_stream_recv_request_test (void *request, size_t *length_p)
 Check the status and currently available state of non-blocking request returned from ucp_stream_recv_nb routine. More...
 
void ucp_request_cancel (ucp_worker_h worker, void *request)
 Cancel an outstanding communications request. More...
 
void ucp_stream_data_release (ucp_ep_h ep, void *data)
 Release UCP data buffer returned by ucp_stream_recv_data_nb. More...
 
void ucp_request_free (void *request)
 Release a communications request. More...
 
void * ucp_request_alloc (ucp_worker_h worker)
 Create an empty communications request. More...
 
int ucp_request_is_completed (void *request)
 
ucs_status_t ucp_put (ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
 Blocking remote memory put operation. More...
 
ucs_status_t ucp_get (ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
 Blocking remote memory get operation. More...
 
ucs_status_t ucp_atomic_add32 (ucp_ep_h ep, uint32_t add, uint64_t remote_addr, ucp_rkey_h rkey)
 Blocking atomic add operation for 32 bit integers. More...
 
ucs_status_t ucp_atomic_add64 (ucp_ep_h ep, uint64_t add, uint64_t remote_addr, ucp_rkey_h rkey)
 Blocking atomic add operation for 64 bit integers. More...
 
ucs_status_t ucp_atomic_fadd32 (ucp_ep_h ep, uint32_t add, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
 Blocking atomic fetch and add operation for 32 bit integers. More...
 
ucs_status_t ucp_atomic_fadd64 (ucp_ep_h ep, uint64_t add, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
 Blocking atomic fetch and add operation for 64 bit integers. More...
 
ucs_status_t ucp_atomic_swap32 (ucp_ep_h ep, uint32_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
 Blocking atomic swap operation for 32 bit values. More...
 
ucs_status_t ucp_atomic_swap64 (ucp_ep_h ep, uint64_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
 Blocking atomic swap operation for 64 bit values. More...
 
ucs_status_t ucp_atomic_cswap32 (ucp_ep_h ep, uint32_t compare, uint32_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
 Blocking atomic conditional swap (cswap) operation for 32 bit values. More...
 
ucs_status_t ucp_atomic_cswap64 (ucp_ep_h ep, uint64_t compare, uint64_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
 Blocking atomic conditional swap (cswap) operation for 64 bit values. More...
 
ucs_status_ptr_t ucp_am_send_nb (ucp_ep_h ep, uint16_t id, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_send_callback_t cb, unsigned flags)
 Send Active Message. More...
 
ucs_status_ptr_t ucp_stream_send_nb (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_send_callback_t cb, unsigned flags)
 Non-blocking stream send operation. More...
 
ucs_status_ptr_t ucp_stream_recv_nb (ucp_ep_h ep, void *buffer, size_t count, ucp_datatype_t datatype, ucp_stream_recv_callback_t cb, size_t *length, unsigned flags)
 Non-blocking stream receive operation of structured data into a user-supplied buffer. More...
 
ucs_status_ptr_t ucp_tag_send_nb (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_send_callback_t cb)
 Non-blocking tagged-send operations. More...
 
ucs_status_t ucp_tag_send_nbr (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, void *req)
 Non-blocking tagged-send operations with user provided request. More...
 
ucs_status_ptr_t ucp_tag_send_sync_nb (ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_send_callback_t cb)
 Non-blocking synchronous tagged-send operation. More...
 
ucs_status_ptr_t ucp_tag_recv_nb (ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_tag_t tag_mask, ucp_tag_recv_callback_t cb)
 Non-blocking tagged-receive operation. More...
 
ucs_status_t ucp_tag_recv_nbr (ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_tag_t tag_mask, void *req)
 Non-blocking tagged-receive operation. More...
 
ucs_status_ptr_t ucp_tag_msg_recv_nb (ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_message_h message, ucp_tag_recv_callback_t cb)
 Non-blocking receive operation for a probed message. More...
 
ucs_status_t ucp_put_nbi (ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
 Non-blocking implicit remote memory put operation. More...
 
ucs_status_ptr_t ucp_put_nb (ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
 Non-blocking remote memory put operation. More...
 
ucs_status_t ucp_get_nbi (ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
 Non-blocking implicit remote memory get operation. More...
 
ucs_status_ptr_t ucp_get_nb (ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
 Non-blocking remote memory get operation. More...
 
ucs_status_t ucp_atomic_post (ucp_ep_h ep, ucp_atomic_post_op_t opcode, uint64_t value, size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey)
 Post an atomic memory operation. More...
 
ucs_status_ptr_t ucp_atomic_fetch_nb (ucp_ep_h ep, ucp_atomic_fetch_op_t opcode, uint64_t value, void *result, size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
 Post an atomic fetch operation. More...
 
+

Detailed Description

+

UCP Communication routines

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_request_attr_t
+
+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_req_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+char * +debug_string +

Pointer to allocated string of size debug_string_size that will be filled with debug information about transports and protocols that were selected to complete the request.

+
+size_t +debug_string_size +

Size of the debug_string. String will be filled up to this size. Maximum possible size debug string can be obtained by querying the worker via ucp_worker_query.

+
+ucs_status_t +status +

Status of the request. The same as ucp_request_check_status.

+
+ucs_memory_type_t +mem_type +

Detected memory type of the buffer passed to the operation.

+
+ +
+
+ +
+
+ + + + +
struct ucp_err_handler
+
+

This structure should be initialized in ucp_ep_params_t to handle peer failure

+
+ + + + + + + +
Data Fields
+ucp_err_handler_cb_t +cb +

Error handler callback, if NULL, will not be called.

+
+void * +arg +

User defined argument associated with an endpoint, it will be overridden by ucp_ep_params_t::user_data if both are set.

+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef uint64_t ucp_tag_t
+
+

UCP tag identifier is a 64bit object used for message identification. UCP tag send and receive operations use the object for an implementation tag matching semantics (derivative of MPI tag matching semantics).

+ +
+
+ +
+
+ + + + +
typedef struct ucp_recv_desc* ucp_tag_message_h
+
+

UCP Message descriptor is an opaque handle for a message returned by ucp_tag_probe_nb. This handle can be passed to ucp_tag_msg_recv_nb in order to receive the message data to a specific buffer.

+ +
+
+ +
+
+ + + + +
typedef uint64_t ucp_datatype_t
+
+

UCP datatype identifier is a 64bit object used for datatype identification. Predefined UCP identifiers are defined by ucp_dt_type.

+ +
+
+ +
+
+ + + + +
typedef void(* ucp_send_callback_t) (void *request, ucs_status_t status)
+
+

This callback routine is invoked whenever the send operation is completed. It is important to note that the call-back is only invoked in a case when the operation cannot be completed in place.

+
Parameters
+ + + +
[in]requestThe completed send request.
[in]statusCompletion status. If the send operation was completed successfully UCS_OK is returned. If send operation was canceled UCS_ERR_CANCELED is returned. Otherwise, an error status is returned.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_send_nbx_callback_t) (void *request, ucs_status_t status, void *user_data)
+
+

This callback routine is invoked whenever the ucp_tag_send_nbx, ucp_am_send_nbx, ucp_stream_send_nbx, ucp_put_nbx, ucp_get_nbx, ucp_atomic_op_nbx or any other "send operation" is completed.

+
Parameters
+ + + + +
[in]requestThe completed send request.
[in]statusCompletion status. If the send operation was completed successfully UCS_OK is returned. If send operation was canceled UCS_ERR_CANCELED is returned. Otherwise, an error status is returned.
[in]user_dataUser data passed to "user_data" value, see ucp_request_param_t
+
+
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + +
typedef void(* ucp_err_handler_cb_t) (void *arg, ucp_ep_h ep, ucs_status_t status)
+
+

This callback routine is invoked when transport level error detected.

+
Parameters
+ + + + +
[in]argUser argument to be passed to the callback.
[in]epEndpoint to handle transport level error. Upon return from the callback, this ep is no longer usable and all subsequent operations on this ep will fail with the error code passed in status.
[in]statuserror status.
+
+
+ +
+
+ +
+
+ + + + +
typedef struct ucp_err_handler ucp_err_handler_t
+
+

This structure should be initialized in ucp_ep_params_t to handle peer failure

+ +
+
+ +
+
+ + + + +
typedef void(* ucp_stream_recv_callback_t) (void *request, ucs_status_t status, size_t length)
+
+

This callback routine is invoked whenever the receive operation is completed and the data is ready in the receive buffer.

+
Parameters
+ + + + +
[in]requestThe completed receive request.
[in]statusCompletion status. If the send operation was completed successfully UCS_OK is returned. Otherwise, an error status is returned.
[in]lengthThe size of the received data in bytes, always boundary of base datatype size. The value is valid only if the status is UCS_OK.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_stream_recv_nbx_callback_t) (void *request, ucs_status_t status, size_t length, void *user_data)
+
+

This callback routine is invoked whenever the receive operation is completed and the data is ready in the receive buffer.

+
Parameters
+ + + + + +
[in]requestThe completed receive request.
[in]statusCompletion status. If the send operation was completed successfully UCS_OK is returned. Otherwise, an error status is returned.
[in]lengthThe size of the received data in bytes, always on the boundary of base datatype size. The value is valid only if the status is UCS_OK.
[in]user_dataUser data passed to "user_data" value, see ucp_request_param_t.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_tag_recv_callback_t) (void *request, ucs_status_t status, ucp_tag_recv_info_t *info)
+
+

This callback routine is invoked whenever the receive operation is completed and the data is ready in the receive buffer.

+
Parameters
+ + + + +
[in]requestThe completed receive request.
[in]statusCompletion status. If the send operation was completed successfully UCS_OK is returned. If send operation was canceled UCS_ERR_CANCELED is returned. If the data can not fit into the receive buffer the UCS_ERR_MESSAGE_TRUNCATED error code is returned. Otherwise, an error status is returned.
[in]infoCompletion information The info descriptor is Valid only if the status is UCS_OK.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_tag_recv_nbx_callback_t) (void *request, ucs_status_t status, const ucp_tag_recv_info_t *tag_info, void *user_data)
+
+

This callback routine is invoked whenever the receive operation is completed and the data is ready in the receive buffer.

+
Parameters
+ + + + + +
[in]requestThe completed receive request.
[in]statusCompletion status. If the receive operation was completed successfully UCS_OK is returned. If send operation was canceled, UCS_ERR_CANCELED is returned. If the data can not fit into the receive buffer the UCS_ERR_MESSAGE_TRUNCATED error code is returned. Otherwise, an error status is returned.
[in]tag_infoCompletion information The info descriptor is Valid only if the status is UCS_OK.
[in]user_dataUser data passed to "user_data" value, see ucp_request_param_t
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_am_recv_data_nbx_callback_t) (void *request, ucs_status_t status, size_t length, void *user_data)
+
+

This callback routine is invoked whenever the receive operation is completed and the data is ready in the receive buffer.

+
Parameters
+ + + + + +
[in]requestThe completed receive request.
[in]statusCompletion status. If the receive operation was completed successfully UCS_OK is returned. Otherwise, an error status is returned.
[in]lengthThe size of the received data in bytes, always boundary of base datatype size. The value is valid only if the status is UCS_OK.
[in]user_dataUser data passed to "user_data" value, see ucp_request_param_t
+
+
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucp_atomic_op_t
+
+

This enumeration defines which atomic memory operation should be performed by the ucp_atomic_op_nbx routine.

+ + + + + + + + +
Enumerator
UCP_ATOMIC_OP_ADD  +

Atomic add

+
UCP_ATOMIC_OP_SWAP  +

Atomic swap

+
UCP_ATOMIC_OP_CSWAP  +

Atomic conditional swap

+
UCP_ATOMIC_OP_AND  +

Atomic and

+
UCP_ATOMIC_OP_OR  +

Atomic or

+
UCP_ATOMIC_OP_XOR  +

Atomic xor

+
UCP_ATOMIC_OP_LAST  +
+ +
+
+ +
+
+ + + + +
enum ucp_stream_recv_flags_t
+
+

This enumeration defines behavior of ucp_stream_recv_nb function.

+ + +
Enumerator
UCP_STREAM_RECV_FLAG_WAITALL  +

This flag requests that the operation will not be completed until all requested data is received and placed in the user buffer.

+
+ +
+
+ +
+
+ + + + +
enum ucp_op_attr_t
+
+

The enumeration allows specifying which fields in ucp_request_param_t are present and operation flags are used. It is used to enable backward compatibility support.

+ + + + + + + + + + + + + + +
Enumerator
UCP_OP_ATTR_FIELD_REQUEST  +

request field

+
UCP_OP_ATTR_FIELD_CALLBACK  +

cb field

+
UCP_OP_ATTR_FIELD_USER_DATA  +

user_data field

+
UCP_OP_ATTR_FIELD_DATATYPE  +

datatype field

+
UCP_OP_ATTR_FIELD_FLAGS  +

operation-specific flags

+
UCP_OP_ATTR_FIELD_REPLY_BUFFER  +

reply_buffer field

+
UCP_OP_ATTR_FIELD_MEMORY_TYPE  +

memory type field

+
UCP_OP_ATTR_FIELD_RECV_INFO  +

recv_info field

+
UCP_OP_ATTR_FIELD_MEMH  +

memory handle field

+
UCP_OP_ATTR_FLAG_NO_IMM_CMPL  +

deny immediate completion

+
UCP_OP_ATTR_FLAG_FAST_CMPL  +

expedite local completion, even if it delays remote data delivery. Note for implementer: this option can disable zero copy and/or rendezvous protocols which require synchronization with the remote peer before releasing the local send buffer

+
UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL  +

force immediate complete operation, fail if the operation cannot be completed immediately

+
UCP_OP_ATTR_FLAG_MULTI_SEND  +

optimize for bandwidth of multiple in-flight operations, rather than for the latency of a single operation

+
+ +
+
+ +
+
+ + + + +
enum ucp_req_attr_field
+
+

The enumeration allows specifying which fields in ucp_request_attr_t are present. It is used to enable backward compatibility support.

+ + + + + +
Enumerator
UCP_REQUEST_ATTR_FIELD_INFO_STRING  +
UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE  +
UCP_REQUEST_ATTR_FIELD_STATUS  +
UCP_REQUEST_ATTR_FIELD_MEM_TYPE  +
+ +
+
+ +
+
+ + + + +
enum ucp_am_recv_attr_t
+
+

The enumeration allows specifying which fields in ucp_am_recv_param_t are present and receive operation flags are used. It is used to enable backward compatibility support.

+ + + + +
Enumerator
UCP_AM_RECV_ATTR_FIELD_REPLY_EP  +

reply_ep field

+
UCP_AM_RECV_ATTR_FLAG_DATA  +

Indicates that the data provided in ucp_am_recv_callback_t callback can be held by the user. If UCS_INPROGRESS is returned from the callback, the data parameter will persist and the user has to call ucp_am_data_release when data is no longer needed. This flag is mutually exclusive with UCP_AM_RECV_ATTR_FLAG_RNDV.

+
UCP_AM_RECV_ATTR_FLAG_RNDV  +

Indicates that the arriving data was sent using rendezvous protocol. In this case data parameter of the ucp_am_recv_callback_t points to the internal UCP descriptor, which can be used for obtaining the actual data by calling ucp_am_recv_data_nbx routine. This flag is mutually exclusive with UCP_AM_RECV_ATTR_FLAG_DATA.

+
+ +
+
+ +
+
+ + + + +
enum ucp_am_handler_param_field
+
+

The enumeration allows specifying which fields in ucp_am_handler_param_t are present. It is used to enable backward compatibility support.

+ + + + + +
Enumerator
UCP_AM_HANDLER_PARAM_FIELD_ID  +

Indicates that ucp_am_handler_param_t::id field is valid.

+
UCP_AM_HANDLER_PARAM_FIELD_FLAGS  +

Indicates that ucp_am_handler_param_t::flags field is valid.

+
UCP_AM_HANDLER_PARAM_FIELD_CB  +

Indicates that ucp_am_handler_param_t::cb field is valid.

+
UCP_AM_HANDLER_PARAM_FIELD_ARG  +

Indicates that ucp_am_handler_param_t::arg field is valid.

+
+ +
+
+ +
+
+ + + + +
enum ucp_atomic_post_op_t
+
+
Deprecated:
Use ucp_atomic_op_nbx and ucp_atomic_op_t instead.
+

This enumeration defines which atomic memory operation should be performed by the ucp_atomic_post family of functions. All of these are non-fetching atomics and will not result in a request handle.

+ + + + + + +
Enumerator
UCP_ATOMIC_POST_OP_ADD  +

Atomic add

+
UCP_ATOMIC_POST_OP_AND  +

Atomic and

+
UCP_ATOMIC_POST_OP_OR  +

Atomic or

+
UCP_ATOMIC_POST_OP_XOR  +

Atomic xor

+
UCP_ATOMIC_POST_OP_LAST  +
+ +
+
+ +
+
+ + + + +
enum ucp_atomic_fetch_op_t
+
+
Deprecated:
Use ucp_atomic_op_nbx and ucp_atomic_op_t instead.
+

This enumeration defines which atomic memory operation should be performed by the ucp_atomic_fetch family of functions. All of these functions will fetch data from the remote node.

+ + + + + + + + +
Enumerator
UCP_ATOMIC_FETCH_OP_FADD  +

Atomic Fetch and add

+
UCP_ATOMIC_FETCH_OP_SWAP  +

Atomic swap

+
UCP_ATOMIC_FETCH_OP_CSWAP  +

Atomic conditional swap

+
UCP_ATOMIC_FETCH_OP_FAND  +

Atomic Fetch and and

+
UCP_ATOMIC_FETCH_OP_FOR  +

Atomic Fetch and or

+
UCP_ATOMIC_FETCH_OP_FXOR  +

Atomic Fetch and xor

+
UCP_ATOMIC_FETCH_OP_LAST  +
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_request_query (void * request,
ucp_request_attr_tattr 
)
+
+
Parameters
+ + + +
[in]requestNon-blocking request to query.
[out]attrFilled with attributes of the request.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_am_send_nbx (ucp_ep_h ep,
unsigned id,
const void * header,
size_t header_length,
const void * buffer,
size_t count,
const ucp_request_param_tparam 
)
+
+

This routine sends an Active Message to an ep. If the operation completes immediately, then the routine returns NULL and the callback function is ignored, even if specified. Otherwise, if no error is reported and a callback is requested (i.e. the UCP_OP_ATTR_FIELD_CALLBACK flag is set in the op_attr_mask field of param), then the UCP library will schedule invocation of the callback routine param->cb.send upon completion of the operation.

+
Note
If UCP_OP_ATTR_FLAG_NO_IMM_CMPL flag is set in the op_attr_mask field of param, then the operation will return a request handle, even if it completes immediately.
+
+This operation supports specific flags, which can be passed in param by ucp_request_param_t::flags. The exact set of flags is defined by ucp_send_am_flags.
+
Parameters
+ + + + + + + + +
[in]epUCP endpoint where the Active Message will be run.
[in]idActive Message id. Specifies which registered callback to run.
[in]headerUser defined Active Message header. NULL value is allowed if no header needed. In this case header_length must be set to 0. By default the header must be valid until the active message send operation completes. If the flag UCP_AM_SEND_FLAG_COPY_HEADER is specified, the header is only required to be valid until this function call returns.
[in]header_lengthActive message header length in bytes.
[in]bufferPointer to the data to be sent to the target node of the Active Message.
[in]countNumber of elements to send.
[in]paramOperation parameters, see ucp_request_param_t.
+
+
+
Note
Sending only header without actual data is allowed and is recommended for transferring a latency-critical amount of data.
+
+The maximum allowed header size can be obtained by querying worker attributes by the ucp_worker_query routine.
+
Returns
NULL - Active Message was sent immediately.
+
+UCS_PTR_IS_ERR(_ptr) - Error sending Active Message.
+
+otherwise - Operation was scheduled for send and can be completed at any point in time. The request handle is returned to the application in order to track progress of the message. If user request was not provided in param->request, the application is responsible for releasing the handle using ucp_request_free routine.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_am_recv_data_nbx (ucp_worker_h worker,
void * data_desc,
void * buffer,
size_t count,
const ucp_request_param_tparam 
)
+
+

This routine receives a message that is described by the data descriptor data_desc, local address buffer, size count and param parameters on the worker. The routine is non-blocking and therefore returns immediately. The receive operation is considered completed when the message is delivered to the buffer. If the receive operation cannot be started the routine returns an error.

+
Note
This routine can be performed on any valid data descriptor delivered in ucp_am_recv_callback_t. Data descriptor is considered to be valid if:
    +
  • It is a rendezvous request (UCP_AM_RECV_ATTR_FLAG_RNDV is set in ucp_am_recv_param_t::recv_attr) or
  • +
  • It is a persistent data pointer (UCP_AM_RECV_ATTR_FLAG_DATA is set in ucp_am_recv_param_t::recv_attr). In this case receive operation may be needed to unpack data to device memory (for example GPU device) or some specific datatype.
  • +
+
+
+After this call UCP takes ownership of data_desc descriptor, so there is no need to release it even if the operation fails. The routine returns a request handle instead, which can be used for tracking operation progress.
+
Parameters
+ + + + + + +
[in]workerWorker that is used for the receive operation.
[in]data_descData descriptor, provided in ucp_am_recv_callback_t routine.
[in]bufferPointer to the buffer to receive the data.
[in]countNumber of elements to receive into buffer.
[in]paramOperation parameters, see ucp_request_param_t.
+
+
+
Returns
NULL - The receive operation was completed immediately. In this case, if param->recv_info.length is specified in the param, the value to which it points is updated with the size of the received message.
+
+UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Receive operation was scheduled and can be completed at any point in time. The request handle is returned to the application in order to track operation progress. If user request was not provided in param->request, the application is responsible for releasing the handle using ucp_request_free routine.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_am_data_release (ucp_worker_h worker,
void * data 
)
+
+

This routine releases data that persisted through an Active Message callback because that callback returned UCS_INPROGRESS.

+
Parameters
+ + + +
[in]workerWorker which received the Active Message.
[in]dataPointer to data that was passed into the Active Message callback as the data parameter.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_stream_send_nbx (ucp_ep_h ep,
const void * buffer,
size_t count,
const ucp_request_param_tparam 
)
+
+

This routine sends data that is described by the local address buffer, size count object to the destination endpoint ep. The routine is non-blocking and therefore returns immediately, however the actual send operation may be delayed. The send operation is considered completed when it is safe to reuse the source buffer. If the send operation is completed immediately the routine returns UCS_OK.

+
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
Parameters
+ + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send.
[in]paramOperation parameters, see ucp_request_param_t.
+
+
+
Returns
NULL - The send operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The send operation failed.
+
+otherwise - Operation was scheduled for send and can be completed at any point in time. The request handle is returned to the application in order to track progress of the message.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_send_nbx (ucp_ep_h ep,
const void * buffer,
size_t count,
ucp_tag_t tag,
const ucp_request_param_tparam 
)
+
+

This routine sends a messages that is described by the local address buffer, size count object to the destination endpoint ep. Each message is associated with a tag value that is used for message matching on the ucp_tag_recv_nb or receiver. The routine is non-blocking and therefore returns immediately, however the actual send operation may be delayed. The send operation is considered completed when it is safe to reuse the source buffer. If the send operation is completed immediately the routine returns UCS_OK and the call-back function is not invoked. If the operation is not completed immediately and no error reported then the UCP library will schedule to invoke the call-back whenever the send operation is completed. In other words, the completion of a message can be signaled by the return code or the call-back. Immediate completion signals can be fine-tuned via the ucp_request_param_t::op_attr_mask field in the ucp_request_param_t structure. The values of this field are a bit-wise OR of the ucp_op_attr_t enumeration.

+
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
Parameters
+ + + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send
[in]tagMessage tag.
[in]paramOperation parameters, see ucp_request_param_t
+
+
+
Returns
UCS_OK - The send operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The send operation failed.
+
+otherwise - Operation was scheduled for send and can be completed in any point in time. The request handle is returned to the application in order to track progress of the message.
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_send_sync_nbx (ucp_ep_h ep,
const void * buffer,
size_t count,
ucp_tag_t tag,
const ucp_request_param_tparam 
)
+
+

Same as ucp_tag_send_nbx, except the request completes only after there is a remote tag match on the message (which does not always mean the remote receive has been completed). This function never completes "in-place", and always returns a request handle.

+
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
+Returns UCS_ERR_UNSUPPORTED if UCP_ERR_HANDLING_MODE_PEER is enabled. This is a temporary implementation-related constraint that will be addressed in future releases.
+
Parameters
+ + + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send
[in]tagMessage tag.
[in]paramOperation parameters, see ucp_request_param_t
+
+
+
Returns
UCS_OK - The send operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The send operation failed.
+
+otherwise - Operation was scheduled for send and can be completed in any point in time. The request handle is returned to the application in order to track progress of the message.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_stream_recv_nbx (ucp_ep_h ep,
void * buffer,
size_t count,
size_t * length,
const ucp_request_param_tparam 
)
+
+

This routine receives data that is described by the local address buffer, size count object on the endpoint ep. The routine is non-blocking and therefore returns immediately. The receive operation is considered complete when the message is delivered to the buffer. If the receive operation cannot be started, then the routine returns an error.

+
Parameters
+ + + + + + +
[in]epUCP endpoint that is used for the receive operation.
[in]bufferPointer to the buffer that will receive the data.
[in]countNumber of elements to receive into buffer.
[out]lengthSize of the received data in bytes. The value is valid only if return code is NULL.
[in]paramOperation parameters, see ucp_request_param_t. This operation supports specific flags, which can be passed in param by ucp_request_param_t::flags. The exact set of flags is defined by ucp_stream_recv_flags_t.
+
+
+
Returns
NULL - The receive operation was completed immediately. In this case the value pointed by length is updated by the size of received data. Note param->recv_info is not relevant for this function.
+
+UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Operation was scheduled for receive. A request handle is returned to the application in order to track progress of the operation.
+
Note
The amount of data received, in bytes, is always an integral multiple of the datatype size.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_stream_recv_data_nb (ucp_ep_h ep,
size_t * length 
)
+
+

This routine receives any available data from endpoint ep. Unlike ucp_stream_recv_nb, the returned data is unstructured and is treated as an array of bytes. If data is immediately available, UCS_STATUS_PTR(_ptr) is returned as a pointer to the data, and length is set to the size of the returned data buffer. The routine is non-blocking and therefore returns immediately.

+
Parameters
+ + + +
[in]epUCP endpoint that is used for the receive operation.
[out]lengthLength of received data.
+
+
+
Returns
NULL - No received data available on the ep.
+
+UCS_PTR_IS_ERR(_ptr) - the receive operation failed and UCS_PTR_STATUS(_ptr) indicates an error.
+
+otherwise - The pointer to the data UCS_STATUS_PTR(_ptr) is returned to the application. After the data is processed, the application is responsible for releasing the data buffer by calling the ucp_stream_data_release routine.
+
Note
This function returns packed data (equivalent to ucp_dt_make_contig(1)).
+
+This function returns a pointer to a UCP-supplied buffer, whereas ucp_stream_recv_nb places the data into a user-provided buffer. In some cases, receiving data directly into a UCP-supplied buffer can be more optimal, for example by processing the incoming data in-place and thus avoiding extra memory copy operations.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_recv_nbx (ucp_worker_h worker,
void * buffer,
size_t count,
ucp_tag_t tag,
ucp_tag_t tag_mask,
const ucp_request_param_tparam 
)
+
+

This routine receives a message that is described by the local address buffer, size count, and info object on the worker. The tag value of the receive message has to match the tag and tag_mask values, where the tag_mask indicates what bits of the tag have to be matched. The routine is a non-blocking and therefore returns immediately. The receive operation is considered completed when the message is delivered to the buffer. In order to notify the application about completion of the receive operation the UCP library will invoke the call-back cb when the received message is in the receive buffer and ready for application access. If the receive operation cannot be started, then the routine returns an error.

+
Parameters
+ + + + + + + +
[in]workerUCP worker that is used for the receive operation.
[in]bufferPointer to the buffer to receive the data.
[in]countNumber of elements to receive
[in]tagMessage tag to expect.
[in]tag_maskBit mask that indicates the bits that are used for the matching of the incoming tag against the expected tag.
[in]paramOperation parameters, see ucp_request_param_t
+
+
+
Returns
NULL - The receive operation was completed immediately. In this case, if param->recv_info.tag_info is specified in the param, the value to which it points is updated with the information about the received message.
+
+UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Operation was scheduled for receive. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucp_tag_message_h ucp_tag_probe_nb (ucp_worker_h worker,
ucp_tag_t tag,
ucp_tag_t tag_mask,
int remove,
ucp_tag_recv_info_tinfo 
)
+
+

This routine probes (checks) if a messages described by the tag and tag_mask was received (fully or partially) on the worker. The tag value of the received message has to match the tag and tag_mask values, where the tag_mask indicates what bits of the tag have to be matched. The function returns immediately and if the message is matched it returns a handle for the message.

+
Parameters
+ + + + + + +
[in]workerUCP worker that is used for the probe operation.
[in]tagMessage tag to probe for.
[in]tag_maskBit mask that indicates the bits that are used for the matching of the incoming tag against the expected tag.
[in]removeThe flag indicates if the matched message has to be removed from UCP library. If true (1), the message handle is removed from the UCP library and the application is responsible to call ucp_tag_msg_recv_nb() in order to receive the data and release the resources associated with the message handle. If false (0), the return value is merely an indication to whether a matching message is present, and it cannot be used in any other way, and in particular it cannot be passed to ucp_tag_msg_recv_nb().
[out]infoIf the matching message is found the descriptor is filled with the details about the message.
+
+
+
Returns
NULL - No match found.
+
+Message handle (not NULL) - If message is matched the message handle is returned.
+
Note
This function does not advance the communication state of the network. If this routine is used in busy-poll mode, need to make sure ucp_worker_progress() is called periodically to extract messages from the transport.
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_msg_recv_nbx (ucp_worker_h worker,
void * buffer,
size_t count,
ucp_tag_message_h message,
const ucp_request_param_tparam 
)
+
+

This routine receives a message that is described by the local address buffer, size count, and message handle on the worker. The message handle can be obtained by calling the ucp_tag_probe_nb() routine. The ucp_tag_msg_recv_nbx() routine is non-blocking and therefore returns immediately. The receive operation is considered completed when the message is delivered to the buffer. In order to notify the application about completion of the receive operation the UCP library will invoke the call-back cb when the received message is in the receive buffer and ready for application access. If the receive operation cannot be started, then the routine returns an error.

+
Parameters
+ + + + + + +
[in]workerUCP worker that is used for the receive operation.
[in]bufferPointer to the buffer that will receive the data.
[in]countNumber of elements to receive
[in]messageMessage handle.
[in]paramOperation parameters, see ucp_request_param_t
+
+
+
Returns
UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Operation was scheduled for receive. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_put_nbx (ucp_ep_h ep,
const void * buffer,
size_t count,
uint64_t remote_addr,
ucp_rkey_h rkey,
const ucp_request_param_tparam 
)
+
+

This routine initiates a storage of contiguous block of data that is described by the local address buffer in the remote contiguous memory region described by remote_addr address and the memoryhandle" rkey. The routine returns immediately and does not guarantee re-usability of the source address buffer. If the operation is completed immediately the routine return UCS_OK, otherwise UCS_INPROGRESS or an error is returned to user. If the put operation completes immediately, the routine returns UCS_OK and the call-back routine param.cb.send is not invoked. If the operation is not completed immediately and no error is reported, then the UCP library will schedule invocation of the call-back routine param.cb.send upon completion of the put operation. In other words, the completion of a put operation can be signaled by the return code or execution of the call-back. Immediate completion signals can be fine-tuned via the ucp_request_param_t::op_attr_mask field in the ucp_request_param_t structure. The values of this field are a bit-wise OR of the ucp_op_attr_t enumeration.

+
Note
A user can use ucp_worker_flush_nb() in order to guarantee re-usability of the source address buffer.
+
Parameters
+ + + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local source address.
[in]countNumber of elements of type ucp_request_param_t::datatype to put. If ucp_request_param_t::datatype is not specified, the type defaults to ucp_dt_make_contig(1), which corresponds to byte elements.
[in]remote_addrPointer to the destination remote memory address to write to.
[in]rkeyRemote memory key associated with the remote memory address.
[in]paramOperation parameters, see ucp_request_param_t
+
+
+
Returns
UCS_OK - The operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The operation failed.
+
+otherwise - Operation was scheduled and can be completed at any point in time. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+
Note
Only the datatype ucp_dt_make_contig(1) is supported for param->datatype, see ucp_dt_make_contig.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_get_nbx (ucp_ep_h ep,
void * buffer,
size_t count,
uint64_t remote_addr,
ucp_rkey_h rkey,
const ucp_request_param_tparam 
)
+
+

This routine initiates a load of a contiguous block of data that is described by the remote memory address remote_addr and the memory handle rkey in the local contiguous memory region described by buffer address. The routine returns immediately and does not guarantee that remote data is loaded and stored under the local address buffer. If the operation is completed immediately the routine return UCS_OK, otherwise UCS_INPROGRESS or an error is returned to user. If the get operation completes immediately, the routine returns UCS_OK and the call-back routine param.cb.send is not invoked. If the operation is not completed immediately and no error is reported, then the UCP library will schedule invocation of the call-back routine param.cb.send upon completion of the get operation. In other words, the completion of a get operation can be signaled by the return code or execution of the call-back.

+
Note
A user can use ucp_worker_flush_nb() in order to guarantee re-usability of the source address buffer.
+
Parameters
+ + + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local destination address.
[in]countNumber of elements of type ucp_request_param_t::datatype to put. If ucp_request_param_t::datatype is not specified, the type defaults to ucp_dt_make_contig(1), which corresponds to byte elements.
[in]remote_addrPointer to the source remote memory address to read from.
[in]rkeyRemote memory key associated with the remote memory address.
[in]paramOperation parameters, see ucp_request_param_t.
+
+
+
Returns
UCS_OK - The operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The operation failed.
+
+otherwise - Operation was scheduled and can be completed at any point in time. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+
Note
Only the datatype ucp_dt_make_contig(1) is supported for param->datatype, see ucp_dt_make_contig.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_atomic_op_nbx (ucp_ep_h ep,
ucp_atomic_op_t opcode,
const void * buffer,
size_t count,
uint64_t remote_addr,
ucp_rkey_h rkey,
const ucp_request_param_tparam 
)
+
+

This routine will post an atomic operation to remote memory. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The routine is non-blocking and therefore returns immediately. However, the actual atomic operation may be delayed. In order to enable fetching semantics for atomic operations user has to specify param.reply_buffer. Please see table below for more details.

+
Note
The user should not modify any part of the buffer (or also param->reply_buffer for fetch operations), until the operation completes.
+
+Only ucp_dt_make_config(4) and ucp_dt_make_contig(8) are supported in param->datatype, see ucp_dt_make_contig. Also, currently atomic operations can handle one element only. Thus, count argument must be set to 1.
+ + + + + + + + + + + + + + + + + +
Atomic Operations Semantic
Atomic Operation Pseudo code X Y Z Result
UCP_ATOMIC_OP_ADD Result=Y; Y+=X bufferremote_addr- param.reply_buffer(optional)
UCP_ATOMIC_OP_SWAP Result=Y; Y=X bufferremote_addr - param.reply_buffer
UCP_ATOMIC_OP_CSWAP Result=Y; if (X==Y) then Y=Zbuffer remote_addr param.reply_buffer param.reply_buffer
UCP_ATOMIC_OP_AND Result=Y; Y&=X bufferremote_addr - param.reply_buffer(optional)
UCP_ATOMIC_OP_OR Result=Y; Y|=X bufferremote_addr - param.reply_buffer(optional)
UCP_ATOMIC_OP_XOR Result=Y; Y^=X bufferremote_addr - param.reply_buffer(optional)
+
Parameters
+ + + + + + + + +
[in]epUCP endpoint.
[in]opcodeOne of ucp_atomic_op_t.
[in]bufferAddress of operand for the atomic operation. See Atomic Operations Semantic table for exact usage by different atomic operations.
[in]countNumber of elements in buffer and result. The size of each element is specified by ucp_request_param_t::datatype
[in]remote_addrRemote address to operate on.
[in]rkeyRemote key handle for the remote memory address.
[in]paramOperation parameters, see ucp_request_param_t.
+
+
+
Returns
NULL - The operation completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The operation failed.
+
+otherwise - Operation was scheduled and can be completed at some time in the future. The request handle is returned to the application in order to track progress of the operation.
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_request_check_status (void * request)
+
+

This routine checks the state of the request and returns its current status. Any value different from UCS_INPROGRESS means that request is in a completed state.

+
Parameters
+ + +
[in]requestNon-blocking request to check.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_tag_recv_request_test (void * request,
ucp_tag_recv_info_tinfo 
)
+
+

This routine checks the state and returns current status of the request returned from ucp_tag_recv_nb routine or the user allocated request for ucp_tag_recv_nbr. Any value different from UCS_INPROGRESS means that the request is in a completed state.

+
Parameters
+ + + +
[in]requestNon-blocking request to check.
[out]infoIt is filled with the details about the message available at the moment of calling.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_stream_recv_request_test (void * request,
size_t * length_p 
)
+
+

This routine checks the state and returns current status of the request returned from ucp_stream_recv_nb routine. Any value different from UCS_INPROGRESS means that the request is in a completed state.

+
Parameters
+ + + +
[in]requestNon-blocking request to check.
[out]length_pThe size of the received data in bytes. This value is only valid if the status is UCS_OK. If valid, it is always an integral multiple of the datatype size associated with the request.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_request_cancel (ucp_worker_h worker,
void * request 
)
+
+
Parameters
+ + + +
[in]workerUCP worker.
[in]requestNon-blocking request to cancel.
+
+
+

This routine tries to cancels an outstanding communication request. After calling this routine, the request will be in completed or canceled (but not both) state regardless of the status of the target endpoint associated with the communication request. If the request is completed successfully, the send or receive completion callbacks (based on the type of the request) will be called with the status argument of the callback set to UCS_OK, and in a case it is canceled the status argument is set to UCS_ERR_CANCELED. It is important to note that in order to release the request back to the library the application is responsible for calling ucp_request_free().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_stream_data_release (ucp_ep_h ep,
void * data 
)
+
+
Parameters
+ + + +
[in]epEndpoint data received from.
[in]dataData pointer to release, which was returned from ucp_stream_recv_data_nb.
+
+
+

This routine releases internal UCP data buffer returned by ucp_stream_recv_data_nb when data is processed, the application can't use this buffer after calling this function.

+ +
+
+ +
+
+ + + + + + + + +
void ucp_request_free (void * request)
+
+
Parameters
+ + +
[in]requestNon-blocking request to release.
+
+
+

This routine releases the non-blocking request back to the library, regardless of its current state. Communications operations associated with this request will make progress internally, however no further notifications or callbacks will be invoked for this request.

+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void* ucp_request_alloc (ucp_worker_h worker)
+
+
Parameters
+ + +
[in]workerUCP worker.
+
+
+
Returns
Error code as defined by ucs_status_t
+

This routine creates request which may be used in functions ucp_tag_send_nbx, ucp_tag_recv_nbx, etc. The application is responsible for releasing the handle using the ucp_request_free routine

+ +
+
+ +
+
+ + + + + + + + +
int ucp_request_is_completed (void * request)
+
+
Deprecated:
Replaced by ucp_request_test.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_put (ucp_ep_h ep,
const void * buffer,
size_t length,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Replaced by ucp_put_nb. The following example implements the same functionality using ucp_put_nb :
+
1 void empty_callback(void *request, ucs_status_t status)
2 {
3 }
4 
5 ucs_status_t put(ucp_ep_h ep, const void *buffer, size_t length,
6  uint64_t remote_addr, ucp_rkey_h rkey)
7 {
8  void *request = ucp_put_nb(ep, buffer, length, remote_addr, rkey,
9  empty_callback),
10  if (request == NULL) {
11  return UCS_OK;
12  } else if (UCS_PTR_IS_ERR(request)) {
13  return UCS_PTR_STATUS(request);
14  } else {
15  ucs_status_t status;
16  do {
17  ucp_worker_progress(worker);
18  status = ucp_request_check_status(request);
19  } while (status == UCS_INPROGRESS);
20  ucp_request_release(request);
21  return status;
22  }
23 }

This routine stores contiguous block of data that is described by the local address buffer in the remote contiguous memory region described by remote_addr address and the memory handle rkey. The routine returns when it is safe to reuse the source address buffer.

+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local source address.
[in]lengthLength of the data (in bytes) stored under the source address.
[in]remote_addrPointer to the destination remote address to write to.
[in]rkeyRemote memory key associated with the remote address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_get (ucp_ep_h ep,
void * buffer,
size_t length,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Replaced by ucp_get_nb.
+
See also
ucp_put.
+

This routine loads contiguous block of data that is described by the remote address remote_addr and the memory handle rkey in the local contiguous memory region described by buffer address. The routine returns when remote data is loaded and stored under the local address buffer.

+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local source address.
[in]lengthLength of the data (in bytes) stored under the source address.
[in]remote_addrPointer to the destination remote address to write to.
[in]rkeyRemote memory key associated with the remote address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_add32 (ucp_ep_h ep,
uint32_t add,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Replaced by ucp_atomic_post with opcode UCP_ATOMIC_POST_OP_ADD.
+
See also
ucp_put.
+

This routine performs an add operation on a 32 bit integer value atomically. The remote integer value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The add value is the value that is used for the add operation. When the operation completes the sum of the original remote value and the operand value (add) is stored in remote memory. The call to the routine returns immediately, independent of operation completion.

+
Note
The remote address must be aligned to 32 bit.
+
Parameters
+ + + + + +
[in]epRemote endpoint handle.
[in]addValue to add.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_add64 (ucp_ep_h ep,
uint64_t add,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Replaced by ucp_atomic_post with opcode UCP_ATOMIC_POST_OP_ADD.
+
See also
ucp_put.
+

This routine performs an add operation on a 64 bit integer value atomically. The remote integer value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The add value is the value that is used for the add operation. When the operation completes the sum of the original remote value and the operand value (add) is stored in remote memory. The call to the routine returns immediately, independent of operation completion.

+
Note
The remote address must be aligned to 64 bit.
+
Parameters
+ + + + + +
[in]epRemote endpoint handle.
[in]addValue to add.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_fadd32 (ucp_ep_h ep,
uint32_t add,
uint64_t remote_addr,
ucp_rkey_h rkey,
uint32_t * result 
)
+
+
Deprecated:
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_FADD.
+
See also
ucp_put.
+

This routine performs an add operation on a 32 bit integer value atomically. The remote integer value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The add value is the value that is used for the add operation. When the operation completes, the original remote value is stored in the local memory result, and the sum of the original remote value and the operand value is stored in remote memory. The call to the routine returns when the operation is completed and the result value is updated.

+
Note
The remote address must be aligned to 32 bit.
+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]addValue to add.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
[out]resultPointer to the address that is used to store the previous value of the atomic variable described by the remote_addr
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_fadd64 (ucp_ep_h ep,
uint64_t add,
uint64_t remote_addr,
ucp_rkey_h rkey,
uint64_t * result 
)
+
+
Deprecated:
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_FADD.
+
See also
ucp_put.
+

This routine performs an add operation on a 64 bit integer value atomically. The remote integer value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The add value is the value that is used for the add operation. When the operation completes, the original remote value is stored in the local memory result, and the sum of the original remote value and the operand value is stored in remote memory. The call to the routine returns when the operation is completed and the result value is updated.

+
Note
The remote address must be aligned to 64 bit.
+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]addValue to add.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
[out]resultPointer to the address that is used to store the previous value of the atomic variable described by the remote_addr
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_swap32 (ucp_ep_h ep,
uint32_t swap,
uint64_t remote_addr,
ucp_rkey_h rkey,
uint32_t * result 
)
+
+
Deprecated:
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_SWAP.
+
See also
ucp_put.
+

This routine swaps a 32 bit value between local and remote memory. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The swap value is the value that is used for the swap operation. When the operation completes, the remote value is stored in the local memory result, and the operand value (swap) is stored in remote memory. The call to the routine returns when the operation is completed and the result value is updated.

+
Note
The remote address must be aligned to 32 bit.
+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]swapValue to swap.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
[out]resultPointer to the address that is used to store the previous value of the atomic variable described by the remote_addr
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_swap64 (ucp_ep_h ep,
uint64_t swap,
uint64_t remote_addr,
ucp_rkey_h rkey,
uint64_t * result 
)
+
+
Deprecated:
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_SWAP.
+
See also
ucp_put.
+

This routine swaps a 64 bit value between local and remote memory. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The swap value is the value that is used for the swap operation. When the operation completes, the remote value is stored in the local memory result, and the operand value (swap) is stored in remote memory. The call to the routine returns when the operation is completed and the result value is updated.

+
Note
The remote address must be aligned to 64 bit.
+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]swapValue to swap.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
[out]resultPointer to the address that is used to store the previous value of the atomic variable described by the remote_addr
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_cswap32 (ucp_ep_h ep,
uint32_t compare,
uint32_t swap,
uint64_t remote_addr,
ucp_rkey_h rkey,
uint32_t * result 
)
+
+
Deprecated:
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_CSWAP.
+
See also
ucp_put.
+

This routine conditionally swaps a 32 bit value between local and remote memory. The swap occurs only if the condition value (continue) is equal to the remote value, otherwise the remote memory is not modified. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The swap value is the value that is used to update the remote memory if the condition is true. The call to the routine returns when the operation is completed and the result value is updated.

+
Note
The remote address must be aligned to 32 bit.
+
Parameters
+ + + + + + + +
[in]epRemote endpoint handle.
[in]compareValue to compare to.
[in]swapValue to swap.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
[out]resultPointer to the address that is used to store the previous value of the atomic variable described by the remote_addr
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_cswap64 (ucp_ep_h ep,
uint64_t compare,
uint64_t swap,
uint64_t remote_addr,
ucp_rkey_h rkey,
uint64_t * result 
)
+
+
Deprecated:
Replaced by ucp_atomic_fetch_nb with opcode UCP_ATOMIC_FETCH_OP_CSWAP.
+
See also
ucp_put.
+

This routine conditionally swaps a 64 bit value between local and remote memory. The swap occurs only if the condition value (continue) is equal to the remote value, otherwise the remote memory is not modified. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The swap value is the value that is used to update the remote memory if the condition is true. The call to the routine returns when the operation is completed and the result value is updated.

+
Note
The remote address must be aligned to 64 bit.
+
Parameters
+ + + + + + + +
[in]epRemote endpoint handle.
[in]compareValue to compare to.
[in]swapValue to swap.
[in]remote_addrPointer to the destination remote address of the atomic variable.
[in]rkeyRemote memory key associated with the remote address.
[out]resultPointer to the address that is used to store the previous value of the atomic variable described by the remote_addr
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_am_send_nb (ucp_ep_h ep,
uint16_t id,
const void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_send_callback_t cb,
unsigned flags 
)
+
+
Deprecated:
Use ucp_am_send_nbx instead.
+

This routine sends an Active Message to an ep. It does not support CUDA memory.

+
Parameters
+ + + + + + + + +
[in]epUCP endpoint where the Active Message will be run.
[in]idActive Message id. Specifies which registered callback to run.
[in]bufferPointer to the data to be sent to the target node of the Active Message.
[in]countNumber of elements to send.
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]cbCallback that is invoked upon completion of the data transfer if it is not completed immediately.
[in]flagsOperation flags as defined by ucp_send_am_flags.
+
+
+
Returns
NULL Active Message was sent immediately.
+
+UCS_PTR_IS_ERR(_ptr) Error sending Active Message.
+
+otherwise Pointer to request, and Active Message is known to be completed after cb is run.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_stream_send_nb (ucp_ep_h ep,
const void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_send_callback_t cb,
unsigned flags 
)
+
+
Deprecated:
Use ucp_stream_send_nbx instead.
+

This routine sends data that is described by the local address buffer, size count, and datatype object to the destination endpoint ep. The routine is non-blocking and therefore returns immediately, however the actual send operation may be delayed. The send operation is considered completed when it is safe to reuse the source buffer. If the send operation is completed immediately the routine returns UCS_OK and the callback function cb is not invoked. If the operation is not completed immediately and no error reported, then the UCP library will schedule invocation of the callback cb upon completion of the send operation. In other words, the completion of the operation will be signaled either by the return code or by the callback.

+
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send.
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]cbCallback function that is invoked whenever the send operation is completed. It is important to note that the callback is only invoked in the event that the operation cannot be completed in place.
[in]flagsReserved for future use.
+
+
+
Returns
NULL - The send operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The send operation failed.
+
+otherwise - Operation was scheduled for send and can be completed in any point in time. The request handle is returned to the application in order to track progress of the message. The application is responsible for releasing the handle using ucp_request_free routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_stream_recv_nb (ucp_ep_h ep,
void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_stream_recv_callback_t cb,
size_t * length,
unsigned flags 
)
+
+
Deprecated:
Use ucp_stream_recv_nbx instead.
+

This routine receives data that is described by the local address buffer, size count, and datatype object on the endpoint ep. The routine is non-blocking and therefore returns immediately. The receive operation is considered complete when the message is delivered to the buffer. If data is not immediately available, the operation will be scheduled for receive and a request handle will be returned. In order to notify the application about completion of a scheduled receive operation, the UCP library will invoke the call-back cb when data is in the receive buffer and ready for application access. If the receive operation cannot be started, the routine returns an error.

+
Parameters
+ + + + + + + +
[in]epUCP endpoint that is used for the receive operation.
[in]bufferPointer to the buffer to receive the data.
[in]countNumber of elements to receive into buffer.
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]cbCallback function that is invoked whenever the receive operation is completed and the data is ready in the receive buffer. It is important to note that the call-back is only invoked in a case when the operation cannot be completed immediately.
[out]lengthSize of the received data in bytes. The value is valid only if return code is UCS_OK.
+
+
+
Note
The amount of data received, in bytes, is always an integral multiple of the datatype size.
+
Parameters
+ + +
[in]flagsFlags defined in ucp_stream_recv_flags_t.
+
+
+
Returns
NULL - The receive operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Operation was scheduled for receive. A request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle by calling the ucp_request_free routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_send_nb (ucp_ep_h ep,
const void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_tag_t tag,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_tag_send_nbx instead.
+

This routine sends a messages that is described by the local address buffer, size count, and datatype object to the destination endpoint ep. Each message is associated with a tag value that is used for message matching on the receiver. The routine is non-blocking and therefore returns immediately, however the actual send operation may be delayed. The send operation is considered completed when it is safe to reuse the source buffer. If the send operation is completed immediately the routine return UCS_OK and the call-back function cb is not invoked. If the operation is not completed immediately and no error reported then the UCP library will schedule to invoke the call-back cb whenever the send operation will be completed. In other words, the completion of a message can be signaled by the return code or the call-back.

+
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]tagMessage tag.
[in]cbCallback function that is invoked whenever the send operation is completed. It is important to note that the call-back is only invoked in a case when the operation cannot be completed in place.
+
+
+
Returns
NULL - The send operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The send operation failed.
+
+otherwise - Operation was scheduled for send and can be completed in any point in time. The request handle is returned to the application in order to track progress of the message. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_tag_send_nbr (ucp_ep_h ep,
const void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_tag_t tag,
void * req 
)
+
+
Deprecated:
Use ucp_tag_send_nbx with the flag UCP_OP_ATTR_FIELD_REQUEST instead.
+

This routine provides a convenient and efficient way to implement a blocking send pattern. It also completes requests faster than ucp_tag_send_nb() because:

    +
  • it always uses eager protocol to send data up to the rendezvous threshold.
  • +
  • its rendezvous threshold is higher than the one used by the ucp_tag_send_nb(). The threshold is controlled by the UCX_SEND_NBR_RNDV_THRESH environment variable.
  • +
  • its request handling is simpler. There is no callback and no need to allocate and free requests. In fact request can be allocated by caller on the stack.
  • +
+

This routine sends a messages that is described by the local address buffer, size count, and datatype object to the destination endpoint ep. Each message is associated with a tag value that is used for message matching on the receiver.

+

The routine is non-blocking and therefore returns immediately, however the actual send operation may be delayed. The send operation is considered completed when it is safe to reuse the source buffer. If the send operation is completed immediately the routine returns UCS_OK.

+

If the operation is not completed immediately and no error reported then the UCP library will fill a user provided req and return UCS_INPROGRESS status. In order to monitor completion of the operation ucp_request_check_status() should be used.

+

Following pseudo code implements a blocking send function:

1 MPI_send(...)
2 {
3  char *request;
4  ucs_status_t status;
5 
6  // allocate request on the stack
7  // ucp_context_query() was used to get ucp_request_size
8  request = alloca(ucp_request_size);
9 
10  // note: make sure that there is enough memory before the
11  // request handle
12  status = ucp_tag_send_nbr(ep, ..., request + ucp_request_size);
13  if (status != UCS_INPROGRESS) {
14  return status;
15  }
16 
17  do {
18  ucp_worker_progress(worker);
19  status = ucp_request_check_status(request + ucp_request_size);
20  } while (status == UCS_INPROGRESS);
21 
22  return status;
23 }
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]tagMessage tag.
[in]reqRequest handle allocated by the user. There should be at least UCP request size bytes of available space before the req. The size of UCP request can be obtained by ucp_context_query function.
+
+
+
Returns
UCS_OK - The send operation was completed immediately.
+
+UCS_INPROGRESS - The send was not completed and is in progress. ucp_request_check_status() should be used to monitor req status.
+
+Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_send_sync_nb (ucp_ep_h ep,
const void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_tag_t tag,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_tag_send_sync_nbx instead.
+

Same as ucp_tag_send_nb, except the request completes only after there is a remote tag match on the message (which does not always mean the remote receive has been completed). This function never completes "in-place", and always returns a request handle.

+
Note
The user should not modify any part of the buffer after this operation is called, until the operation completes.
+
+Returns UCS_ERR_UNSUPPORTED if UCP_ERR_HANDLING_MODE_PEER is enabled. This is a temporary implementation-related constraint that will be addressed in future releases.
+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]bufferPointer to the message buffer (payload).
[in]countNumber of elements to send
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]tagMessage tag.
[in]cbCallback function that is invoked whenever the send operation is completed.
+
+
+
Returns
UCS_PTR_IS_ERR(_ptr) - The send operation failed.
+
+otherwise - Operation was scheduled for send and can be completed in any point in time. The request handle is returned to the application in order to track progress of the message. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_recv_nb (ucp_worker_h worker,
void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_tag_t tag,
ucp_tag_t tag_mask,
ucp_tag_recv_callback_t cb 
)
+
+
Deprecated:
Use ucp_tag_recv_nbx instead.
+

This routine receives a message that is described by the local address buffer, size count, and datatype object on the worker. The tag value of the receive message has to match the tag and tag_mask values, where the tag_mask indicates which bits of the tag have to be matched. The routine is non-blocking and therefore returns immediately. The receive operation is considered completed when the message is delivered to the buffer. In order to notify the application about completion of the receive operation the UCP library will invoke the call-back cb when the received message is in the receive buffer and ready for application access. If the receive operation cannot be stated the routine returns an error.

+
Note
This routine cannot return UCS_OK. It always returns a request handle or an error.
+
Parameters
+ + + + + + + + +
[in]workerUCP worker that is used for the receive operation.
[in]bufferPointer to the buffer to receive the data.
[in]countNumber of elements to receive
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]tagMessage tag to expect.
[in]tag_maskBit mask that indicates the bits that are used for the matching of the incoming tag against the expected tag.
[in]cbCallback function that is invoked whenever the receive operation is completed and the data is ready in the receive buffer.
+
+
+
Returns
UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Operation was scheduled for receive. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_tag_recv_nbr (ucp_worker_h worker,
void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_tag_t tag,
ucp_tag_t tag_mask,
void * req 
)
+
+
Deprecated:
Use ucp_tag_recv_nbx with the flag UCP_OP_ATTR_FIELD_REQUEST instead.
+

This routine receives a message that is described by the local address buffer, size count, and datatype object on the worker. The tag value of the receive message has to match the tag and tag_mask values, where the tag_mask indicates which bits of the tag have to be matched. The routine is non-blocking and therefore returns immediately. The receive operation is considered completed when the message is delivered to the buffer. In order to monitor completion of the operation ucp_request_check_status or ucp_tag_recv_request_test should be used.

+
Parameters
+ + + + + + + + +
[in]workerUCP worker that is used for the receive operation.
[in]bufferPointer to the buffer to receive the data.
[in]countNumber of elements to receive
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]tagMessage tag to expect.
[in]tag_maskBit mask that indicates the bits that are used for the matching of the incoming tag against the expected tag.
[in]reqRequest handle allocated by the user. There should be at least UCP request size bytes of available space before the req. The size of UCP request can be obtained by ucp_context_query function.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_tag_msg_recv_nb (ucp_worker_h worker,
void * buffer,
size_t count,
ucp_datatype_t datatype,
ucp_tag_message_h message,
ucp_tag_recv_callback_t cb 
)
+
+
Deprecated:
Use ucp_tag_recv_nbx instead.
+

This routine receives a message that is described by the local address buffer, size count, message handle, and datatype object on the worker. The message handle can be obtained by calling the ucp_tag_probe_nb() routine. The ucp_tag_msg_recv_nb() routine is non-blocking and therefore returns immediately. The receive operation is considered completed when the message is delivered to the buffer. In order to notify the application about completion of the receive operation the UCP library will invoke the call-back cb when the received message is in the receive buffer and ready for application access. If the receive operation cannot be started the routine returns an error.

+
Parameters
+ + + + + + + +
[in]workerUCP worker that is used for the receive operation.
[in]bufferPointer to the buffer that will receive the data.
[in]countNumber of elements to receive
[in]datatypeDatatype descriptor for the elements in the buffer.
[in]messageMessage handle.
[in]cbCallback function that is invoked whenever the receive operation is completed and the data is ready in the receive buffer.
+
+
+
Returns
UCS_PTR_IS_ERR(_ptr) - The receive operation failed.
+
+otherwise - Operation was scheduled for receive. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_put_nbi (ucp_ep_h ep,
const void * buffer,
size_t length,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Use ucp_put_nbx without passing the flag UCP_OP_ATTR_FIELD_CALLBACK instead. If a request pointer is returned, release it immediately by ucp_request_free.
+

This routine initiates a storage of contiguous block of data that is described by the local address buffer in the remote contiguous memory region described by remote_addr address and the memoryhandle" rkey. The routine returns immediately and does not guarantee re-usability of the source address buffer. If the operation is completed immediately the routine return UCS_OK, otherwise UCS_INPROGRESS or an error is returned to user.

+
Note
A user can use ucp_worker_flush_nb() in order to guarantee re-usability of the source address buffer.
+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local source address.
[in]lengthLength of the data (in bytes) stored under the source address.
[in]remote_addrPointer to the destination remote memory address to write to.
[in]rkeyRemote memory key associated with the remote memory address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_put_nb (ucp_ep_h ep,
const void * buffer,
size_t length,
uint64_t remote_addr,
ucp_rkey_h rkey,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_put_nbx instead.
+

This routine initiates a storage of contiguous block of data that is described by the local address buffer in the remote contiguous memory region described by remote_addr address and the memoryhandle" rkey. The routine returns immediately and does not guarantee re-usability of the source address buffer. If the operation is completed immediately the routine return UCS_OK, otherwise UCS_INPROGRESS or an error is returned to user. If the put operation completes immediately, the routine returns UCS_OK and the call-back routine cb is not invoked. If the operation is not completed immediately and no error is reported, then the UCP library will schedule invocation of the call-back routine cb upon completion of the put operation. In other words, the completion of a put operation can be signaled by the return code or execution of the call-back.

+
Note
A user can use ucp_worker_flush_nb() in order to guarantee re-usability of the source address buffer.
+
Parameters
+ + + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local source address.
[in]lengthLength of the data (in bytes) stored under the source address.
[in]remote_addrPointer to the destination remote memory address to write to.
[in]rkeyRemote memory key associated with the remote memory address.
[in]cbCall-back function that is invoked whenever the put operation is completed and the local buffer can be modified. Does not guarantee remote completion.
+
+
+
Returns
NULL - The operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The operation failed.
+
+otherwise - Operation was scheduled and can be completed at any point in time. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_get_nbi (ucp_ep_h ep,
void * buffer,
size_t length,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Use ucp_get_nbx without passing the flag UCP_OP_ATTR_FIELD_CALLBACK instead. If a request pointer is returned, release it immediately by ucp_request_free.
+

This routine initiate a load of contiguous block of data that is described by the remote memory address remote_addr and the memory handle rkey in the local contiguous memory region described by buffer address. The routine returns immediately and does not guarantee that remote data is loaded and stored under the local address buffer.

+
Note
A user can use ucp_worker_flush_nb() in order guarantee that remote data is loaded and stored under the local address buffer.
+
Parameters
+ + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local destination address.
[in]lengthLength of the data (in bytes) stored under the destination address.
[in]remote_addrPointer to the source remote memory address to read from.
[in]rkeyRemote memory key associated with the remote memory address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_get_nb (ucp_ep_h ep,
void * buffer,
size_t length,
uint64_t remote_addr,
ucp_rkey_h rkey,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_get_nbx instead.
+

This routine initiates a load of a contiguous block of data that is described by the remote memory address remote_addr and the memory handle rkey in the local contiguous memory region described by buffer address. The routine returns immediately and does not guarantee that remote data is loaded and stored under the local address buffer. If the operation is completed immediately the routine return UCS_OK, otherwise UCS_INPROGRESS or an error is returned to user. If the get operation completes immediately, the routine returns UCS_OK and the call-back routine cb is not invoked. If the operation is not completed immediately and no error is reported, then the UCP library will schedule invocation of the call-back routine cb upon completion of the get operation. In other words, the completion of a get operation can be signaled by the return code or execution of the call-back.

+
Note
A user can use ucp_worker_flush_nb() in order to guarantee re-usability of the source address buffer.
+
Parameters
+ + + + + + + +
[in]epRemote endpoint handle.
[in]bufferPointer to the local destination address.
[in]lengthLength of the data (in bytes) stored under the destination address.
[in]remote_addrPointer to the source remote memory address to read from.
[in]rkeyRemote memory key associated with the remote memory address.
[in]cbCall-back function that is invoked whenever the get operation is completed and the data is visible to the local process.
+
+
+
Returns
NULL - The operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The operation failed.
+
+otherwise - Operation was scheduled and can be completed at any point in time. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_atomic_post (ucp_ep_h ep,
ucp_atomic_post_op_t opcode,
uint64_t value,
size_t op_size,
uint64_t remote_addr,
ucp_rkey_h rkey 
)
+
+
Deprecated:
Use ucp_atomic_op_nbx without the flag UCP_OP_ATTR_FIELD_REPLY_BUFFER instead.
+

This routine posts an atomic memory operation to a remote value. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. Return from the function does not guarantee completion. A user must call ucp_ep_flush_nb or ucp_worker_flush_nb to guarantee that the remote value has been updated.

+
Parameters
+ + + + + + + +
[in]epUCP endpoint.
[in]opcodeOne of ucp_atomic_post_op_t.
[in]valueSource operand for the atomic operation.
[in]op_sizeSize of value in bytes
[in]remote_addrRemote address to operate on.
[in]rkeyRemote key handle for the remote memory address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_atomic_fetch_nb (ucp_ep_h ep,
ucp_atomic_fetch_op_t opcode,
uint64_t value,
void * result,
size_t op_size,
uint64_t remote_addr,
ucp_rkey_h rkey,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_atomic_op_nbx with the flag UCP_OP_ATTR_FIELD_REPLY_BUFFER instead.
+

This routine will post an atomic fetch operation to remote memory. The remote value is described by the combination of the remote memory address remote_addr and the remote memory handle rkey. The routine is non-blocking and therefore returns immediately. However the actual atomic operation may be delayed. The atomic operation is not considered complete until the values in remote and local memory are completed. If the atomic operation completes immediately, the routine returns UCS_OK and the call-back routine cb is not invoked. If the operation is not completed immediately and no error is reported, then the UCP library will schedule invocation of the call-back routine cb upon completion of the atomic operation. In other words, the completion of an atomic operation can be signaled by the return code or execution of the call-back.

+
Note
The user should not modify any part of the result after this operation is called, until the operation completes.
+
Parameters
+ + + + + + + + + +
[in]epUCP endpoint.
[in]opcodeOne of ucp_atomic_fetch_op_t.
[in]valueSource operand for atomic operation. In the case of CSWAP this is the conditional for the swap. For SWAP this is the value to be placed in remote memory.
[in,out]resultLocal memory address to store resulting fetch to. In the case of CSWAP the value in result will be swapped into the remote_addr if the condition is true.
[in]op_sizeSize of value in bytes and pointer type for result
[in]remote_addrRemote address to operate on.
[in]rkeyRemote key handle for the remote memory address.
[in]cbCall-back function that is invoked whenever the send operation is completed. It is important to note that the call-back function is only invoked in a case when the operation cannot be completed in place.
+
+
+
Returns
NULL - The operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The operation failed.
+
+otherwise - Operation was scheduled and can be completed at any point in time. The request handle is returned to the application in order to track progress of the operation. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___c_o_m_m.js b/api/v1.14/html/group___u_c_p___c_o_m_m.js new file mode 100644 index 00000000000..e765bdb4329 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_m_m.js @@ -0,0 +1,134 @@ +var group___u_c_p___c_o_m_m = +[ + [ "ucp_request_attr_t", "group___u_c_p___c_o_m_m.html#structucp__request__attr__t", [ + [ "field_mask", "group___u_c_p___c_o_m_m.html#a311396d670dcb5ca9941dc17a8ad23d7", null ], + [ "debug_string", "group___u_c_p___c_o_m_m.html#aa284657c27e1a8d6d2653f12cfb61bc5", null ], + [ "debug_string_size", "group___u_c_p___c_o_m_m.html#a871b3929bfe0b97d249016e57fd2fdd7", null ], + [ "status", "group___u_c_p___c_o_m_m.html#a3df010dde5b9a67b62bd354f0af3fc93", null ], + [ "mem_type", "group___u_c_p___c_o_m_m.html#a86e23d8d22c973be0f86ea56adfd5678", null ] + ] ], + [ "ucp_err_handler", "group___u_c_p___c_o_m_m.html#structucp__err__handler", [ + [ "cb", "group___u_c_p___c_o_m_m.html#a0bf3f446a1821a62dd3a300584792e33", null ], + [ "arg", "group___u_c_p___c_o_m_m.html#a7e49e1843e1adab5561e5fc2b2e1afb1", null ] + ] ], + [ "ucp_tag_t", "group___u_c_p___c_o_m_m.html#ga55df42689ef1f5621eae4d1ffb16856e", null ], + [ "ucp_tag_message_h", "group___u_c_p___c_o_m_m.html#ga6a8b5741a4e66d7e890d31ef7cbf88ec", null ], + [ "ucp_datatype_t", "group___u_c_p___c_o_m_m.html#gae461587956dd56a6bc7d67b027845891", null ], + [ "ucp_send_callback_t", "group___u_c_p___c_o_m_m.html#gaad905bbbff95166a1e9b0e9743feb677", null ], + [ "ucp_send_nbx_callback_t", "group___u_c_p___c_o_m_m.html#gaee41a74074b37f96dad5b29c9af17faf", null ], + [ "ucp_err_handler_cb_t", "group___u_c_p___c_o_m_m.html#gaf2174ce2b86eb56f6bd4bd62865e87f1", null ], + [ "ucp_err_handler_t", "group___u_c_p___c_o_m_m.html#ga487a20aada512b312bc21757e368120d", null ], + [ "ucp_stream_recv_callback_t", "group___u_c_p___c_o_m_m.html#ga6a6234b8497006e26ba02f10ddc0bbf5", null ], + [ "ucp_stream_recv_nbx_callback_t", "group___u_c_p___c_o_m_m.html#gaf9e253400533137ba2a5a49a111a9ee8", null ], + [ "ucp_tag_recv_callback_t", "group___u_c_p___c_o_m_m.html#ga00ac0fe5665d15fab5cd254af9b07758", null ], + [ "ucp_tag_recv_nbx_callback_t", "group___u_c_p___c_o_m_m.html#ga70e110cf7c85ed5f281bd52438488d75", null ], + [ "ucp_am_recv_data_nbx_callback_t", "group___u_c_p___c_o_m_m.html#ga242399982563973351591516039dd74b", null ], + [ "ucp_atomic_op_t", "group___u_c_p___c_o_m_m.html#ga5c2ee7516e48146c044e3d9e2a2ed380", [ + [ "UCP_ATOMIC_OP_ADD", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380a9386a4cc004f74e89bb069096ff1e43b", null ], + [ "UCP_ATOMIC_OP_SWAP", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380af72a4149b8c55e187bdfdcbd8d201eeb", null ], + [ "UCP_ATOMIC_OP_CSWAP", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380ae5da2927554be21b16aa65f9e46f762a", null ], + [ "UCP_ATOMIC_OP_AND", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380adf96b275090535fca4d7c1bedaef7da3", null ], + [ "UCP_ATOMIC_OP_OR", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380abf085a4df55bbd6109e3fb849e0d123e", null ], + [ "UCP_ATOMIC_OP_XOR", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380ac723509b3a97de7b43d1736bf9d79243", null ], + [ "UCP_ATOMIC_OP_LAST", "group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380a0983496b62f2d28cf043966793c6bb0b", null ] + ] ], + [ "ucp_stream_recv_flags_t", "group___u_c_p___c_o_m_m.html#gab471a9c7ab815e3d3ad7af80253f5cc2", [ + [ "UCP_STREAM_RECV_FLAG_WAITALL", "group___u_c_p___c_o_m_m.html#ggab471a9c7ab815e3d3ad7af80253f5cc2a5fb4ed4f8009d969ea9a8b3f3542424c", null ] + ] ], + [ "ucp_op_attr_t", "group___u_c_p___c_o_m_m.html#ga67fae646dd1668efba6efe49a35a6610", [ + [ "UCP_OP_ATTR_FIELD_REQUEST", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610acfac7dfc3e7b5967870f5376c334b996", null ], + [ "UCP_OP_ATTR_FIELD_CALLBACK", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a73e3a6e8b96b37ec1b0764e67dd13602", null ], + [ "UCP_OP_ATTR_FIELD_USER_DATA", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610af6f932f15331fe7c9efacbfe2578e5ec", null ], + [ "UCP_OP_ATTR_FIELD_DATATYPE", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a354ef92dd9352dfccc859cd2ca3558d8", null ], + [ "UCP_OP_ATTR_FIELD_FLAGS", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a2f2586686e21b2700fd7cd4a8efb5a1b", null ], + [ "UCP_OP_ATTR_FIELD_REPLY_BUFFER", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a8eb660399c093d89d5deae5c847019f0", null ], + [ "UCP_OP_ATTR_FIELD_MEMORY_TYPE", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a768b4c6759502c34b0051ba33c0d05b3", null ], + [ "UCP_OP_ATTR_FIELD_RECV_INFO", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610ac5a4c17a81a2efefae5e338479ae06cb", null ], + [ "UCP_OP_ATTR_FIELD_MEMH", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a84426c4dea4dceee1b015c3ccdcb7a78", null ], + [ "UCP_OP_ATTR_FLAG_NO_IMM_CMPL", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a8805045d48573e9aa5751b439be114d0", null ], + [ "UCP_OP_ATTR_FLAG_FAST_CMPL", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a69a2066ee5f68e57021f622b0cc859a8", null ], + [ "UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610aeb35a090d86119cfd25d4e82753e943f", null ], + [ "UCP_OP_ATTR_FLAG_MULTI_SEND", "group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a405517272bc4319aa3b49638f5626c7b", null ] + ] ], + [ "ucp_req_attr_field", "group___u_c_p___c_o_m_m.html#gab383d860475f8917f51afb542e7d02ff", [ + [ "UCP_REQUEST_ATTR_FIELD_INFO_STRING", "group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa45086e70d5035d92a601605a689178b9", null ], + [ "UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE", "group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffaaae11c040c811d14362cbbc47ea9f772", null ], + [ "UCP_REQUEST_ATTR_FIELD_STATUS", "group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa9d41f03b4a79e21265ad15f87d3ff8ed", null ], + [ "UCP_REQUEST_ATTR_FIELD_MEM_TYPE", "group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa7a1764b4ce21085ecbbdd13a1f183df5", null ] + ] ], + [ "ucp_am_recv_attr_t", "group___u_c_p___c_o_m_m.html#ga487a3c588a11e42b9f313f0c9e2ead3b", [ + [ "UCP_AM_RECV_ATTR_FIELD_REPLY_EP", "group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3ba7a4057be7a4cc3bba470da4f8ed63259", null ], + [ "UCP_AM_RECV_ATTR_FLAG_DATA", "group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3baf77ecce2987e81bf773a48363767b77e", null ], + [ "UCP_AM_RECV_ATTR_FLAG_RNDV", "group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3baf9a8d75af5b826d7563863591a98714f", null ] + ] ], + [ "ucp_am_handler_param_field", "group___u_c_p___c_o_m_m.html#gaeae021145933ffa033b8327bb7bf2533", [ + [ "UCP_AM_HANDLER_PARAM_FIELD_ID", "group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a4b9788659b793630cee9bc027add35ad", null ], + [ "UCP_AM_HANDLER_PARAM_FIELD_FLAGS", "group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a99854985610ec532f0c83e36b3cadb3d", null ], + [ "UCP_AM_HANDLER_PARAM_FIELD_CB", "group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a6c2a2d3fe9c7118d3513833ad452cb69", null ], + [ "UCP_AM_HANDLER_PARAM_FIELD_ARG", "group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a23622f1a9046a0b59d1519732e2b73ff", null ] + ] ], + [ "ucp_atomic_post_op_t", "group___u_c_p___c_o_m_m.html#gac5d94ea07dc4feae2708e67378ba2ad0", [ + [ "UCP_ATOMIC_POST_OP_ADD", "group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0ac9bbe0e18afb3ffc3f308feb0a2343c0", null ], + [ "UCP_ATOMIC_POST_OP_AND", "group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0a429b49ede714d04c4675a6e3966964e4", null ], + [ "UCP_ATOMIC_POST_OP_OR", "group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0afddd2f7287b622caf220503a6ae38460", null ], + [ "UCP_ATOMIC_POST_OP_XOR", "group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0ac498a55f8365e9a0821187367bc2cf89", null ], + [ "UCP_ATOMIC_POST_OP_LAST", "group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0a97ee6dd65f14dc12791831435329c38d", null ] + ] ], + [ "ucp_atomic_fetch_op_t", "group___u_c_p___c_o_m_m.html#gabd91e0300a53e38d28dbb53dfbb66c55", [ + [ "UCP_ATOMIC_FETCH_OP_FADD", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55ae7540b3c7046a454f750f816bdfa1037", null ], + [ "UCP_ATOMIC_FETCH_OP_SWAP", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55ad5a1d6d5e5cb563b477258a4656c9069", null ], + [ "UCP_ATOMIC_FETCH_OP_CSWAP", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55adc79d547543b1803dace41a6bdea043c", null ], + [ "UCP_ATOMIC_FETCH_OP_FAND", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a072b82e2e35a90b7ed3e113423e6d5e3", null ], + [ "UCP_ATOMIC_FETCH_OP_FOR", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a2b0b3779905ea67eea996ae8e296ed59", null ], + [ "UCP_ATOMIC_FETCH_OP_FXOR", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a86930c2cddc0a884cbf88ced6c330049", null ], + [ "UCP_ATOMIC_FETCH_OP_LAST", "group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a2532883ac97f4ee8178b52318f978a05", null ] + ] ], + [ "ucp_request_query", "group___u_c_p___c_o_m_m.html#gafc247802373bbe39e9866745e102a064", null ], + [ "ucp_am_send_nbx", "group___u_c_p___c_o_m_m.html#ga4b8ab214f35828ee4608d73442e8c372", null ], + [ "ucp_am_recv_data_nbx", "group___u_c_p___c_o_m_m.html#gaefaaa5e0a154efe496ae5bb7f2bf71f3", null ], + [ "ucp_am_data_release", "group___u_c_p___c_o_m_m.html#ga45570903fc3ce01e7e5c0cd241f516f9", null ], + [ "ucp_stream_send_nbx", "group___u_c_p___c_o_m_m.html#gae9fe6efe6b05e4e78f58bee68c68b252", null ], + [ "ucp_tag_send_nbx", "group___u_c_p___c_o_m_m.html#ga8323878b60f426c630d4ff8996ede3cc", null ], + [ "ucp_tag_send_sync_nbx", "group___u_c_p___c_o_m_m.html#ga0d96a2aac42fe99ce0c79f15dda8bd06", null ], + [ "ucp_stream_recv_nbx", "group___u_c_p___c_o_m_m.html#ga30494ce33e63823c81c2c5b3656d25c3", null ], + [ "ucp_stream_recv_data_nb", "group___u_c_p___c_o_m_m.html#ga47f307f4765eb5410f24ac27986b59d7", null ], + [ "ucp_tag_recv_nbx", "group___u_c_p___c_o_m_m.html#gaa842f8ca8ad1363ed857ab938285a16f", null ], + [ "ucp_tag_probe_nb", "group___u_c_p___c_o_m_m.html#ga41668f468dc37a7634116b8210815f22", null ], + [ "ucp_tag_msg_recv_nbx", "group___u_c_p___c_o_m_m.html#ga48c61d44f18362bdaf8fca3122efcea6", null ], + [ "ucp_put_nbx", "group___u_c_p___c_o_m_m.html#ga29e7b9b70b782140e63544b8613a5fe7", null ], + [ "ucp_get_nbx", "group___u_c_p___c_o_m_m.html#gaa06c6521592661a8123c11426074d880", null ], + [ "ucp_atomic_op_nbx", "group___u_c_p___c_o_m_m.html#ga087e2cad02e84cf1230684362562aa46", null ], + [ "ucp_request_check_status", "group___u_c_p___c_o_m_m.html#gae082ad7af428645ebe6e469d3d06a757", null ], + [ "ucp_tag_recv_request_test", "group___u_c_p___c_o_m_m.html#ga707cbbef8cdcf90fa7cf63c922ef2c7f", null ], + [ "ucp_stream_recv_request_test", "group___u_c_p___c_o_m_m.html#ga4d8d8823b24cb25dcab8bf44c72fa25e", null ], + [ "ucp_request_cancel", "group___u_c_p___c_o_m_m.html#ga3553f89a61d6b40af4633a2e7c84fc1d", null ], + [ "ucp_stream_data_release", "group___u_c_p___c_o_m_m.html#ga1d1c1c1b2caf4f26c9872e1d708d5f68", null ], + [ "ucp_request_free", "group___u_c_p___c_o_m_m.html#ga0e8e46f5953d464382b21edef3ec9994", null ], + [ "ucp_request_alloc", "group___u_c_p___c_o_m_m.html#gac6f75654d74e7e24881252fbff6bb9b2", null ], + [ "ucp_request_is_completed", "group___u_c_p___c_o_m_m.html#ga432e478b97575b21855074a45d54520d", null ], + [ "ucp_put", "group___u_c_p___c_o_m_m.html#ga85b0a27cf8a3239decabad6a9104eb31", null ], + [ "ucp_get", "group___u_c_p___c_o_m_m.html#gaf4a465cff6c1691106430564899f6f3e", null ], + [ "ucp_atomic_add32", "group___u_c_p___c_o_m_m.html#gaa042d7e76314e1d7ea9717d4adacde7b", null ], + [ "ucp_atomic_add64", "group___u_c_p___c_o_m_m.html#gaa80cd3f104b920c0c2f6bf7cff50fc15", null ], + [ "ucp_atomic_fadd32", "group___u_c_p___c_o_m_m.html#ga0c777d7d1c59e01151ef5e3fcd7e5b94", null ], + [ "ucp_atomic_fadd64", "group___u_c_p___c_o_m_m.html#ga7435bc5d5e2c4fb6b491d457ab65596b", null ], + [ "ucp_atomic_swap32", "group___u_c_p___c_o_m_m.html#ga43118f9d5e6d8fdfa518887218468bb3", null ], + [ "ucp_atomic_swap64", "group___u_c_p___c_o_m_m.html#gaa2913e345505195a183ccc2583fb4ebc", null ], + [ "ucp_atomic_cswap32", "group___u_c_p___c_o_m_m.html#ga6078dddaa93c8dfdab3c18014064f0c0", null ], + [ "ucp_atomic_cswap64", "group___u_c_p___c_o_m_m.html#gafa365c16d4c2b4fd2aba6e94fec2c92b", null ], + [ "ucp_am_send_nb", "group___u_c_p___c_o_m_m.html#ga94ec21811930b6b6fb8eab500b8c730d", null ], + [ "ucp_stream_send_nb", "group___u_c_p___c_o_m_m.html#ga9022ff0ebb56cac81f6ba81bb28f71b3", null ], + [ "ucp_stream_recv_nb", "group___u_c_p___c_o_m_m.html#gadf3b4504a329a46d2d4ec0a8cec08130", null ], + [ "ucp_tag_send_nb", "group___u_c_p___c_o_m_m.html#gaae7343bd638924e5518041311d5c1dfc", null ], + [ "ucp_tag_send_nbr", "group___u_c_p___c_o_m_m.html#gad90aa964e14fef59b4e3bd9120cca669", null ], + [ "ucp_tag_send_sync_nb", "group___u_c_p___c_o_m_m.html#gabd3e1ccae2ef34463e8313d09d3db17f", null ], + [ "ucp_tag_recv_nb", "group___u_c_p___c_o_m_m.html#gaeb24cdfc33dfb2886551b51843aa6304", null ], + [ "ucp_tag_recv_nbr", "group___u_c_p___c_o_m_m.html#ga5a86663a4a144fd81d7a4e3378c5edd2", null ], + [ "ucp_tag_msg_recv_nb", "group___u_c_p___c_o_m_m.html#gac335b3ae4c9577728d9c0f2ecd44c084", null ], + [ "ucp_put_nbi", "group___u_c_p___c_o_m_m.html#ga77f3d5def7a77c4ba88f9e1eefa4b7e6", null ], + [ "ucp_put_nb", "group___u_c_p___c_o_m_m.html#ga1ba986b2bde69c215abd5766dbceeb18", null ], + [ "ucp_get_nbi", "group___u_c_p___c_o_m_m.html#gae3597f699227d598651f6630fbd7968b", null ], + [ "ucp_get_nb", "group___u_c_p___c_o_m_m.html#ga7cb68811f53a69d37fd16e8ddb46e23b", null ], + [ "ucp_atomic_post", "group___u_c_p___c_o_m_m.html#ga839312fb4de5e786daacb4fa071d61df", null ], + [ "ucp_atomic_fetch_nb", "group___u_c_p___c_o_m_m.html#ga43a1a4a517797eb8c5c96ac8841437de", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_m_m_structucp__err__handler.js b/api/v1.14/html/group___u_c_p___c_o_m_m_structucp__err__handler.js new file mode 100644 index 00000000000..c34d4c85a70 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_m_m_structucp__err__handler.js @@ -0,0 +1,5 @@ +var group___u_c_p___c_o_m_m_structucp__err__handler = +[ + [ "cb", "group___u_c_p___c_o_m_m.html#a0bf3f446a1821a62dd3a300584792e33", null ], + [ "arg", "group___u_c_p___c_o_m_m.html#a7e49e1843e1adab5561e5fc2b2e1afb1", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_m_m_structucp__request__attr__t.js b/api/v1.14/html/group___u_c_p___c_o_m_m_structucp__request__attr__t.js new file mode 100644 index 00000000000..99bafd4b40f --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_m_m_structucp__request__attr__t.js @@ -0,0 +1,8 @@ +var group___u_c_p___c_o_m_m_structucp__request__attr__t = +[ + [ "field_mask", "group___u_c_p___c_o_m_m.html#a311396d670dcb5ca9941dc17a8ad23d7", null ], + [ "debug_string", "group___u_c_p___c_o_m_m.html#aa284657c27e1a8d6d2653f12cfb61bc5", null ], + [ "debug_string_size", "group___u_c_p___c_o_m_m.html#a871b3929bfe0b97d249016e57fd2fdd7", null ], + [ "status", "group___u_c_p___c_o_m_m.html#a3df010dde5b9a67b62bd354f0af3fc93", null ], + [ "mem_type", "group___u_c_p___c_o_m_m.html#a86e23d8d22c973be0f86ea56adfd5678", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_f_i_g.html b/api/v1.14/html/group___u_c_p___c_o_n_f_i_g.html new file mode 100644 index 00000000000..18af9205378 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_f_i_g.html @@ -0,0 +1,434 @@ + + + + + + +UCX: UCP Configuration + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + +

+Data Structures

struct  ucp_params
 Tuning parameters for UCP library. More...
 
+ + + + + + + +

+Typedefs

typedef struct ucp_params ucp_params_t
 Tuning parameters for UCP library. More...
 
typedef struct ucp_config ucp_config_t
 UCP configuration descriptor. More...
 
+ + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_config_read (const char *env_prefix, const char *filename, ucp_config_t **config_p)
 Read UCP configuration descriptor. More...
 
void ucp_config_release (ucp_config_t *config)
 Release configuration descriptor. More...
 
ucs_status_t ucp_config_modify (ucp_config_t *config, const char *name, const char *value)
 Modify context configuration. More...
 
void ucp_config_print (const ucp_config_t *config, FILE *stream, const char *title, ucs_config_print_flags_t print_flags)
 Print configuration information. More...
 
+

Detailed Description

+

This section describes routines for configuration of the UCP network layer

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_params
+
+

The structure defines the parameters that are used for UCP library tuning during UCP library initialization.

+
Note
UCP library implementation uses the features parameter to optimize the library functionality that minimize memory footprint. For example, if the application does not require send/receive semantics UCP library may avoid allocation of expensive resources associated with send/receive queues.
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_params_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+uint64_t +features +

UCP features that are used for library initialization. It is recommended for applications only to request the features that are required for an optimal functionality This field must be specified.

+
+size_t +request_size +

The size of a reserved space in a non-blocking requests. Typically applications use this space for caching own structures in order to avoid costly memory allocations, pointer dereferences, and cache misses. For example, MPI implementation can use this memory for caching MPI descriptors This field defaults to 0 if not specified.

+
+ucp_request_init_callback_t +request_init +

Pointer to a routine that is used for the request initialization. This function will be called only on the very first time a request memory is initialized, and may not be called again if a request is reused. If a request should be reset before the next reuse, it can be done before calling ucp_request_free.

+

NULL can be used if no such is function required, which is also the default if this field is not specified by field_mask.

+
+ucp_request_cleanup_callback_t +request_cleanup +

Pointer to a routine that is responsible for final cleanup of the memory associated with the request. This routine may not be called every time a request is released. For some implementations, the cleanup call may be delayed and only invoked at ucp_worker_destroy.

+

NULL can be used if no such function is required, which is also the default if this field is not specified by field_mask.

+
+uint64_t +tag_sender_mask +

Mask which specifies particular bits of the tag which can uniquely identify the sender (UCP endpoint) in tagged operations. This field defaults to 0 if not specified.

+
+int +mt_workers_shared +

This flag indicates if this context is shared by multiple workers from different threads. If so, this context needs thread safety support; otherwise, the context does not need to provide thread safety. For example, if the context is used by single worker, and that worker is shared by multiple threads, this context does not need thread safety; if the context is used by worker 1 and worker 2, and worker 1 is used by thread 1 and worker 2 is used by thread 2, then this context needs thread safety. Note that actual thread mode may be different from mode passed to ucp_init. To get actual thread mode use ucp_context_query.

+
+size_t +estimated_num_eps +

An optimization hint of how many endpoints will be created on this context. For example, when used from MPI or SHMEM libraries, this number will specify the number of ranks (or processing elements) in the job. Does not affect semantics, but only transport selection criteria and the resulting performance. The value can be also set by UCX_NUM_EPS environment variable. In such case it will override the number of endpoints set by estimated_num_eps

+
+size_t +estimated_num_ppn +

An optimization hint for a single node. For example, when used from MPI or OpenSHMEM libraries, this number will specify the number of Processes Per Node (PPN) in the job. Does not affect semantics, only transport selection criteria and the resulting performance. The value can be also set by the UCX_NUM_PPN environment variable, which will override the number of endpoints set by estimated_num_ppn

+
+const char * +name +

Tracing and analysis tools can identify the context using this name. To retrieve the context's name, use ucp_context_query, as the name you supply may be changed by UCX under some circumstances, e.g. a name conflict. This field is only assigned if you set UCP_PARAM_FIELD_NAME in the field mask. If not, then a default unique name will be created for you.

+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ucp_params ucp_params_t
+
+

The structure defines the parameters that are used for UCP library tuning during UCP library initialization.

+
Note
UCP library implementation uses the features parameter to optimize the library functionality that minimize memory footprint. For example, if the application does not require send/receive semantics UCP library may avoid allocation of expensive resources associated with send/receive queues.
+ +
+
+ +
+
+ + + + +
typedef struct ucp_config ucp_config_t
+
+

This descriptor defines the configuration for UCP application context. The configuration is loaded from the run-time environment (using configuration files of environment variables) using ucp_config_read routine and can be printed using ucp_config_print routine. In addition, application is responsible to release the descriptor using ucp_config_release routine.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_config_read (const char * env_prefix,
const char * filename,
ucp_config_t ** config_p 
)
+
+

The routine fetches the information about UCP library configuration from the run-time environment. Then, the fetched descriptor is used for UCP library initialization. The Application can print out the descriptor using print routine. In addition the application is responsible for releasing the descriptor back to the UCP library.

+
Parameters
+ + + + +
[in]env_prefixIf non-NULL, the routine searches for the environment variables that start with <env_prefix>_UCX_ prefix. Otherwise, the routine searches for the environment variables that start with UCX_ prefix.
[in]filenameIf non-NULL, read configuration from the file defined by filename. If the file does not exist, it will be ignored and no error reported to the application.
[out]config_pPointer to configuration descriptor as defined by ucp_config_t.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void ucp_config_release (ucp_config_tconfig)
+
+

The routine releases the configuration descriptor that was allocated through ucp_config_read() routine.

+
Parameters
+ + +
[out]configConfiguration descriptor as defined by ucp_config_t.
+
+
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_config_modify (ucp_config_tconfig,
const char * name,
const char * value 
)
+
+

The routine changes one configuration setting stored in configuration descriptor.

+
Parameters
+ + + + +
[in]configConfiguration to modify.
[in]nameConfiguration variable name.
[in]valueValue to set.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void ucp_config_print (const ucp_config_tconfig,
FILE * stream,
const char * title,
ucs_config_print_flags_t print_flags 
)
+
+

The routine prints the configuration information that is stored in configuration descriptor.

+
Parameters
+ + + + + +
[in]configConfiguration descriptor to print.
[in]streamOutput stream to print the configuration to.
[in]titleConfiguration title to print.
[in]print_flagsFlags that control various printing options.
+
+
+
Examples:
ucp_hello_world.c.
+
+
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___c_o_n_f_i_g.js b/api/v1.14/html/group___u_c_p___c_o_n_f_i_g.js new file mode 100644 index 00000000000..7305d0407c8 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_f_i_g.js @@ -0,0 +1,21 @@ +var group___u_c_p___c_o_n_f_i_g = +[ + [ "ucp_params", "group___u_c_p___c_o_n_f_i_g.html#structucp__params", [ + [ "field_mask", "group___u_c_p___c_o_n_f_i_g.html#a62d432cd22de13ccc9bb12edeb9c566b", null ], + [ "features", "group___u_c_p___c_o_n_f_i_g.html#afe7ed2a6c6ceb48e18a04f524d844e67", null ], + [ "request_size", "group___u_c_p___c_o_n_f_i_g.html#a3125e61440123f639c024d75b5edc0d6", null ], + [ "request_init", "group___u_c_p___c_o_n_f_i_g.html#ac1f0a25d794111217af5e0e6b9865458", null ], + [ "request_cleanup", "group___u_c_p___c_o_n_f_i_g.html#ad2aadf27367f4cc64e91e1dd2b52b8b8", null ], + [ "tag_sender_mask", "group___u_c_p___c_o_n_f_i_g.html#a82241de012d49800d2b75bd982f9b6b6", null ], + [ "mt_workers_shared", "group___u_c_p___c_o_n_f_i_g.html#ac81f2d8a179df5fd39786a4b08b26faf", null ], + [ "estimated_num_eps", "group___u_c_p___c_o_n_f_i_g.html#a5881757ea71d8c3ff7c15632a6cbd699", null ], + [ "estimated_num_ppn", "group___u_c_p___c_o_n_f_i_g.html#ab5966a27f9f4cf476560f9c87ac839cc", null ], + [ "name", "group___u_c_p___c_o_n_f_i_g.html#ac1aa15f430f0f273ff4f6055f9cfdea2", null ] + ] ], + [ "ucp_params_t", "group___u_c_p___c_o_n_f_i_g.html#ga8fb8f3597c9a77edce7d0b765a73b102", null ], + [ "ucp_config_t", "group___u_c_p___c_o_n_f_i_g.html#gab4fd46edba365347ef3a5b966c324388", null ], + [ "ucp_config_read", "group___u_c_p___c_o_n_f_i_g.html#gab2a5bd39a60f5326771c7a46f5f93319", null ], + [ "ucp_config_release", "group___u_c_p___c_o_n_f_i_g.html#ga12d1b29c55e927a22de92431efa0d82a", null ], + [ "ucp_config_modify", "group___u_c_p___c_o_n_f_i_g.html#ga94828d175f4abd87d48b54f32dc74703", null ], + [ "ucp_config_print", "group___u_c_p___c_o_n_f_i_g.html#ga52f4d762c9f3a61c98fb7ba95a00809e", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_f_i_g_structucp__params.js b/api/v1.14/html/group___u_c_p___c_o_n_f_i_g_structucp__params.js new file mode 100644 index 00000000000..f0db7ccd211 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_f_i_g_structucp__params.js @@ -0,0 +1,13 @@ +var group___u_c_p___c_o_n_f_i_g_structucp__params = +[ + [ "field_mask", "group___u_c_p___c_o_n_f_i_g.html#a62d432cd22de13ccc9bb12edeb9c566b", null ], + [ "features", "group___u_c_p___c_o_n_f_i_g.html#afe7ed2a6c6ceb48e18a04f524d844e67", null ], + [ "request_size", "group___u_c_p___c_o_n_f_i_g.html#a3125e61440123f639c024d75b5edc0d6", null ], + [ "request_init", "group___u_c_p___c_o_n_f_i_g.html#ac1f0a25d794111217af5e0e6b9865458", null ], + [ "request_cleanup", "group___u_c_p___c_o_n_f_i_g.html#ad2aadf27367f4cc64e91e1dd2b52b8b8", null ], + [ "tag_sender_mask", "group___u_c_p___c_o_n_f_i_g.html#a82241de012d49800d2b75bd982f9b6b6", null ], + [ "mt_workers_shared", "group___u_c_p___c_o_n_f_i_g.html#ac81f2d8a179df5fd39786a4b08b26faf", null ], + [ "estimated_num_eps", "group___u_c_p___c_o_n_f_i_g.html#a5881757ea71d8c3ff7c15632a6cbd699", null ], + [ "estimated_num_ppn", "group___u_c_p___c_o_n_f_i_g.html#ab5966a27f9f4cf476560f9c87ac839cc", null ], + [ "name", "group___u_c_p___c_o_n_f_i_g.html#ac1aa15f430f0f273ff4f6055f9cfdea2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t.html b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t.html new file mode 100644 index 00000000000..be66e80da15 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t.html @@ -0,0 +1,978 @@ + + + + + + +UCX: UCP Application Context + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + +

+Data Structures

struct  ucp_lib_attr
 Lib attributes. More...
 
struct  ucp_context_attr
 Context attributes. More...
 
struct  ucp_tag_recv_info
 UCP receive information descriptor. More...
 
struct  ucp_request_param_t
 Operation parameters passed to ucp_tag_send_nbx, ucp_tag_send_sync_nbx, ucp_tag_recv_nbx, ucp_put_nbx, ucp_get_nbx, ucp_am_send_nbx and ucp_am_recv_data_nbx. More...
 
union  ucp_request_param_t.cb
 
union  ucp_request_param_t.recv_info
 
+ + + + +

+Macros

#define UCP_ENTITY_NAME_MAX   32
 Maximum size of the UCP entity name in structure of entity attributes provided by a query method. More...
 
+ + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct ucp_lib_attr ucp_lib_attr_t
 Lib attributes. More...
 
typedef struct ucp_context_attr ucp_context_attr_t
 Context attributes. More...
 
typedef struct ucp_tag_recv_info ucp_tag_recv_info_t
 UCP receive information descriptor. More...
 
typedef struct ucp_context * ucp_context_h
 UCP Application Context. More...
 
typedef void(* ucp_request_init_callback_t) (void *request)
 Request initialization callback. More...
 
typedef void(* ucp_request_cleanup_callback_t) (void *request)
 Request cleanup callback. More...
 
+ + + + + + + + + + + + + +

+Enumerations

enum  ucp_params_field {
+  UCP_PARAM_FIELD_FEATURES = UCS_BIT(0), +UCP_PARAM_FIELD_REQUEST_SIZE = UCS_BIT(1), +UCP_PARAM_FIELD_REQUEST_INIT = UCS_BIT(2), +UCP_PARAM_FIELD_REQUEST_CLEANUP = UCS_BIT(3), +
+  UCP_PARAM_FIELD_TAG_SENDER_MASK = UCS_BIT(4), +UCP_PARAM_FIELD_MT_WORKERS_SHARED = UCS_BIT(5), +UCP_PARAM_FIELD_ESTIMATED_NUM_EPS = UCS_BIT(6), +UCP_PARAM_FIELD_ESTIMATED_NUM_PPN = UCS_BIT(7), +
+  UCP_PARAM_FIELD_NAME = UCS_BIT(8) +
+ }
 UCP context parameters field mask. More...
 
enum  ucp_feature {
+  UCP_FEATURE_TAG = UCS_BIT(0), +UCP_FEATURE_RMA = UCS_BIT(1), +UCP_FEATURE_AMO32 = UCS_BIT(2), +UCP_FEATURE_AMO64 = UCS_BIT(3), +
+  UCP_FEATURE_WAKEUP = UCS_BIT(4), +UCP_FEATURE_STREAM = UCS_BIT(5), +UCP_FEATURE_AM = UCS_BIT(6), +UCP_FEATURE_EXPORTED_MEMH = UCS_BIT(7) +
+ }
 UCP configuration features. More...
 
enum  ucp_lib_attr_field { UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL = UCS_BIT(0) + }
 UCP library attributes field mask. More...
 
enum  ucp_context_attr_field { UCP_ATTR_FIELD_REQUEST_SIZE = UCS_BIT(0), +UCP_ATTR_FIELD_THREAD_MODE = UCS_BIT(1), +UCP_ATTR_FIELD_MEMORY_TYPES = UCS_BIT(2), +UCP_ATTR_FIELD_NAME = UCS_BIT(3) + }
 UCP context attributes field mask. More...
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_lib_query (ucp_lib_attr_t *attr)
 Get attributes of the UCP library. More...
 
void ucp_get_version (unsigned *major_version, unsigned *minor_version, unsigned *release_number)
 Get UCP library version. More...
 
const char * ucp_get_version_string (void)
 Get UCP library version as a string. More...
 
static ucs_status_t ucp_init (const ucp_params_t *params, const ucp_config_t *config, ucp_context_h *context_p)
 UCP context initialization. More...
 
void ucp_cleanup (ucp_context_h context_p)
 Release UCP application context. More...
 
ucs_status_t ucp_context_query (ucp_context_h context_p, ucp_context_attr_t *attr)
 Get attributes specific to a particular context. More...
 
void ucp_context_print_info (const ucp_context_h context, FILE *stream)
 Print context information. More...
 
+

Detailed Description

+

Application context is a primary concept of UCP design which provides an isolation mechanism, allowing resources associated with the context to separate or share network communication context across multiple instances of applications.

+

This section provides a detailed description of this concept and routines associated with it.

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_lib_attr
+
+

The structure defines the attributes that characterize the Library.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_lib_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+ucs_thread_mode_t +max_thread_level +

Maximum level of thread support of the library, which is permanent throughout the lifetime of the library. Accordingly, the user can call ucp_worker_create with appropriate ucp_worker_params_t::thread_mode. For supported thread levels please see ucs_thread_mode_t.

+
+ +
+
+ +
+
+ + + + +
struct ucp_context_attr
+
+

The structure defines the attributes that characterize the particular context.

+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_context_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+size_t +request_size +

Size of UCP non-blocking request. When pre-allocated request is used (e.g. in ucp_tag_recv_nbr) it should have enough space to fit UCP request data, which is defined by this value.

+
+ucs_thread_mode_t +thread_mode +

Thread safe level of the context. For supported thread levels please see ucs_thread_mode_t.

+
+uint64_t +memory_types +

Mask of which memory types are supported, for supported memory types please see ucs_memory_type_t.

+
+char +name[UCP_ENTITY_NAME_MAX] +

Tracing and analysis tools can use name to identify this UCX context.

+
+ +
+
+ +
+
+ + + + +
struct ucp_tag_recv_info
+
+

The UCP receive information descriptor is allocated by application and filled in with the information about the received message by ucp_tag_probe_nb or ucp_tag_recv_request_test routines or ucp_tag_recv_callback_t callback argument.

+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+ + + + + + + +
Data Fields
+ucp_tag_t +sender_tag +

Sender tag

+
+size_t +length +

The size of the received data

+
+ +
+
+ +
+
+ + + + +
struct ucp_request_param_t
+
+

The structure ucp_request_param_t is used to specify datatype of operation, provide user request in case the external request is used, set completion callback and custom user data passed to this callback.

+

Example: implementation of function to send contiguous buffer to ep and invoke callback function at operation completion. If the operation completed immediately (status == UCS_OK) then callback is not called.

+
ucs_status_ptr_t send_data(ucp_ep_h ep, void *buffer, size_t length,
ucp_tag_t tag, void *request)
{
.request = request,
.cb.send = custom_send_callback_f,
.user_data = pointer_to_user_context_passed_to_cb
};
status = ucp_tag_send_nbx(ep, buffer, length, tag, &param);
if (UCS_PTR_IS_ERR(status)) {
handle_error(status);
} else if (status == UCS_OK) {
// operation is completed
}
return status;
}
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint32_t +op_attr_mask +

Mask of valid fields in this structure and operation flags, using bits from ucp_op_attr_t. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+uint32_t +flags +
+void * +request +

Request handle allocated by the user. There should be at least UCP request size bytes of available space before the request. The size of the UCP request can be obtained by ucp_context_query function.

+
+union ucp_request_param_t +cb +

Callback function that is invoked whenever the send or receive operation is completed.

+
+ucp_datatype_t +datatype +

Datatype descriptor for the elements in the buffer. In case the op_attr_mask & UCP_OP_ATTR_FIELD_DATATYPE bit is not set, then use default datatype ucp_dt_make_contig(1)

+
+void * +user_data +

Pointer to user data passed to callback function.

+
+void * +reply_buffer +

Reply buffer. Can be used for storing operation result, for example by ucp_atomic_op_nbx.

+
+ucs_memory_type_t +memory_type +

Memory type of the buffer. see ucs_memory_type_t for possible memory types. An optimization hint to avoid memory type detection for request buffer. If this value is not set (along with its corresponding bit in the op_attr_mask - UCP_OP_ATTR_FIELD_MEMORY_TYPE), then use default UCS_MEMORY_TYPE_UNKNOWN which means the memory type will be detected internally.

+
+union ucp_request_param_t +recv_info +

Pointer to the information where received data details are stored in case of an immediate completion of receive operation. The user has to provide a pointer to valid memory/variable which will be updated on function return.

+
+ucp_mem_h +memh +

Memory handle for pre-registered buffer. If the handle is provided, protocols that require registered memory can skip the registration step. As a result, the communication request overhead can be reduced and the request can be completed faster. The memory handle should be obtained by calling ucp_mem_map.

+
+ +
+
+ +
+
+ + + + +
union ucp_request_param_t.cb
+
+

Callback function that is invoked whenever the send or receive operation is completed.

+
+ + + + + + + + + + + + + +
Data Fields
+ucp_send_nbx_callback_t +send +
+ucp_tag_recv_nbx_callback_t +recv +
+ucp_stream_recv_nbx_callback_t +recv_stream +
+ucp_am_recv_data_nbx_callback_t +recv_am +
+ +
+
+ +
+
+ + + + +
union ucp_request_param_t.recv_info
+
+

Pointer to the information where received data details are stored in case of an immediate completion of receive operation. The user has to provide a pointer to valid memory/variable which will be updated on function return.

+
+ + + + + + + +
Data Fields
+size_t * +length +
+ucp_tag_recv_info_t * +tag_info +
+ +
+
+

Macro Definition Documentation

+ +
+
+ + + + +
#define UCP_ENTITY_NAME_MAX   32
+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ucp_lib_attr ucp_lib_attr_t
+
+

The structure defines the attributes that characterize the Library.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_context_attr ucp_context_attr_t
+
+

The structure defines the attributes that characterize the particular context.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_tag_recv_info ucp_tag_recv_info_t
+
+

The UCP receive information descriptor is allocated by application and filled in with the information about the received message by ucp_tag_probe_nb or ucp_tag_recv_request_test routines or ucp_tag_recv_callback_t callback argument.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_context* ucp_context_h
+
+

UCP application context (or just a context) is an opaque handle that holds a UCP communication instance's global information. It represents a single UCP communication instance. The communication instance could be an OS process (an application) that uses UCP library. This global information includes communication resources, endpoints, memory, temporary file storage, and other communication information directly associated with a specific UCP instance. The context also acts as an isolation mechanism, allowing resources associated with the context to manage multiple concurrent communication instances. For example, users using both MPI and OpenSHMEM sessions simultaneously can isolate their communication by allocating and using separate contexts for each of them. Alternatively, users can share the communication resources (memory, network resource context, etc.) between them by using the same application context. A message sent or a RMA operation performed in one application context cannot be received in any other application context.

+ +
+
+ +
+
+ + + + +
typedef void(* ucp_request_init_callback_t) (void *request)
+
+

This callback routine is responsible for the request initialization.

+
Parameters
+ + +
[in]requestRequest handle to initialize.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_request_cleanup_callback_t) (void *request)
+
+

This callback routine is responsible for cleanup of the memory associated with the request.

+
Parameters
+ + +
[in]requestRequest handle to cleanup.
+
+
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucp_params_field
+
+

The enumeration allows specifying which fields in ucp_params_t are present. It is used to enable backward compatibility support.

+ + + + + + + + + + +
Enumerator
UCP_PARAM_FIELD_FEATURES  +

features

+
UCP_PARAM_FIELD_REQUEST_SIZE  +

request_size

+
UCP_PARAM_FIELD_REQUEST_INIT  +

request_init

+
UCP_PARAM_FIELD_REQUEST_CLEANUP  +

request_cleanup

+
UCP_PARAM_FIELD_TAG_SENDER_MASK  +

tag_sender_mask

+
UCP_PARAM_FIELD_MT_WORKERS_SHARED  +

mt_workers_shared

+
UCP_PARAM_FIELD_ESTIMATED_NUM_EPS  +

estimated_num_eps

+
UCP_PARAM_FIELD_ESTIMATED_NUM_PPN  +

estimated_num_ppn

+
UCP_PARAM_FIELD_NAME  +

name

+
+ +
+
+ +
+
+ + + + +
enum ucp_feature
+
+

The enumeration list describes the features supported by UCP. An application can request the features using UCP parameters during UCP initialization process.

+ + + + + + + + + +
Enumerator
UCP_FEATURE_TAG  +

Request tag matching support

+
UCP_FEATURE_RMA  +

Request remote memory access support

+
UCP_FEATURE_AMO32  +

Request 32-bit atomic operations support

+
UCP_FEATURE_AMO64  +

Request 64-bit atomic operations support

+
UCP_FEATURE_WAKEUP  +

Request interrupt notification support

+
UCP_FEATURE_STREAM  +

Request stream support

+
UCP_FEATURE_AM  +

Request Active Message support

+
UCP_FEATURE_EXPORTED_MEMH  +

Request support mapping a peer's memory handle that was created by ucp_mem_map and packed by ucp_memh_pack with the flag UCP_MEMH_PACK_FLAG_EXPORT and use it for local operations

+
+ +
+
+ +
+
+ + + + +
enum ucp_lib_attr_field
+
+

The enumeration allows specifying which fields in ucp_lib_attr_t are present. It is used to enable backward compatibility support.

+ + +
Enumerator
UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL  +

UCP library maximum supported thread level flag

+
+ +
+
+ +
+
+ + + + +
enum ucp_context_attr_field
+
+

The enumeration allows specifying which fields in ucp_context_attr_t are present. It is used to enable backward compatibility support.

+ + + + + +
Enumerator
UCP_ATTR_FIELD_REQUEST_SIZE  +

UCP request size

+
UCP_ATTR_FIELD_THREAD_MODE  +

UCP context thread flag

+
UCP_ATTR_FIELD_MEMORY_TYPES  +

UCP supported memory types

+
UCP_ATTR_FIELD_NAME  +

UCP context name

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
ucs_status_t ucp_lib_query (ucp_lib_attr_tattr)
+
+

This routine fetches information about the UCP library attributes.

+
Parameters
+ + +
[out]attrFilled with attributes of the UCP library.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void ucp_get_version (unsigned * major_version,
unsigned * minor_version,
unsigned * release_number 
)
+
+

This routine returns the UCP library version.

+
Parameters
+ + + + +
[out]major_versionFilled with library major version.
[out]minor_versionFilled with library minor version.
[out]release_numberFilled with library release number.
+
+
+ +
+
+ +
+
+ + + + + + + + +
const char* ucp_get_version_string (void )
+
+

This routine returns the UCP library version as a string which consists of: "major.minor.release".

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static ucs_status_t ucp_init (const ucp_params_tparams,
const ucp_config_tconfig,
ucp_context_hcontext_p 
)
+
+inlinestatic
+
+

This routine creates and initializes a UCP application context.

+
Warning
This routine must be called before any other UCP function call in the application.
+

This routine checks API version compatibility, then discovers the available network interfaces, and initializes the network resources required for discovering of the network and memory related devices. This routine is responsible for initialization all information required for a particular application scope, for example, MPI application, OpenSHMEM application, etc.

+
Note
    +
  • Higher level protocols can add additional communication isolation, as MPI does with its communicator object. A single communication context may be used to support multiple MPI communicators.
  • +
  • The context can be used to isolate the communication that corresponds to different protocols. For example, if MPI and OpenSHMEM are using UCP to isolate the MPI communication from the OpenSHMEM communication, users should use different application context for each of the communication libraries.
  • +
+
+
Parameters
+ + + + +
[in]configUCP configuration descriptor allocated through ucp_config_read() routine.
[in]paramsUser defined ucp_params_t configurations for the UCP application context.
[out]context_pInitialized UCP application context.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void ucp_cleanup (ucp_context_h context_p)
+
+

This routine finalizes and releases the resources associated with a UCP application context.

+
Warning
An application cannot call any UCP routine once the UCP application context released.
+

The cleanup process releases and shuts down all resources associated with the application context. After calling this routine, calling any UCP routine without calling UCP initialization routine is invalid.

+
Parameters
+ + +
[in]context_pHandle to UCP application context.
+
+
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_context_query (ucp_context_h context_p,
ucp_context_attr_tattr 
)
+
+

This routine fetches information about the context.

+
Parameters
+ + + +
[in]context_pHandle to UCP application context.
[out]attrFilled with attributes of context_p context.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_context_print_info (const ucp_context_h context,
FILE * stream 
)
+
+

This routine prints information about the context configuration: including memory domains, transport resources, and other useful information associated with the context.

+
Parameters
+ + + +
[in]contextPrint this context object's configuration.
[in]streamOutput stream on which to print the information.
+
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t.js new file mode 100644 index 00000000000..8d9b3252709 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t.js @@ -0,0 +1,84 @@ +var group___u_c_p___c_o_n_t_e_x_t = +[ + [ "ucp_lib_attr", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__lib__attr", [ + [ "field_mask", "group___u_c_p___c_o_n_t_e_x_t.html#a529751be1cb45aff76dde0e5bf22b6d9", null ], + [ "max_thread_level", "group___u_c_p___c_o_n_t_e_x_t.html#a3cfd1d293ca29602ae799f7c52607c86", null ] + ] ], + [ "ucp_context_attr", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__context__attr", [ + [ "field_mask", "group___u_c_p___c_o_n_t_e_x_t.html#ae4603d33274d3dd0bf41e1d759513601", null ], + [ "request_size", "group___u_c_p___c_o_n_t_e_x_t.html#a9b2ad3af27e1e94d4189ecc6fb1512ef", null ], + [ "thread_mode", "group___u_c_p___c_o_n_t_e_x_t.html#a4bc884428c16540d5d1b1f56881eb80b", null ], + [ "memory_types", "group___u_c_p___c_o_n_t_e_x_t.html#a59917e3a7e709c62e77d0acabbb0a24d", null ], + [ "name", "group___u_c_p___c_o_n_t_e_x_t.html#a958c850cc721fdadeae598928bbc8270", null ] + ] ], + [ "ucp_tag_recv_info", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__tag__recv__info", [ + [ "sender_tag", "group___u_c_p___c_o_n_t_e_x_t.html#a19ac36808d83d348b23cd34fe997a7c9", null ], + [ "length", "group___u_c_p___c_o_n_t_e_x_t.html#a6fd83122b93c677e702dc37b39e8351b", null ] + ] ], + [ "ucp_request_param_t", "group___u_c_p___c_o_n_t_e_x_t.html#structucp__request__param__t", [ + [ "op_attr_mask", "group___u_c_p___c_o_n_t_e_x_t.html#a97e9444548efb351db6a07130fb69c28", null ], + [ "flags", "group___u_c_p___c_o_n_t_e_x_t.html#a55a8ff2559470c5def6077a86ee9d898", null ], + [ "request", "group___u_c_p___c_o_n_t_e_x_t.html#a746646123a460ed9a115c3fe21f194b0", null ], + [ "cb", "group___u_c_p___c_o_n_t_e_x_t.html#a43bb8fd4782ff74f3d93d4356ce0242d", null ], + [ "datatype", "group___u_c_p___c_o_n_t_e_x_t.html#a3988d603154f90eb5405785cac62b65f", null ], + [ "user_data", "group___u_c_p___c_o_n_t_e_x_t.html#aa9092d65a2e4e55368ca4f88775c190b", null ], + [ "reply_buffer", "group___u_c_p___c_o_n_t_e_x_t.html#ad41bfb73053537d40830d52b3f380f02", null ], + [ "memory_type", "group___u_c_p___c_o_n_t_e_x_t.html#a52b53447384778b16b3b91d6abeb0f86", null ], + [ "recv_info", "group___u_c_p___c_o_n_t_e_x_t.html#a49d828d5802110c4f268762ec4dd9ca4", null ], + [ "memh", "group___u_c_p___c_o_n_t_e_x_t.html#a815bd876629909195b15c6b246de2900", null ] + ] ], + [ "ucp_request_param_t.cb", "group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8cb", [ + [ "send", "group___u_c_p___c_o_n_t_e_x_t.html#a2541d938b0a58946090d7abdde0d3890", null ], + [ "recv", "group___u_c_p___c_o_n_t_e_x_t.html#af701fee85540b78d08cb276d14953d58", null ], + [ "recv_stream", "group___u_c_p___c_o_n_t_e_x_t.html#aedcd1a9fffc78ccbba676b725aedd2e7", null ], + [ "recv_am", "group___u_c_p___c_o_n_t_e_x_t.html#a0b3ecefca237481439444fca3748275b", null ] + ] ], + [ "ucp_request_param_t.recv_info", "group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8recv__info", [ + [ "length", "group___u_c_p___c_o_n_t_e_x_t.html#a2fa47f7c65fec19cc163b195725e3844", null ], + [ "tag_info", "group___u_c_p___c_o_n_t_e_x_t.html#afd2efab53a12a2742d277a8bcab056a6", null ] + ] ], + [ "UCP_ENTITY_NAME_MAX", "group___u_c_p___c_o_n_t_e_x_t.html#gacbb936da337ac69d01a51e74d2476981", null ], + [ "ucp_lib_attr_t", "group___u_c_p___c_o_n_t_e_x_t.html#ga72416704b0138f372f7449f1bf0c0423", null ], + [ "ucp_context_attr_t", "group___u_c_p___c_o_n_t_e_x_t.html#ga5263d559d602c5e3eae0ee5488c6b831", null ], + [ "ucp_tag_recv_info_t", "group___u_c_p___c_o_n_t_e_x_t.html#ga118ca6feabfc3b35c7b37002c40ca7e2", null ], + [ "ucp_context_h", "group___u_c_p___c_o_n_t_e_x_t.html#ga0e40ddc46f0bbe868a13f6ab1b674f76", null ], + [ "ucp_request_init_callback_t", "group___u_c_p___c_o_n_t_e_x_t.html#ga0cc0c63694e7e9ee370bbee017aee7fb", null ], + [ "ucp_request_cleanup_callback_t", "group___u_c_p___c_o_n_t_e_x_t.html#gaa0db30ca2911587c444d63b6a54b3625", null ], + [ "ucp_params_field", "group___u_c_p___c_o_n_t_e_x_t.html#gab43f613a2365147415abf66f571cfa71", [ + [ "UCP_PARAM_FIELD_FEATURES", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a454f1e90a324095192d87d97b8a4321f", null ], + [ "UCP_PARAM_FIELD_REQUEST_SIZE", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a8385ca52048353e69b90fb7c6b0799ee", null ], + [ "UCP_PARAM_FIELD_REQUEST_INIT", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71ac95d94f94370df6cd79db8e830505738", null ], + [ "UCP_PARAM_FIELD_REQUEST_CLEANUP", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a9e2c9cebfbf51d47df31ffd019eb01c6", null ], + [ "UCP_PARAM_FIELD_TAG_SENDER_MASK", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a030b9866b2b6167cbdcfe9ce321d1f28", null ], + [ "UCP_PARAM_FIELD_MT_WORKERS_SHARED", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71aa8d5e573f9d52358f50ae2725a08e10e", null ], + [ "UCP_PARAM_FIELD_ESTIMATED_NUM_EPS", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a834c5a969e0d41a90d54a6955b7414eb", null ], + [ "UCP_PARAM_FIELD_ESTIMATED_NUM_PPN", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a22fcdc29e68f36d97a0f389712529976", null ], + [ "UCP_PARAM_FIELD_NAME", "group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a9bf23645413cc4f5e753cf99b4379eb6", null ] + ] ], + [ "ucp_feature", "group___u_c_p___c_o_n_t_e_x_t.html#gaca5990bc015e7e9ac3e3be4e3611c5be", [ + [ "UCP_FEATURE_TAG", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea244187ad85296b3784d302db00f66b9e", null ], + [ "UCP_FEATURE_RMA", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beaf374a837508d798fb36abd22a7a0a033", null ], + [ "UCP_FEATURE_AMO32", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beab127e1eabe5779ad82bc1ad4c5b47007", null ], + [ "UCP_FEATURE_AMO64", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beada4b36191b39ef8615f657d370baead1", null ], + [ "UCP_FEATURE_WAKEUP", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beabc3fea5aff6b7453e24235bceb102b5a", null ], + [ "UCP_FEATURE_STREAM", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea0c3896ead0887f9c650b221831e16b5c", null ], + [ "UCP_FEATURE_AM", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea685931b9f438fa9a2faaf9eccf47b097", null ], + [ "UCP_FEATURE_EXPORTED_MEMH", "group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beafb42f40309d4d14d32b8b7992b48ef68", null ] + ] ], + [ "ucp_lib_attr_field", "group___u_c_p___c_o_n_t_e_x_t.html#ga2791b2b44c55fdb685dcd4dad8c8ae3c", [ + [ "UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL", "group___u_c_p___c_o_n_t_e_x_t.html#gga2791b2b44c55fdb685dcd4dad8c8ae3ca96a3edd65a30f00765d330342d3c1267", null ] + ] ], + [ "ucp_context_attr_field", "group___u_c_p___c_o_n_t_e_x_t.html#ga446a95e55ba52251d2ca4bf61ff916bf", [ + [ "UCP_ATTR_FIELD_REQUEST_SIZE", "group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa84237b8beaee9aff1013ae6b87721ce2", null ], + [ "UCP_ATTR_FIELD_THREAD_MODE", "group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfab5f79c9d9c309562d4e7edb60e5855d6", null ], + [ "UCP_ATTR_FIELD_MEMORY_TYPES", "group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa13fe8e11d8c372a446e00cf559c78b88", null ], + [ "UCP_ATTR_FIELD_NAME", "group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa35fd67165561f70728f6ec1c8e53ff80", null ] + ] ], + [ "ucp_lib_query", "group___u_c_p___c_o_n_t_e_x_t.html#ga4f8c11637791304bd7fcc9aceafbb1dd", null ], + [ "ucp_get_version", "group___u_c_p___c_o_n_t_e_x_t.html#gae57b8eee6087f5e1d056d8075751042e", null ], + [ "ucp_get_version_string", "group___u_c_p___c_o_n_t_e_x_t.html#gad53f3f2fe0e47cf54ac4f41b2687850b", null ], + [ "ucp_init", "group___u_c_p___c_o_n_t_e_x_t.html#ga3ad3662ebafac88ec666be4caeb76cb2", null ], + [ "ucp_cleanup", "group___u_c_p___c_o_n_t_e_x_t.html#gaaa7a90069ad6e0f3e227402db265299e", null ], + [ "ucp_context_query", "group___u_c_p___c_o_n_t_e_x_t.html#ga3485fb61663f4cc6f32e801654aedcff", null ], + [ "ucp_context_print_info", "group___u_c_p___c_o_n_t_e_x_t.html#ga91684cf77b8dc8cbb62af0c3741b36ea", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__context__attr.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__context__attr.js new file mode 100644 index 00000000000..c58071ad303 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__context__attr.js @@ -0,0 +1,8 @@ +var group___u_c_p___c_o_n_t_e_x_t_structucp__context__attr = +[ + [ "field_mask", "group___u_c_p___c_o_n_t_e_x_t.html#ae4603d33274d3dd0bf41e1d759513601", null ], + [ "request_size", "group___u_c_p___c_o_n_t_e_x_t.html#a9b2ad3af27e1e94d4189ecc6fb1512ef", null ], + [ "thread_mode", "group___u_c_p___c_o_n_t_e_x_t.html#a4bc884428c16540d5d1b1f56881eb80b", null ], + [ "memory_types", "group___u_c_p___c_o_n_t_e_x_t.html#a59917e3a7e709c62e77d0acabbb0a24d", null ], + [ "name", "group___u_c_p___c_o_n_t_e_x_t.html#a958c850cc721fdadeae598928bbc8270", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__lib__attr.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__lib__attr.js new file mode 100644 index 00000000000..a1f2d6fbec8 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__lib__attr.js @@ -0,0 +1,5 @@ +var group___u_c_p___c_o_n_t_e_x_t_structucp__lib__attr = +[ + [ "field_mask", "group___u_c_p___c_o_n_t_e_x_t.html#a529751be1cb45aff76dde0e5bf22b6d9", null ], + [ "max_thread_level", "group___u_c_p___c_o_n_t_e_x_t.html#a3cfd1d293ca29602ae799f7c52607c86", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__request__param__t.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__request__param__t.js new file mode 100644 index 00000000000..19fcd94bfea --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__request__param__t.js @@ -0,0 +1,13 @@ +var group___u_c_p___c_o_n_t_e_x_t_structucp__request__param__t = +[ + [ "op_attr_mask", "group___u_c_p___c_o_n_t_e_x_t.html#a97e9444548efb351db6a07130fb69c28", null ], + [ "flags", "group___u_c_p___c_o_n_t_e_x_t.html#a55a8ff2559470c5def6077a86ee9d898", null ], + [ "request", "group___u_c_p___c_o_n_t_e_x_t.html#a746646123a460ed9a115c3fe21f194b0", null ], + [ "cb", "group___u_c_p___c_o_n_t_e_x_t.html#a43bb8fd4782ff74f3d93d4356ce0242d", null ], + [ "datatype", "group___u_c_p___c_o_n_t_e_x_t.html#a3988d603154f90eb5405785cac62b65f", null ], + [ "user_data", "group___u_c_p___c_o_n_t_e_x_t.html#aa9092d65a2e4e55368ca4f88775c190b", null ], + [ "reply_buffer", "group___u_c_p___c_o_n_t_e_x_t.html#ad41bfb73053537d40830d52b3f380f02", null ], + [ "memory_type", "group___u_c_p___c_o_n_t_e_x_t.html#a52b53447384778b16b3b91d6abeb0f86", null ], + [ "recv_info", "group___u_c_p___c_o_n_t_e_x_t.html#a49d828d5802110c4f268762ec4dd9ca4", null ], + [ "memh", "group___u_c_p___c_o_n_t_e_x_t.html#a815bd876629909195b15c6b246de2900", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__tag__recv__info.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__tag__recv__info.js new file mode 100644 index 00000000000..60360c16c89 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_structucp__tag__recv__info.js @@ -0,0 +1,5 @@ +var group___u_c_p___c_o_n_t_e_x_t_structucp__tag__recv__info = +[ + [ "sender_tag", "group___u_c_p___c_o_n_t_e_x_t.html#a19ac36808d83d348b23cd34fe997a7c9", null ], + [ "length", "group___u_c_p___c_o_n_t_e_x_t.html#a6fd83122b93c677e702dc37b39e8351b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8cb.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8cb.js new file mode 100644 index 00000000000..d8d78af6e66 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8cb.js @@ -0,0 +1,7 @@ +var group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8cb = +[ + [ "send", "group___u_c_p___c_o_n_t_e_x_t.html#a2541d938b0a58946090d7abdde0d3890", null ], + [ "recv", "group___u_c_p___c_o_n_t_e_x_t.html#af701fee85540b78d08cb276d14953d58", null ], + [ "recv_stream", "group___u_c_p___c_o_n_t_e_x_t.html#aedcd1a9fffc78ccbba676b725aedd2e7", null ], + [ "recv_am", "group___u_c_p___c_o_n_t_e_x_t.html#a0b3ecefca237481439444fca3748275b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8recv__info.js b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8recv__info.js new file mode 100644 index 00000000000..c841f762eac --- /dev/null +++ b/api/v1.14/html/group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8recv__info.js @@ -0,0 +1,5 @@ +var group___u_c_p___c_o_n_t_e_x_t_unionucp__request__param__t_8recv__info = +[ + [ "length", "group___u_c_p___c_o_n_t_e_x_t.html#a2fa47f7c65fec19cc163b195725e3844", null ], + [ "tag_info", "group___u_c_p___c_o_n_t_e_x_t.html#afd2efab53a12a2742d277a8bcab056a6", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e.html b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e.html new file mode 100644 index 00000000000..e0f1f7c0b11 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e.html @@ -0,0 +1,674 @@ + + + + + + +UCX: UCP Data type routines + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + +

+Data Structures

struct  ucp_dt_iov
 Structure for scatter-gather I/O. More...
 
struct  ucp_generic_dt_ops
 UCP generic data type descriptor. More...
 
struct  ucp_datatype_attr
 UCP datatype attributes. More...
 
+ + + + + + + +

+Macros

#define ucp_dt_make_contig(_elem_size)   (((ucp_datatype_t)(_elem_size) << UCP_DATATYPE_SHIFT) | UCP_DATATYPE_CONTIG)
 Generate an identifier for contiguous data type. More...
 
#define ucp_dt_make_iov()   ((ucp_datatype_t)UCP_DATATYPE_IOV)
 Generate an identifier for Scatter-gather IOV data type. More...
 
+ + + + + + + + + + +

+Typedefs

typedef struct ucp_dt_iov ucp_dt_iov_t
 Structure for scatter-gather I/O. More...
 
typedef struct ucp_generic_dt_ops ucp_generic_dt_ops_t
 UCP generic data type descriptor. More...
 
typedef struct ucp_datatype_attr ucp_datatype_attr_t
 UCP datatype attributes. More...
 
+ + + + + + + +

+Enumerations

enum  ucp_dt_type {
+  UCP_DATATYPE_CONTIG = 0, +UCP_DATATYPE_STRIDED = 1, +UCP_DATATYPE_IOV = 2, +UCP_DATATYPE_GENERIC = 7, +
+  UCP_DATATYPE_SHIFT = 3, +UCP_DATATYPE_CLASS_MASK = UCS_MASK(UCP_DATATYPE_SHIFT) +
+ }
 UCP data type classification. More...
 
enum  ucp_datatype_attr_field { UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE = UCS_BIT(0), +UCP_DATATYPE_ATTR_FIELD_BUFFER = UCS_BIT(1), +UCP_DATATYPE_ATTR_FIELD_COUNT = UCS_BIT(2) + }
 UCP datatype attributes field mask. More...
 
+ + + + + + + + + + +

+Functions

ucs_status_t ucp_dt_create_generic (const ucp_generic_dt_ops_t *ops, void *context, ucp_datatype_t *datatype_p)
 Create a generic datatype. More...
 
void ucp_dt_destroy (ucp_datatype_t datatype)
 Destroy a datatype and release its resources. More...
 
ucs_status_t ucp_dt_query (ucp_datatype_t datatype, ucp_datatype_attr_t *attr)
 Query attributes of a datatype. More...
 
+ + + + + + + + + + + + + + + + + + + +

+Variables

void *(* ucp_generic_dt_ops::start_pack )(void *context, const void *buffer, size_t count)
 Start a packing request. More...
 
void *(* ucp_generic_dt_ops::start_unpack )(void *context, void *buffer, size_t count)
 Start an unpacking request. More...
 
size_t(* ucp_generic_dt_ops::packed_size )(void *state)
 Get the total size of packed data. More...
 
size_t(* ucp_generic_dt_ops::pack )(void *state, size_t offset, void *dest, size_t max_length)
 Pack data. More...
 
ucs_status_t(* ucp_generic_dt_ops::unpack )(void *state, size_t offset, const void *src, size_t length)
 Unpack data. More...
 
void(* ucp_generic_dt_ops::finish )(void *state)
 Finish packing/unpacking. More...
 
+

Detailed Description

+

UCP Data type routines

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_dt_iov
+
+

This structure is used to specify a list of buffers which can be used within a single data transfer function call. This list should remain valid until the data transfer request is completed.

+
Note
If length is zero, the memory pointed to by buffer will not be accessed. Otherwise, buffer must point to valid memory.
+
Examples:
ucp_client_server.c.
+
+ + + + + + + +
Data Fields
+void * +buffer +

Pointer to a data buffer

+
+size_t +length +

Length of the buffer in bytes

+
+ +
+
+ +
+
+ + + + +
struct ucp_datatype_attr
+
+

This structure provides attributes of a UCP datatype.

+
+ + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_datatype_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+size_t +packed_size +

Packed size of the given datatype. (output parameter)

+
+const void * +buffer +

Pointer to a data buffer of the associated data type. This field is optional. If UCP_DATATYPE_ATTR_FIELD_BUFFER is not set in field_mask, this field defaults to NULL.

+
+size_t +count +

Number of elements in buffer. This value is optional. If UCP_DATATYPE_ATTR_FIELD_COUNT is not set in field_mask, the value of this field defaults to 1.

+
+ +
+
+

Macro Definition Documentation

+ +
+
+ + + + + + + + +
#define ucp_dt_make_contig( _elem_size)   (((ucp_datatype_t)(_elem_size) << UCP_DATATYPE_SHIFT) | UCP_DATATYPE_CONTIG)
+
+

This macro creates an identifier for contiguous datatype that is defined by the size of the basic element.

+
Parameters
+ + +
[in]_elem_sizeSize of the basic element of the type.
+
+
+
Returns
Data-type identifier.
+
Note
In case of partial receive, the buffer will be filled with integral count of elements.
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + +
#define ucp_dt_make_iov()   ((ucp_datatype_t)UCP_DATATYPE_IOV)
+
+

This macro creates an identifier for datatype of scatter-gather list with multiple pointers

+
Returns
Data-type identifier.
+
Note
In the event of partial receive, ucp_dt_iov_t::buffer can be filled with any number of bytes according to its ucp_dt_iov_t::length.
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ucp_dt_iov ucp_dt_iov_t
+
+

This structure is used to specify a list of buffers which can be used within a single data transfer function call. This list should remain valid until the data transfer request is completed.

+
Note
If length is zero, the memory pointed to by buffer will not be accessed. Otherwise, buffer must point to valid memory.
+ +
+
+ +
+
+ + + + +
typedef struct ucp_generic_dt_ops ucp_generic_dt_ops_t
+
+

This structure provides a generic datatype descriptor that is used for definition of application defined datatypes.

+

Typically, the descriptor is used for an integration with datatype engines implemented within MPI and SHMEM implementations.

+
Note
In case of partial receive, any amount of received data is acceptable which matches buffer size.
+ +
+
+ +
+
+ + + + +
typedef struct ucp_datatype_attr ucp_datatype_attr_t
+
+

This structure provides attributes of a UCP datatype.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucp_dt_type
+
+

The enumeration list describes the datatypes supported by UCP.

+ + + + + + + +
Enumerator
UCP_DATATYPE_CONTIG  +

Contiguous datatype

+
UCP_DATATYPE_STRIDED  +

Strided datatype

+
UCP_DATATYPE_IOV  +

Scatter-gather list with multiple pointers

+
UCP_DATATYPE_GENERIC  +

Generic datatype with user-defined pack/unpack routines

+
UCP_DATATYPE_SHIFT  +

Number of bits defining the datatype classification

+
UCP_DATATYPE_CLASS_MASK  +

Data-type class mask

+
+ +
+
+ +
+
+ + + + +
enum ucp_datatype_attr_field
+
+

The enumeration allows specifying which fields in ucp_datatype_attr_t are present and which datatype attributes are queried.

+ + + + +
Enumerator
UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE  +

ucp_datatype_attr_t::packed_size field is queried.

+
UCP_DATATYPE_ATTR_FIELD_BUFFER  +

ucp_datatype_attr_t::buffer field is set.

+
UCP_DATATYPE_ATTR_FIELD_COUNT  +

ucp_datatype_attr_t::count field is set.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_dt_create_generic (const ucp_generic_dt_ops_tops,
void * context,
ucp_datatype_tdatatype_p 
)
+
+

This routine create a generic datatype object. The generic datatype is described by the ops object which provides a table of routines defining the operations for generic datatype manipulation. Typically, generic datatypes are used for integration with datatype engines provided with MPI implementations (MPICH, Open MPI, etc). The application is responsible for releasing the datatype_p object using ucp_dt_destroy() routine.

+
Parameters
+ + + + +
[in]opsGeneric datatype function table as defined by ucp_generic_dt_ops_t .
[in]contextApplication defined context passed to this routine. The context is passed as a parameter to the routines in the ops table.
[out]datatype_pA pointer to datatype object.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + +
void ucp_dt_destroy (ucp_datatype_t datatype)
+
+

This routine destroys the datatype object and releases any resources that are associated with the object. The datatype object must be allocated using ucp_dt_create_generic() routine.

+
Warning
    +
  • Once the datatype object is released an access to this object may cause an undefined failure.
  • +
+
+
Parameters
+ + +
[in]datatypeDatatype object to destroy.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_dt_query (ucp_datatype_t datatype,
ucp_datatype_attr_tattr 
)
+
+

This routine fetches information about the attributes of a datatype. When UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE is set in field_mask of attr, the field packed_size is set to the packed size (bytes) of the datatype.

+
Parameters
+ + + +
[in]datatypeDatatype object to query.
[in,out]attrFilled with attributes of the datatype.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+

Variable Documentation

+ +
+
+ + + + +
void*(* ucp_generic_dt_ops::start_pack) (void *context, const void *buffer, size_t count)
+
+

The pointer refers to application defined start-to-pack routine. It will be called from the ucp_tag_send_nb routine.

+
Parameters
+ + + + +
[in]contextUser-defined context.
[in]bufferBuffer to pack.
[in]countNumber of elements to pack into the buffer.
+
+
+
Returns
A custom state that is passed to the following pack() routine.
+ +
+
+ +
+
+ + + + +
void*(* ucp_generic_dt_ops::start_unpack) (void *context, void *buffer, size_t count)
+
+

The pointer refers to application defined start-to-unpack routine. It will be called from the ucp_tag_recv_nb routine.

+
Parameters
+ + + + +
[in]contextUser-defined context.
[in]bufferBuffer to unpack to.
[in]countNumber of elements to unpack in the buffer.
+
+
+
Returns
A custom state that is passed later to the following unpack() routine.
+ +
+
+ +
+
+ + + + +
size_t(* ucp_generic_dt_ops::packed_size) (void *state)
+
+

The pointer refers to user defined routine that returns the size of data in a packed format.

+
Parameters
+ + +
[in]stateState as returned by start_pack() routine.
+
+
+
Returns
The size of the data in a packed form.
+ +
+
+ +
+
+ + + + +
size_t(* ucp_generic_dt_ops::pack) (void *state, size_t offset, void *dest, size_t max_length)
+
+

The pointer refers to application defined pack routine.

+
Parameters
+ + + + + +
[in]stateState as returned by start_pack() routine.
[in]offsetVirtual offset in the output stream.
[in]destDestination buffer to pack the data.
[in]max_lengthMaximum length to pack.
+
+
+
Returns
The size of the data that was written to the destination buffer. Must be less than or equal to max_length.
+ +
+
+ +
+
+ + + + +
ucs_status_t(* ucp_generic_dt_ops::unpack) (void *state, size_t offset, const void *src, size_t length)
+
+

The pointer refers to application defined unpack routine.

+
Parameters
+ + + + + +
[in]stateState as returned by start_unpack() routine.
[in]offsetVirtual offset in the input stream.
[in]srcSource to unpack the data from.
[in]lengthLength to unpack.
+
+
+
Returns
UCS_OK or an error if unpacking failed.
+ +
+
+ +
+
+ + + + +
void(* ucp_generic_dt_ops::finish) (void *state)
+
+

The pointer refers to application defined finish routine.

+
Parameters
+ + +
[in]stateState as returned by start_pack() and start_unpack() routines.
+
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e.js b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e.js new file mode 100644 index 00000000000..dddb3431109 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e.js @@ -0,0 +1,48 @@ +var group___u_c_p___d_a_t_a_t_y_p_e = +[ + [ "ucp_dt_iov", "group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__dt__iov", [ + [ "buffer", "group___u_c_p___d_a_t_a_t_y_p_e.html#a6cf4c47c33d61c097226b570a470f10c", null ], + [ "length", "group___u_c_p___d_a_t_a_t_y_p_e.html#a776d38e0b127efb673685644b6816663", null ] + ] ], + [ "ucp_generic_dt_ops", "structucp__generic__dt__ops.html", [ + [ "start_pack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaf59e41a131f620d3b71f3aa7b9bb4801", null ], + [ "start_unpack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaec412b924f1cf491fbc570927f77c7e6", null ], + [ "packed_size", "group___u_c_p___d_a_t_a_t_y_p_e.html#gafa434c93350838be8da6480b2a68f83b", null ], + [ "pack", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga347b6c1b7243047f3e069a70626a1e89", null ], + [ "unpack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaef4bcfb34731b7f113479b221304b698", null ], + [ "finish", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga09ee4ed178f4c27feec4e37f52a8e17b", null ] + ] ], + [ "ucp_datatype_attr", "group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__datatype__attr", [ + [ "field_mask", "group___u_c_p___d_a_t_a_t_y_p_e.html#a416b16fac9ac4cc99a06833eb6dbdfa9", null ], + [ "packed_size", "group___u_c_p___d_a_t_a_t_y_p_e.html#a2e3822b2beb1cd2df7b0423a5a9c3a9c", null ], + [ "buffer", "group___u_c_p___d_a_t_a_t_y_p_e.html#a20f316c0e0e6c5de2e0e1851b9e22c32", null ], + [ "count", "group___u_c_p___d_a_t_a_t_y_p_e.html#a03dd4423d8570e5b33af6a2f2a4c164e", null ] + ] ], + [ "ucp_dt_make_contig", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga9a56fc4636094bab740d77f7df70c2b5", null ], + [ "ucp_dt_make_iov", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga8ff6e9f933b306e777d24491ec251d7a", null ], + [ "ucp_dt_iov_t", "group___u_c_p___d_a_t_a_t_y_p_e.html#gac97bcd5bd29b8a55d79c51678ed4db88", null ], + [ "ucp_generic_dt_ops_t", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaafb26eb4ebfdaa882e13e31da228f418", null ], + [ "ucp_datatype_attr_t", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga673ea56808f7e33828ffb9a7919a8cec", null ], + [ "ucp_dt_type", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga50b3b4e641a197264e963d91be480b6c", [ + [ "UCP_DATATYPE_CONTIG", "group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca42f91fe8586a858f8e6cf9b2b0128048", null ], + [ "UCP_DATATYPE_STRIDED", "group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6caa6bc9a1df8eb865e71f2b90d3e4d97ad", null ], + [ "UCP_DATATYPE_IOV", "group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca3b5515fddd08f075a8b74eca562bcb50", null ], + [ "UCP_DATATYPE_GENERIC", "group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6caeb9bca341a1f16a56bff64f9889a4567", null ], + [ "UCP_DATATYPE_SHIFT", "group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca5c657c620df6580669917914217b2cda", null ], + [ "UCP_DATATYPE_CLASS_MASK", "group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca63ddce22a2292935f40122def246ffa8", null ] + ] ], + [ "ucp_datatype_attr_field", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaca9402381313d69cee7d0c90c634a18e", [ + [ "UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE", "group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea488b99fc01c366b5bb2b14360908a9f5", null ], + [ "UCP_DATATYPE_ATTR_FIELD_BUFFER", "group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea19731103ccab2b0c1f0a93a38177b7b2", null ], + [ "UCP_DATATYPE_ATTR_FIELD_COUNT", "group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea510ae956055e56169315fef18082cf3c", null ] + ] ], + [ "ucp_dt_create_generic", "group___u_c_p___d_a_t_a_t_y_p_e.html#gad786aa1a5250b22d4c35d82801aef254", null ], + [ "ucp_dt_destroy", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga00337159ebd75640d55be501b7fcc5e7", null ], + [ "ucp_dt_query", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga23b6c6fbfbee7669ec2abb3ee572ac0e", null ], + [ "start_pack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaf59e41a131f620d3b71f3aa7b9bb4801", null ], + [ "start_unpack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaec412b924f1cf491fbc570927f77c7e6", null ], + [ "packed_size", "group___u_c_p___d_a_t_a_t_y_p_e.html#gafa434c93350838be8da6480b2a68f83b", null ], + [ "pack", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga347b6c1b7243047f3e069a70626a1e89", null ], + [ "unpack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaef4bcfb34731b7f113479b221304b698", null ], + [ "finish", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga09ee4ed178f4c27feec4e37f52a8e17b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e_structucp__datatype__attr.js b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e_structucp__datatype__attr.js new file mode 100644 index 00000000000..30485f75bfa --- /dev/null +++ b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e_structucp__datatype__attr.js @@ -0,0 +1,7 @@ +var group___u_c_p___d_a_t_a_t_y_p_e_structucp__datatype__attr = +[ + [ "field_mask", "group___u_c_p___d_a_t_a_t_y_p_e.html#a416b16fac9ac4cc99a06833eb6dbdfa9", null ], + [ "packed_size", "group___u_c_p___d_a_t_a_t_y_p_e.html#a2e3822b2beb1cd2df7b0423a5a9c3a9c", null ], + [ "buffer", "group___u_c_p___d_a_t_a_t_y_p_e.html#a20f316c0e0e6c5de2e0e1851b9e22c32", null ], + [ "count", "group___u_c_p___d_a_t_a_t_y_p_e.html#a03dd4423d8570e5b33af6a2f2a4c164e", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e_structucp__dt__iov.js b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e_structucp__dt__iov.js new file mode 100644 index 00000000000..0192494bc06 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___d_a_t_a_t_y_p_e_structucp__dt__iov.js @@ -0,0 +1,5 @@ +var group___u_c_p___d_a_t_a_t_y_p_e_structucp__dt__iov = +[ + [ "buffer", "group___u_c_p___d_a_t_a_t_y_p_e.html#a6cf4c47c33d61c097226b570a470f10c", null ], + [ "length", "group___u_c_p___d_a_t_a_t_y_p_e.html#a776d38e0b127efb673685644b6816663", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t.html b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t.html new file mode 100644 index 00000000000..92e0448114b --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t.html @@ -0,0 +1,1416 @@ + + + + + + +UCX: UCP Endpoint + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  ucp_ep_evaluate_perf_param_t
 UCP endpoint performance evaluation request attributes. More...
 
struct  ucp_ep_evaluate_perf_attr_t
 UCP endpoint performance evaluation result attributes. More...
 
struct  ucp_stream_poll_ep
 Output parameter of ucp_stream_worker_poll function. More...
 
struct  ucp_ep_attr
 UCP endpoint attributes. More...
 
struct  ucp_ep_params
 Tuning parameters for the UCP endpoint. More...
 
struct  ucp_transport_entry_t
 The ucp_transports_t and ucp_transport_entry_t structures are used when ucp_ep_query is called to return an array of transport name and device name pairs that are used by an active endpoint. More...
 
struct  ucp_transports_t
 Structure containing an array of transport layers and device names used by an endpoint. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef enum ucp_ep_perf_param_field ucp_ep_perf_param_field_t
 UCP performance fields and flags. More...
 
typedef enum ucp_ep_perf_attr_field ucp_ep_perf_attr_field_t
 UCP performance fields and flags. More...
 
typedef struct ucp_stream_poll_ep ucp_stream_poll_ep_t
 Output parameter of ucp_stream_worker_poll function. More...
 
typedef struct ucp_ep_attr ucp_ep_attr_t
 UCP endpoint attributes. More...
 
typedef struct ucp_ep * ucp_ep_h
 UCP Endpoint. More...
 
typedef struct ucp_conn_request * ucp_conn_request_h
 UCP connection request. More...
 
typedef ucs_status_t(* ucp_am_callback_t) (void *arg, void *data, size_t length, ucp_ep_h reply_ep, unsigned flags)
 Callback to process incoming Active Message. More...
 
typedef ucs_status_t(* ucp_am_recv_callback_t) (void *arg, const void *header, size_t header_length, void *data, size_t length, const ucp_am_recv_param_t *param)
 Callback to process incoming Active Message sent by ucp_am_send_nbx routine. More...
 
typedef struct ucp_ep_params ucp_ep_params_t
 Tuning parameters for the UCP endpoint. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  ucp_ep_params_field {
+  UCP_EP_PARAM_FIELD_REMOTE_ADDRESS = UCS_BIT(0), +UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE = UCS_BIT(1), +UCP_EP_PARAM_FIELD_ERR_HANDLER = UCS_BIT(2), +UCP_EP_PARAM_FIELD_USER_DATA = UCS_BIT(3), +
+  UCP_EP_PARAM_FIELD_SOCK_ADDR = UCS_BIT(4), +UCP_EP_PARAM_FIELD_FLAGS = UCS_BIT(5), +UCP_EP_PARAM_FIELD_CONN_REQUEST = UCS_BIT(6), +UCP_EP_PARAM_FIELD_NAME = UCS_BIT(7), +
+  UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR = UCS_BIT(8) +
+ }
 UCP endpoint parameters field mask. More...
 
enum  ucp_ep_params_flags_field { UCP_EP_PARAMS_FLAGS_CLIENT_SERVER = UCS_BIT(0), +UCP_EP_PARAMS_FLAGS_NO_LOOPBACK = UCS_BIT(1), +UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID = UCS_BIT(2) + }
 UCP endpoint parameters flags. More...
 
enum  ucp_ep_close_flags_t { UCP_EP_CLOSE_FLAG_FORCE = UCS_BIT(0) + }
 Close UCP endpoint modes. More...
 
enum  ucp_ep_close_mode { UCP_EP_CLOSE_MODE_FORCE = 0, +UCP_EP_CLOSE_MODE_FLUSH = 1 + }
 Close UCP endpoint modes. More...
 
enum  ucp_ep_perf_param_field { UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE = UCS_BIT(0) + }
 UCP performance fields and flags. More...
 
enum  ucp_ep_perf_attr_field { UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME = UCS_BIT(0) + }
 UCP performance fields and flags. More...
 
enum  ucp_cb_param_flags { UCP_CB_PARAM_FLAG_DATA = UCS_BIT(0) + }
 Descriptor flags for Active Message callback. More...
 
enum  ucp_ep_attr_field { UCP_EP_ATTR_FIELD_NAME = UCS_BIT(0), +UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR = UCS_BIT(1), +UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR = UCS_BIT(2), +UCP_EP_ATTR_FIELD_TRANSPORTS = UCS_BIT(3) + }
 UCP endpoint attributes field mask. More...
 
enum  ucp_err_handling_mode_t { UCP_ERR_HANDLING_MODE_NONE, +UCP_ERR_HANDLING_MODE_PEER + }
 Error handling mode for the UCP endpoint. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_ep_create (ucp_worker_h worker, const ucp_ep_params_t *params, ucp_ep_h *ep_p)
 Create and connect an endpoint. More...
 
ucs_status_ptr_t ucp_ep_close_nbx (ucp_ep_h ep, const ucp_request_param_t *param)
 Non-blocking endpoint closure. More...
 
void ucp_ep_print_info (ucp_ep_h ep, FILE *stream)
 Print endpoint information. More...
 
ucs_status_ptr_t ucp_ep_flush_nbx (ucp_ep_h ep, const ucp_request_param_t *param)
 Non-blocking flush of outstanding AMO and RMA operations on the endpoint. More...
 
ucs_status_t ucp_ep_evaluate_perf (ucp_ep_h ep, const ucp_ep_evaluate_perf_param_t *param, ucp_ep_evaluate_perf_attr_t *attr)
 Estimate performance characteristics of a specific endpoint. More...
 
ucs_status_t ucp_ep_query (ucp_ep_h ep, ucp_ep_attr_t *attr)
 Get attributes of a given endpoint. More...
 
void ucp_request_release (void *request)
 
void ucp_ep_destroy (ucp_ep_h ep)
 
ucs_status_ptr_t ucp_disconnect_nb (ucp_ep_h ep)
 
ucs_status_t ucp_request_test (void *request, ucp_tag_recv_info_t *info)
 
ucs_status_t ucp_ep_flush (ucp_ep_h ep)
 
ucs_status_ptr_t ucp_ep_modify_nb (ucp_ep_h ep, const ucp_ep_params_t *params)
 Modify endpoint parameters. More...
 
ucs_status_ptr_t ucp_ep_close_nb (ucp_ep_h ep, unsigned mode)
 Non-blocking endpoint closure. More...
 
ucs_status_ptr_t ucp_ep_flush_nb (ucp_ep_h ep, unsigned flags, ucp_send_callback_t cb)
 Non-blocking flush of outstanding AMO and RMA operations on the endpoint. More...
 
+

Detailed Description

+

UCP Endpoint routines

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_ep_evaluate_perf_param_t
+
+

The structure defines the attributes which characterize the request for performance estimation of a particular endpoint.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_ep_perf_param_field_t. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+size_t +message_size +

Message size to use for determining performance. This field must be initialized by the caller.

+
+ +
+
+ +
+
+ + + + +
struct ucp_ep_evaluate_perf_attr_t
+
+

The structure defines the attributes which characterize the result of performance estimation of a particular endpoint.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_ep_perf_attr_field_t. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+double +estimated_time +

Estimated time (in seconds) required to send a message of a given size on this endpoint. This field is set by the ucp_ep_evaluate_perf function.

+
+ +
+
+ +
+
+ + + + +
struct ucp_stream_poll_ep
+
+

The structure defines the endpoint and its user data.

+
+ + + + + + + + + + + + + +
Data Fields
+ucp_ep_h +ep +

Endpoint handle.

+
+void * +user_data +

User data associated with an endpoint passed in ucp_ep_params_t::user_data.

+
+unsigned +flags +

Reserved for future use.

+
+uint8_t +reserved[16] +

Reserved for future use.

+
+ +
+
+ +
+
+ + + + +
struct ucp_ep_attr
+
+

The structure defines the attributes that characterize the particular endpoint.

+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_ep_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+char +name[UCP_ENTITY_NAME_MAX] +

Endpoint name. Tracing and analysis tools can identify the endpoint using this name.

+
+struct sockaddr_storage +local_sockaddr +

Local socket address for this endpoint. Valid only for endpoints created by connecting to a socket address. If this field is specified for an endpoint not connected to a socket address, UCS_ERR_NOT_CONNECTED will be returned.

+
+struct sockaddr_storage +remote_sockaddr +

Remote socket address this endpoint is connected to. Valid only for endpoints created by connecting to a socket address. If this field is specified for an endpoint not connected to a socket address, UCS_ERR_NOT_CONNECTED will be returned.

+
+ucp_transports_t +transports +

Structure defining an array containing transport and device names used by this endpoint. The caller is responsible for allocation and deallocation of this array.

+
+ +
+
+ +
+
+ + + + +
struct ucp_ep_params
+
+

The structure defines the parameters that are used for the UCP endpoint tuning during the UCP ep creation.

+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_ep_params_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+const ucp_address_t * +address +

Destination address; this field should be set along with its corresponding bit in the field_mask - UCP_EP_PARAM_FIELD_REMOTE_ADDRESS and must be obtained using ucp_worker_get_address.

+
+ucp_err_handling_mode_t +err_mode +

Desired error handling mode, optional parameter. Default value is UCP_ERR_HANDLING_MODE_NONE.

+
+ucp_err_handler_t +err_handler +

Handler to process transport level failure.

+
+void * +user_data +

User data associated with an endpoint. See ucp_stream_poll_ep_t and ucp_err_handler_t

+
+unsigned +flags +

Endpoint flags from ucp_ep_params_flags_field. This value is optional. If it's not set (along with its corresponding bit in the field_mask - UCP_EP_PARAM_FIELD_FLAGS), the ucp_ep_create() routine will consider the flags as set to zero.

+
+ucs_sock_addr_t +sockaddr +

Destination address in the form of a sockaddr; this field should be set along with its corresponding bit in the field_mask - UCP_EP_PARAM_FIELD_SOCK_ADDR and must be obtained from the user, it means that this type of the endpoint creation is possible only on client side in client-server connection establishment flow.

+
+ucp_conn_request_h +conn_request +

Connection request from client; this field should be set along with its corresponding bit in the field_mask - UCP_EP_PARAM_FIELD_CONN_REQUEST and must be obtained from ucp_listener_conn_callback_t, it means that this type of the endpoint creation is possible only on server side in client-server connection establishment flow.

+
+const char * +name +

Endpoint name. Tracing and analysis tools can identify the endpoint using this name. To retrieve the endpoint's name, use ucp_ep_query, as the name you supply may be changed by UCX under some circumstances, e.g. a name conflict. This field is only assigned if you set UCP_EP_PARAM_FIELD_NAME in the field mask. If not, then a default unique name will be created for you.

+
+ucs_sock_addr_t +local_sockaddr +

The sockaddr to bind locally. Specifies the associated network device to bind locally to establish new connections. To retrieve the endpoint's local_sockaddr, use ucp_ep_query. This setting is optional. To enable it, the corresponding - UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR bit in the field mask must be set.

+
+ +
+
+ +
+
+ + + + +
struct ucp_transport_entry_t
+
+

The ucp_transport_t structure specifies the characteristics of the ucp_transport_entry_t array.

+

The caller is responsible for the allocation and de-allocation of the ucp_transport_entry_t array.

+

Example: Implementation of a function to query the set of transport and device name pairs used by the specified endpoint.

+
int query_transports(ucp_ep_h ep)
{
ucs_status_t status;
ucp_transport_entry_t *transport_entries;
ucp_ep_attr_t ep_attrs;
malloc(10 * sizeof(ucp_transport_entry_t));
ep_attrs.transports.num_entries = 10;
status = ucp_ep_query(ep, &ep_attrs);
if (status == UCS_OK) {
// ep_attrs.transports.num_entries = number of returned entries
// ... process transport info ...
}
}

A transport name and device name pair used by this endpoint. The caller is responsible for the allocation and deallocation of an array of these structures large enough to contain the desired number of transport and device name pairs.

+

Any new fields must be added to the end of this structure.

+
+ + + + + + + +
Data Fields
+const char * +transport_name +

The name of a transport layer used by this endpoint. This '\0'-terminated string is valid until the endpoint is closed using a ucp_ep_close_nbx call.

+
+const char * +device_name +

The name of the device used with this transport by this endpoint. This '\0'-terminated string is valid until the endpoint is closed using a ucp_ep_close_nbx call.

+
+ +
+
+ +
+
+ + + + +
struct ucp_transports_t
+
+

The caller is responsible for allocation and deallocation of this structure.

+
+ + + + + + + + + + +
Data Fields
+ucp_transport_entry_t * +entries +

Pointer to array of transport/device name pairs used by this endpoint. The caller is responsible for the allocation and deallocation of this array.

+
+unsigned +num_entries +

Number of transport/device name pairs. The caller must set this to the maximum number of pairs the structure can contain. On return, this is set to the actual number of transport and device name pairs used by the endpoint.

+
+size_t +entry_size +

Size of a single ucp_transport_entry_t object. The caller sets this to the size of the ucp_transport_entry_t they are using. UCP code must not set any fields in the ucp_transport_entry_t structure beyond this size.

+
+ +
+
+

Typedef Documentation

+ +
+
+

The enumeration allows specifying which fields in ucp_ep_evaluate_perf_param_t are present and operation flags are used. It is used to enable backward compatibility support.

+ +
+
+ +
+
+

The enumeration allows specifying which fields in ucp_ep_evaluate_perf_attr_t are present and operation flags are used. It is used to enable backward compatibility support.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_stream_poll_ep ucp_stream_poll_ep_t
+
+

The structure defines the endpoint and its user data.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_ep_attr ucp_ep_attr_t
+
+

The structure defines the attributes that characterize the particular endpoint.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_ep* ucp_ep_h
+
+

The endpoint handle is an opaque object that is used to address a remote worker. It typically provides a description of source, destination, or both. All UCP communication routines address a destination with the endpoint handle. The endpoint handle is associated with only one UCP context. UCP provides the endpoint create routine to create the endpoint handle and the destroy routine to destroy the endpoint handle.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_conn_request* ucp_conn_request_h
+
+

A server-side handle to incoming connection request. Can be used to create an endpoint which connects back to the client.

+ +
+
+ +
+
+ + + + +
typedef ucs_status_t(* ucp_am_callback_t) (void *arg, void *data, size_t length, ucp_ep_h reply_ep, unsigned flags)
+
+

When the callback is called, flags indicates how data should be handled.

+
Parameters
+ + + + + + +
[in]argUser-defined argument.
[in]dataPoints to the received data. This data may persist after the callback returns and needs to be freed with ucp_am_data_release.
[in]lengthLength of data.
[in]reply_epIf the Active Message is sent with the UCP_AM_SEND_FLAG_REPLY flag, the sending ep will be passed in. If not, NULL will be passed.
[in]flagsIf this flag is set to UCP_CB_PARAM_FLAG_DATA, the callback can return UCS_INPROGRESS and data will persist after the callback returns.
+
+
+
Returns
UCS_OK data will not persist after the callback returns.
+
+UCS_INPROGRESS Can only be returned if flags is set to UCP_CB_PARAM_FLAG_DATA. If UCP_INPROGRESS is returned, data will persist after the callback has returned. To free the memory, a pointer to the data must be passed into ucp_am_data_release.
+
Note
This callback should be set and released by ucp_worker_set_am_handler function.
+ +
+
+ +
+
+ + + + +
typedef ucs_status_t(* ucp_am_recv_callback_t) (void *arg, const void *header, size_t header_length, void *data, size_t length, const ucp_am_recv_param_t *param)
+
+

The callback is always called from the progress context, therefore calling ucp_worker_progress() is not allowed. It is recommended to define callbacks with relatively short execution time to avoid blocking of communication progress.

+
Parameters
+ + + + + + + +
[in]argUser-defined argument.
[in]headerUser defined active message header. If header_length is 0, this value is undefined and must not be accessed.
[in]header_lengthActive message header length in bytes.
[in]dataPoints to the received data if UCP_AM_RECV_ATTR_FLAG_RNDV flag is not set in ucp_am_recv_param_t::recv_attr. Otherwise it points to the internal UCP descriptor which can further be used for initiating data receive by using ucp_am_recv_data_nbx routine.
[in]lengthLength of data. If UCP_AM_RECV_ATTR_FLAG_RNDV flag is set in ucp_am_recv_param_t::recv_attr, it indicates the required receive buffer size for initiating rendezvous protocol.
[in]paramData receive parameters.
+
+
+
Returns
UCS_OK data will not persist after the callback returns. If UCP_AM_RECV_ATTR_FLAG_RNDV flag is set in param->recv_attr and ucp_am_recv_data_nbx was not called for this data, the data descriptor will be dropped and the corresponding ucp_am_send_nbx call will complete with UCS_OK status.
+
+UCS_INPROGRESS Can only be returned if param->recv_attr flags contains UCP_AM_RECV_ATTR_FLAG_DATA or UCP_AM_RECV_ATTR_FLAG_RNDV. The data will persist after the callback has returned. To free the memory, a pointer to the data must be passed into ucp_am_data_release or data receive is initiated by ucp_am_recv_data_nbx.
+
+otherwise Can only be returned if param->recv_attr contains UCP_AM_RECV_ATTR_FLAG_RNDV. In this case data descriptor data will be dropped and the corresponding ucp_am_send_nbx call on the sender side will complete with the status returned from the callback.
+
Note
This callback should be set and released by ucp_worker_set_am_recv_handler function.
+ +
+
+ +
+
+ + + + +
typedef struct ucp_ep_params ucp_ep_params_t
+
+

The structure defines the parameters that are used for the UCP endpoint tuning during the UCP ep creation.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucp_ep_params_field
+
+

The enumeration allows specifying which fields in ucp_ep_params_t are present. It is used to enable backward compatibility support.

+ + + + + + + + + + +
Enumerator
UCP_EP_PARAM_FIELD_REMOTE_ADDRESS  +

Address of remote peer

+
UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE  +

Error handling mode. ucp_err_handling_mode_t

+
UCP_EP_PARAM_FIELD_ERR_HANDLER  +

Handler to process transport level errors

+
UCP_EP_PARAM_FIELD_USER_DATA  +

User data pointer

+
UCP_EP_PARAM_FIELD_SOCK_ADDR  +

Socket address field

+
UCP_EP_PARAM_FIELD_FLAGS  +

Endpoint flags Connection request field

+
UCP_EP_PARAM_FIELD_CONN_REQUEST  +
UCP_EP_PARAM_FIELD_NAME  +

Endpoint name

+
UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR  +

Local socket Address

+
+ +
+
+ +
+
+ + + + +
enum ucp_ep_params_flags_field
+
+

The enumeration list describes the endpoint's parameters flags supported by ucp_ep_create() function.

+ + + + +
Enumerator
UCP_EP_PARAMS_FLAGS_CLIENT_SERVER  +

Using a client-server connection establishment mechanism. ucs_sock_addr_t sockaddr field must be provided and contain the address of the remote peer

+
UCP_EP_PARAMS_FLAGS_NO_LOOPBACK  +

Avoid connecting the endpoint to itself when connecting the endpoint to the same worker it was created on. Affects protocols which send to a particular remote endpoint, for example stream

+
UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID  +

Send client id when connecting to remote socket address as part of the connection request payload. On the remote side value can be obtained from ucp_conn_request_h using ucp_conn_request_query

+
+ +
+
+ +
+
+ + + + +
enum ucp_ep_close_flags_t
+
+

The enumeration is used to specify the behavior of ucp_ep_close_nbx.

+ + +
Enumerator
UCP_EP_CLOSE_FLAG_FORCE  +

ucp_ep_close_nbx releases the endpoint without any confirmation from the peer. All outstanding requests will be completed with UCS_ERR_CANCELED error.

Note
This mode may cause transport level errors on remote side, so it requires set UCP_ERR_HANDLING_MODE_PEER for all endpoints created on both (local and remote) sides to avoid undefined behavior. If this flag is not set then ucp_ep_close_nbx schedules flushes on all outstanding operations.
+
+this flag is incompatible with UCP_OP_ATTR_FLAG_NO_IMM_CMPL, since it forces immediate completion.
+
+ +
+
+ +
+
+ + + + +
enum ucp_ep_close_mode
+
+

The enumeration is used to specify the behavior of ucp_ep_close_nb.

+ + + +
Enumerator
UCP_EP_CLOSE_MODE_FORCE  +

ucp_ep_close_nb releases the endpoint without any confirmation from the peer. All outstanding requests will be completed with UCS_ERR_CANCELED error.

Note
This mode may cause transport level errors on remote side, so it requires set UCP_ERR_HANDLING_MODE_PEER for all endpoints created on both (local and remote) sides to avoid undefined behavior.
+
UCP_EP_CLOSE_MODE_FLUSH  +

ucp_ep_close_nb schedules flushes on all outstanding operations.

+
+ +
+
+ +
+
+ + + + +
enum ucp_ep_perf_param_field
+
+

The enumeration allows specifying which fields in ucp_ep_evaluate_perf_param_t are present and operation flags are used. It is used to enable backward compatibility support.

+ + +
Enumerator
UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE  +

Enables ucp_ep_evaluate_perf_param_t::message_size

+
+ +
+
+ +
+
+ + + + +
enum ucp_ep_perf_attr_field
+
+

The enumeration allows specifying which fields in ucp_ep_evaluate_perf_attr_t are present and operation flags are used. It is used to enable backward compatibility support.

+ + +
Enumerator
UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME  +

Enables ucp_ep_evaluate_perf_attr_t::estimated_time

+
+ +
+
+ +
+
+ + + + +
enum ucp_cb_param_flags
+
+

In a callback, if flags is set to UCP_CB_PARAM_FLAG_DATA in a callback then data was allocated, so if UCS_INPROGRESS is returned from the callback, the data parameter will persist and the user has to call ucp_am_data_release when data is no longer needed.

+ + +
Enumerator
UCP_CB_PARAM_FLAG_DATA  +
+ +
+
+ +
+
+ + + + +
enum ucp_ep_attr_field
+
+

The enumeration allows specifying which fields in ucp_ep_attr_t are present. It is used to enable backward compatibility support.

+ + + + + +
Enumerator
UCP_EP_ATTR_FIELD_NAME  +

UCP endpoint name

+
UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR  +

Sockaddr used by the endpoint

+
UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR  +

Sockaddr the endpoint is connected to

+
UCP_EP_ATTR_FIELD_TRANSPORTS  +

Transport and device used by endpoint

+
+ +
+
+ +
+
+ + + + +
enum ucp_err_handling_mode_t
+
+

Specifies error handling mode for the UCP endpoint.

+ + + +
Enumerator
UCP_ERR_HANDLING_MODE_NONE  +

No guarantees about error reporting, imposes minimal overhead from a performance perspective.

Note
In this mode, any error reporting will not generate calls to ucp_ep_params_t::err_handler.
+
UCP_ERR_HANDLING_MODE_PEER  +

Guarantees that send requests are always completed (successfully or error) even in case of remote failure, disables protocols and APIs which may cause a hang or undefined behavior in case of peer failure, may affect performance and memory footprint

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_ep_create (ucp_worker_h worker,
const ucp_ep_params_tparams,
ucp_ep_hep_p 
)
+
+

This routine creates and connects an endpoint on a local worker for a destination address that identifies the remote worker. This function is non-blocking, and communications may begin immediately after it returns. If the connection process is not completed, communications may be delayed. The created endpoint is associated with one and only one worker.

+
Parameters
+ + + + +
[in]workerHandle to the worker; the endpoint is associated with the worker.
[in]paramsUser defined ucp_ep_params_t configurations for the UCP endpoint.
[out]ep_pA handle to the created endpoint.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Note
One of the following fields has to be specified: +
+
+By default, ucp_ep_create() will connect an endpoint to itself if the endpoint is destined to the same worker on which it was created, i.e. params.address belongs to worker. This behavior can be changed by passing the UCP_EP_PARAMS_FLAGS_NO_LOOPBACK flag in params.flags. In that case, the endpoint will be connected to the next endpoint created in the same way on the same worker.
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_ep_close_nbx (ucp_ep_h ep,
const ucp_request_param_tparam 
)
+
+
Parameters
+ + + +
[in]epHandle to the endpoint to close.
[in]paramOperation parameters, see ucp_request_param_t. This operation supports specific flags, which can be passed in param by ucp_request_param_t::flags. The exact set of flags is defined by ucp_ep_close_flags_t.
+
+
+
Returns
NULL - The endpoint is closed successfully.
+
+UCS_PTR_IS_ERR(_ptr) - The closure failed and an error code indicates the transport level status. However, resources are released and the endpoint can no longer be used.
+
+otherwise - The closure process is started, and can be completed at any point in time. A request handle is returned to the application in order to track progress of the endpoint closure.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_ep_print_info (ucp_ep_h ep,
FILE * stream 
)
+
+

This routine prints information about the endpoint transport methods, their thresholds, and other useful information associated with the endpoint.

+
Parameters
+ + + +
[in]epEndpoint object whose configuration to print.
[in]streamOutput stream to print the information to.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_ep_flush_nbx (ucp_ep_h ep,
const ucp_request_param_tparam 
)
+
+

This routine flushes all outstanding AMO and RMA communications on the endpoint. All the AMO and RMA operations issued on the ep prior to this call are completed both at the origin and at the target endpoint when this call returns.

+
Parameters
+ + + +
[in]epUCP endpoint.
[in]paramOperation parameters, see ucp_request_param_t.
+
+
+
Returns
NULL - The flush operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The flush operation failed.
+
+otherwise - Flush operation was scheduled and can be completed in any point in time. The request handle is returned to the application in order to track progress.
+

The following example demonstrates how blocking flush can be implemented using non-blocking flush:

ucs_status_t blocking_ep_flush(ucp_ep_h ep, ucp_worker_h worker)
{
void *request;
param.op_attr_mask = 0;
request = ucp_ep_flush_nbx(ep, &param);
if (request == NULL) {
return UCS_OK;
} else if (UCS_PTR_IS_ERR(request)) {
return UCS_PTR_STATUS(request);
} else {
ucs_status_t status;
do {
status = ucp_request_check_status(request);
} while (status == UCS_INPROGRESS);
ucp_request_free(request);
return status;
}
}
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_ep_evaluate_perf (ucp_ep_h ep,
const ucp_ep_evaluate_perf_param_tparam,
ucp_ep_evaluate_perf_attr_tattr 
)
+
+

This routine fetches information about the endpoint.

+
Parameters
+ + + + +
[in]epEndpoint to query.
[in]paramFilled by the user with request params.
[out]attrFilled with performance estimation of the given operation on the endpoint.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_ep_query (ucp_ep_h ep,
ucp_ep_attr_tattr 
)
+
+

This routine fetches information about the endpoint.

+
Parameters
+ + + +
[in]epEndpoint object to query.
[out]attrFilled with attributes of the endpoint.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + +
void ucp_request_release (void * request)
+
+
Deprecated:
Replaced by ucp_request_free.
+ +
+
+ +
+
+ + + + + + + + +
void ucp_ep_destroy (ucp_ep_h ep)
+
+
Deprecated:
Replaced by ucp_ep_close_nb.
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_ptr_t ucp_disconnect_nb (ucp_ep_h ep)
+
+
Deprecated:
Replaced by ucp_ep_close_nb.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_request_test (void * request,
ucp_tag_recv_info_tinfo 
)
+
+
Deprecated:
Replaced by ucp_tag_recv_request_test and ucp_request_check_status depends on use case.
+
Note
Please use ucp_request_check_status for cases that only need to check the completion status of an outstanding request. ucp_request_check_status can be used for any type of request. ucp_tag_recv_request_test should only be used for requests returned by ucp_tag_recv_nb (or request allocated by user for ucp_tag_recv_nbr) for which additional information (returned via the info pointer) is needed.
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_ep_flush (ucp_ep_h ep)
+
+
Deprecated:
Replaced by ucp_ep_flush_nb.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_ep_modify_nb (ucp_ep_h ep,
const ucp_ep_params_tparams 
)
+
+
Deprecated:
Use ucp_listener_conn_handler_t instead of ucp_listener_accept_handler_t, if you have other use case please submit an issue on https://github.com/openucx/ucx or report to ucx-g.nosp@m.roup.nosp@m.@elis.nosp@m.t.or.nosp@m.nl.go.nosp@m.v
+

This routine modifies endpoint created by ucp_ep_create or ucp_listener_accept_callback_t. For example, this API can be used to setup custom parameters like ucp_ep_params_t::user_data or ucp_ep_params_t::err_handler to endpoint created by ucp_listener_accept_callback_t.

+
Parameters
+ + + +
[in]epA handle to the endpoint.
[in]paramsUser defined ucp_ep_params_t configurations for the UCP endpoint.
+
+
+
Returns
NULL - The endpoint is modified successfully.
+
+UCS_PTR_IS_ERR(_ptr) - The reconfiguration failed and an error code indicates the status. However, the endpoint is not modified and can be used further.
+
+otherwise - The reconfiguration process is started, and can be completed at any point in time. A request handle is returned to the application in order to track progress of the endpoint modification. The application is responsible for releasing the handle using the ucp_request_free routine.
+
Note
See the documentation of ucp_ep_params_t for details, only some of the parameters can be modified.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_ep_close_nb (ucp_ep_h ep,
unsigned mode 
)
+
+
Deprecated:
Use ucp_ep_close_nbx instead.
+

This routine releases the endpoint. The endpoint closure process depends on the selected mode.

+
Parameters
+ + + +
[in]epHandle to the endpoint to close.
[in]modeOne from ucp_ep_close_mode value.
+
+
+
Returns
UCS_OK - The endpoint is closed successfully.
+
+UCS_PTR_IS_ERR(_ptr) - The closure failed and an error code indicates the transport level status. However, resources are released and the endpoint can no longer be used.
+
+otherwise - The closure process is started, and can be completed at any point in time. A request handle is returned to the application in order to track progress of the endpoint closure. The application is responsible for releasing the handle using the ucp_request_free routine.
+
Note
ucp_ep_close_nb replaces deprecated ucp_disconnect_nb and ucp_ep_destroy
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_ep_flush_nb (ucp_ep_h ep,
unsigned flags,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_ep_flush_nbx instead.
+

This routine flushes all outstanding AMO and RMA communications on the endpoint. All the AMO and RMA operations issued on the ep prior to this call are completed both at the origin and at the target endpoint when this call returns.

+
Parameters
+ + + + +
[in]epUCP endpoint.
[in]flagsFlags for flush operation. Reserved for future use.
[in]cbCallback which will be called when the flush operation completes.
+
+
+
Returns
NULL - The flush operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The flush operation failed.
+
+otherwise - Flush operation was scheduled and can be completed in any point in time. The request handle is returned to the application in order to track progress. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t.js new file mode 100644 index 00000000000..b983a36dba0 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t.js @@ -0,0 +1,110 @@ +var group___u_c_p___e_n_d_p_o_i_n_t = +[ + [ "ucp_ep_evaluate_perf_param_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__param__t", [ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#afffe0975a57573bd318e72e59bd53957", null ], + [ "message_size", "group___u_c_p___e_n_d_p_o_i_n_t.html#ac6bc2d095c3c631324646cd9ac6a5a0f", null ] + ] ], + [ "ucp_ep_evaluate_perf_attr_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__attr__t", [ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#a3506b654e12be644d0ffe96368106142", null ], + [ "estimated_time", "group___u_c_p___e_n_d_p_o_i_n_t.html#ac8864d77a5f8d333c2de912ad621626a", null ] + ] ], + [ "ucp_stream_poll_ep", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__stream__poll__ep", [ + [ "ep", "group___u_c_p___e_n_d_p_o_i_n_t.html#aa9703a325b9dc242facae719f6cef8a7", null ], + [ "user_data", "group___u_c_p___e_n_d_p_o_i_n_t.html#a202ee8e08e637b9e868387ab294a684c", null ], + [ "flags", "group___u_c_p___e_n_d_p_o_i_n_t.html#a1e761ffd7b8edf7399ab497600200266", null ], + [ "reserved", "group___u_c_p___e_n_d_p_o_i_n_t.html#a00c2ee7b309e8c2a45d7e7c83911d707", null ] + ] ], + [ "ucp_ep_attr", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__attr", [ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#a385c4a4337266da2a874e5ff533fbab2", null ], + [ "name", "group___u_c_p___e_n_d_p_o_i_n_t.html#acdaee980b44ce00d608c3b9812049db6", null ], + [ "local_sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#ae54665498f1f7c019e716e7bf9d56531", null ], + [ "remote_sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#a8e0e9e1e5a9295f93073ae3fd3d9a612", null ], + [ "transports", "group___u_c_p___e_n_d_p_o_i_n_t.html#a2104226ca6c263e31b669a148185181b", null ] + ] ], + [ "ucp_ep_params", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__params", [ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#ab7b3f3ba1d402a621b8ea708dcf2387b", null ], + [ "address", "group___u_c_p___e_n_d_p_o_i_n_t.html#a8cf5c1599022ccdea5a6d1c97ced3627", null ], + [ "err_mode", "group___u_c_p___e_n_d_p_o_i_n_t.html#a50ce29893509695caa5b70ab4525a4d6", null ], + [ "err_handler", "group___u_c_p___e_n_d_p_o_i_n_t.html#aaf329de9e2b45311099cee8c9df43a20", null ], + [ "user_data", "group___u_c_p___e_n_d_p_o_i_n_t.html#adaf49e16ee05400f715f432e442336cb", null ], + [ "flags", "group___u_c_p___e_n_d_p_o_i_n_t.html#a9bb65021187347fe311535857e19e6c3", null ], + [ "sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#aa23fd9a6a092266371258bd285c96816", null ], + [ "conn_request", "group___u_c_p___e_n_d_p_o_i_n_t.html#a9fbba62cd4a470f2bc7c6f7e55fe3db1", null ], + [ "name", "group___u_c_p___e_n_d_p_o_i_n_t.html#a2434487b2597678b8b8c6a6b6fdd11ac", null ], + [ "local_sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#ac7e00eea58053f718b67d92236c7a4b9", null ] + ] ], + [ "ucp_transport_entry_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transport__entry__t", [ + [ "transport_name", "group___u_c_p___e_n_d_p_o_i_n_t.html#a1065b2abc0bf2a05a551059cd1f14ffd", null ], + [ "device_name", "group___u_c_p___e_n_d_p_o_i_n_t.html#a5a1ae736a47936285f9cf51ad61b0821", null ] + ] ], + [ "ucp_transports_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transports__t", [ + [ "entries", "group___u_c_p___e_n_d_p_o_i_n_t.html#a4603a2147c2627572889484eeed7a32e", null ], + [ "num_entries", "group___u_c_p___e_n_d_p_o_i_n_t.html#a21eabc3b6df3b0c6964de56ab7784304", null ], + [ "entry_size", "group___u_c_p___e_n_d_p_o_i_n_t.html#a0f09e5a459259f70ee7644f62daa2adc", null ] + ] ], + [ "ucp_ep_perf_param_field_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#gae4c53d850058ce95a75f0557af64ae9f", null ], + [ "ucp_ep_perf_attr_field_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga0f74b8a78d11684fa275f5a4958e76d7", null ], + [ "ucp_stream_poll_ep_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga3abf6e5a913e352659bfdeba300acfdd", null ], + [ "ucp_ep_attr_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga5787b42ef3dce490d9341e3f6dbb36e4", null ], + [ "ucp_ep_h", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga9bea4e4174ea25f44285d8e7a9fb7adf", null ], + [ "ucp_conn_request_h", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga200570bfa7d3a8b50b2a074aaa22d2ed", null ], + [ "ucp_am_callback_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#gad61809eb62935c7f2e301fcb47c01727", null ], + [ "ucp_am_recv_callback_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#gab3adc96222b05543c6cba8c28c16703b", null ], + [ "ucp_ep_params_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga359c847069dca9ab0d1a026dc3f5f8cd", null ], + [ "ucp_ep_params_field", "group___u_c_p___e_n_d_p_o_i_n_t.html#gabb6ce0b3189f415dadc7f99727751d60", [ + [ "UCP_EP_PARAM_FIELD_REMOTE_ADDRESS", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60ae1c4a9617dea28b56c486ac357299f4c", null ], + [ "UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a1b0e70c12efabe6a2cab3c9bc66db340", null ], + [ "UCP_EP_PARAM_FIELD_ERR_HANDLER", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60adc6619f5e4bf3f68190f918ee064036d", null ], + [ "UCP_EP_PARAM_FIELD_USER_DATA", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60afc6cbbfabd368438e5d6afd36f389d1b", null ], + [ "UCP_EP_PARAM_FIELD_SOCK_ADDR", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a8149dfb8648b2b248825020c63449a80", null ], + [ "UCP_EP_PARAM_FIELD_FLAGS", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a1b53a3d4eaee470bcb3e23c60f1f7794", null ], + [ "UCP_EP_PARAM_FIELD_CONN_REQUEST", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a88c2cf7c57a1cddc6b2cf9bcdc99e64e", null ], + [ "UCP_EP_PARAM_FIELD_NAME", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60aad52a9473f7b47dd7dddc43062e16436", null ], + [ "UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60ade6d1e89c4a39f44f8c088d3e79c59f5", null ] + ] ], + [ "ucp_ep_params_flags_field", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga4a1f422dc1e81495b4aee1da8939459f", [ + [ "UCP_EP_PARAMS_FLAGS_CLIENT_SERVER", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459fad42871a591a0a34bccf5c8203a0b32bb", null ], + [ "UCP_EP_PARAMS_FLAGS_NO_LOOPBACK", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459fa519d4e4a7237ae543f72ddeaef6864ec", null ], + [ "UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459faddc3dea615010520ff2fa9d214eabcd3", null ] + ] ], + [ "ucp_ep_close_flags_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#gacef728a5ee7a11f50794544aa259fe71", [ + [ "UCP_EP_CLOSE_FLAG_FORCE", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggacef728a5ee7a11f50794544aa259fe71a5b827bc555062bcba501faa3f40e789b", null ] + ] ], + [ "ucp_ep_close_mode", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga3be4aa93d76e41c80c780965f2f8ae57", [ + [ "UCP_EP_CLOSE_MODE_FORCE", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga3be4aa93d76e41c80c780965f2f8ae57ad78eab8ac29d813247b3cca01c3194db", null ], + [ "UCP_EP_CLOSE_MODE_FLUSH", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga3be4aa93d76e41c80c780965f2f8ae57ab0b1f6dcac5f54dff76c87fcf0c55c8b", null ] + ] ], + [ "ucp_ep_perf_param_field", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga4abce355cbaf6b31b1aaa88b68154f13", [ + [ "UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga4abce355cbaf6b31b1aaa88b68154f13a3d545405c1d0a3fec8050d1f985f3360", null ] + ] ], + [ "ucp_ep_perf_attr_field", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga806d286165cdbe6d6c63d52b06b16406", [ + [ "UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga806d286165cdbe6d6c63d52b06b16406a6bfbf6be343cb78ca8bb7ad9c602ad1a", null ] + ] ], + [ "ucp_cb_param_flags", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga4a9af9e36e3256933869d6699be25874", [ + [ "UCP_CB_PARAM_FLAG_DATA", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a9af9e36e3256933869d6699be25874a55d40d13674830156e15f6b6289b0d12", null ] + ] ], + [ "ucp_ep_attr_field", "group___u_c_p___e_n_d_p_o_i_n_t.html#gaa24832a718990ceb558ab5a1d4abfc41", [ + [ "UCP_EP_ATTR_FIELD_NAME", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41ac78de8cbed80cdb833a6ae5ddcd270fd", null ], + [ "UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a1f04baee4cd992c08b62716558eb6013", null ], + [ "UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a2b85f61bc437c3b277e360afaa058bf3", null ], + [ "UCP_EP_ATTR_FIELD_TRANSPORTS", "group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a0eeddc2e29662e9ab046ac862757d11e", null ] + ] ], + [ "ucp_err_handling_mode_t", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga7c69a28724d5ae3e49490e23e64df167", [ + [ "UCP_ERR_HANDLING_MODE_NONE", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga7c69a28724d5ae3e49490e23e64df167a18c7855c2e1dea33e0be32d9ef841ffe", null ], + [ "UCP_ERR_HANDLING_MODE_PEER", "group___u_c_p___e_n_d_p_o_i_n_t.html#gga7c69a28724d5ae3e49490e23e64df167aa31630259732e700b6ce0fe612cf0a6f", null ] + ] ], + [ "ucp_ep_create", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga6cc5ffb2ba1b0ccd510848de0a779f7b", null ], + [ "ucp_ep_close_nbx", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga6756b434213a424abb0d542fda1d82a1", null ], + [ "ucp_ep_print_info", "group___u_c_p___e_n_d_p_o_i_n_t.html#gacc9e967b69f48d6223e921831181f3ee", null ], + [ "ucp_ep_flush_nbx", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga28d61bf53320bd0f5d741147447251a4", null ], + [ "ucp_ep_evaluate_perf", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga654a8402e9a3d657f5226ac4e8866994", null ], + [ "ucp_ep_query", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga5074a508e2ae53e00d2bd7e728336f30", null ], + [ "ucp_request_release", "group___u_c_p___e_n_d_p_o_i_n_t.html#gaabf569a298946627fbc8d66814c35e68", null ], + [ "ucp_ep_destroy", "group___u_c_p___e_n_d_p_o_i_n_t.html#gac63b3fe87c001dd965ca42943ea04bb1", null ], + [ "ucp_disconnect_nb", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga22cf67f74ae06242cc26e6ca6ecd100b", null ], + [ "ucp_request_test", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga3802a983138ed27034b7d52026dccb2f", null ], + [ "ucp_ep_flush", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga046d87a26389c7adecd177111a65cd31", null ], + [ "ucp_ep_modify_nb", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga034aff7bd27e3b932d4bb7b964db759e", null ], + [ "ucp_ep_close_nb", "group___u_c_p___e_n_d_p_o_i_n_t.html#gaa7293ad4dc72858b2594686d1c553015", null ], + [ "ucp_ep_flush_nb", "group___u_c_p___e_n_d_p_o_i_n_t.html#ga599c9b9272bfdd662afaa247d8e4dfd6", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__attr.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__attr.js new file mode 100644 index 00000000000..397c23a05ed --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__attr.js @@ -0,0 +1,8 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__attr = +[ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#a385c4a4337266da2a874e5ff533fbab2", null ], + [ "name", "group___u_c_p___e_n_d_p_o_i_n_t.html#acdaee980b44ce00d608c3b9812049db6", null ], + [ "local_sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#ae54665498f1f7c019e716e7bf9d56531", null ], + [ "remote_sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#a8e0e9e1e5a9295f93073ae3fd3d9a612", null ], + [ "transports", "group___u_c_p___e_n_d_p_o_i_n_t.html#a2104226ca6c263e31b669a148185181b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__attr__t.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__attr__t.js new file mode 100644 index 00000000000..f2208781572 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__attr__t.js @@ -0,0 +1,5 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__attr__t = +[ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#a3506b654e12be644d0ffe96368106142", null ], + [ "estimated_time", "group___u_c_p___e_n_d_p_o_i_n_t.html#ac8864d77a5f8d333c2de912ad621626a", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__param__t.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__param__t.js new file mode 100644 index 00000000000..07f440d168f --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__param__t.js @@ -0,0 +1,5 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__evaluate__perf__param__t = +[ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#afffe0975a57573bd318e72e59bd53957", null ], + [ "message_size", "group___u_c_p___e_n_d_p_o_i_n_t.html#ac6bc2d095c3c631324646cd9ac6a5a0f", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__params.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__params.js new file mode 100644 index 00000000000..13508417b04 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__params.js @@ -0,0 +1,13 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__ep__params = +[ + [ "field_mask", "group___u_c_p___e_n_d_p_o_i_n_t.html#ab7b3f3ba1d402a621b8ea708dcf2387b", null ], + [ "address", "group___u_c_p___e_n_d_p_o_i_n_t.html#a8cf5c1599022ccdea5a6d1c97ced3627", null ], + [ "err_mode", "group___u_c_p___e_n_d_p_o_i_n_t.html#a50ce29893509695caa5b70ab4525a4d6", null ], + [ "err_handler", "group___u_c_p___e_n_d_p_o_i_n_t.html#aaf329de9e2b45311099cee8c9df43a20", null ], + [ "user_data", "group___u_c_p___e_n_d_p_o_i_n_t.html#adaf49e16ee05400f715f432e442336cb", null ], + [ "flags", "group___u_c_p___e_n_d_p_o_i_n_t.html#a9bb65021187347fe311535857e19e6c3", null ], + [ "sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#aa23fd9a6a092266371258bd285c96816", null ], + [ "conn_request", "group___u_c_p___e_n_d_p_o_i_n_t.html#a9fbba62cd4a470f2bc7c6f7e55fe3db1", null ], + [ "name", "group___u_c_p___e_n_d_p_o_i_n_t.html#a2434487b2597678b8b8c6a6b6fdd11ac", null ], + [ "local_sockaddr", "group___u_c_p___e_n_d_p_o_i_n_t.html#ac7e00eea58053f718b67d92236c7a4b9", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__stream__poll__ep.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__stream__poll__ep.js new file mode 100644 index 00000000000..f4d66b8a61c --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__stream__poll__ep.js @@ -0,0 +1,7 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__stream__poll__ep = +[ + [ "ep", "group___u_c_p___e_n_d_p_o_i_n_t.html#aa9703a325b9dc242facae719f6cef8a7", null ], + [ "user_data", "group___u_c_p___e_n_d_p_o_i_n_t.html#a202ee8e08e637b9e868387ab294a684c", null ], + [ "flags", "group___u_c_p___e_n_d_p_o_i_n_t.html#a1e761ffd7b8edf7399ab497600200266", null ], + [ "reserved", "group___u_c_p___e_n_d_p_o_i_n_t.html#a00c2ee7b309e8c2a45d7e7c83911d707", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__transport__entry__t.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__transport__entry__t.js new file mode 100644 index 00000000000..6ec6d3a1a06 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__transport__entry__t.js @@ -0,0 +1,5 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__transport__entry__t = +[ + [ "transport_name", "group___u_c_p___e_n_d_p_o_i_n_t.html#a1065b2abc0bf2a05a551059cd1f14ffd", null ], + [ "device_name", "group___u_c_p___e_n_d_p_o_i_n_t.html#a5a1ae736a47936285f9cf51ad61b0821", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__transports__t.js b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__transports__t.js new file mode 100644 index 00000000000..f667e283863 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___e_n_d_p_o_i_n_t_structucp__transports__t.js @@ -0,0 +1,6 @@ +var group___u_c_p___e_n_d_p_o_i_n_t_structucp__transports__t = +[ + [ "entries", "group___u_c_p___e_n_d_p_o_i_n_t.html#a4603a2147c2627572889484eeed7a32e", null ], + [ "num_entries", "group___u_c_p___e_n_d_p_o_i_n_t.html#a21eabc3b6df3b0c6964de56ab7784304", null ], + [ "entry_size", "group___u_c_p___e_n_d_p_o_i_n_t.html#a0f09e5a459259f70ee7644f62daa2adc", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___m_e_m.html b/api/v1.14/html/group___u_c_p___m_e_m.html new file mode 100644 index 00000000000..4a25eb2ac69 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m.html @@ -0,0 +1,1300 @@ + + + + + + +UCX: UCP Memory routines + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + +

+Data Structures

struct  ucp_mem_map_params
 Tuning parameters for the UCP memory mapping. More...
 
struct  ucp_mem_advise_params
 Tuning parameters for the UCP memory advice. More...
 
struct  ucp_memh_pack_params
 Memory handle pack parameters passed to ucp_memh_pack. More...
 
struct  ucp_memh_buffer_release_params
 Memory handle release parameters passed to ucp_memh_buffer_release. More...
 
struct  ucp_mem_attr
 Attributes of the UCP Memory handle, filled by ucp_mem_query function. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct ucp_mem_map_params ucp_mem_map_params_t
 Tuning parameters for the UCP memory mapping. More...
 
typedef enum ucp_mem_advice ucp_mem_advice_t
 list of UCP memory use advice. More...
 
typedef struct ucp_mem_advise_params ucp_mem_advise_params_t
 Tuning parameters for the UCP memory advice. More...
 
typedef struct ucp_memh_pack_params ucp_memh_pack_params_t
 Memory handle pack parameters passed to ucp_memh_pack. More...
 
typedef struct ucp_memh_buffer_release_params ucp_memh_buffer_release_params_t
 Memory handle release parameters passed to ucp_memh_buffer_release. More...
 
typedef struct ucp_rkey * ucp_rkey_h
 UCP Remote memory handle. More...
 
typedef struct ucp_mem * ucp_mem_h
 UCP Memory handle. More...
 
typedef struct ucp_mem_attr ucp_mem_attr_t
 Attributes of the UCP Memory handle, filled by ucp_mem_query function. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  ucp_mem_map_params_field {
+  UCP_MEM_MAP_PARAM_FIELD_ADDRESS = UCS_BIT(0), +UCP_MEM_MAP_PARAM_FIELD_LENGTH = UCS_BIT(1), +UCP_MEM_MAP_PARAM_FIELD_FLAGS = UCS_BIT(2), +UCP_MEM_MAP_PARAM_FIELD_PROT = UCS_BIT(3), +
+  UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE = UCS_BIT(4), +UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER = UCS_BIT(5) +
+ }
 UCP memory mapping parameters field mask. More...
 
enum  ucp_mem_advise_params_field { UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS = UCS_BIT(0), +UCP_MEM_ADVISE_PARAM_FIELD_LENGTH = UCS_BIT(1), +UCP_MEM_ADVISE_PARAM_FIELD_ADVICE = UCS_BIT(2) + }
 UCP memory advice parameters field mask. More...
 
enum  { UCP_MEM_MAP_NONBLOCK = UCS_BIT(0), +UCP_MEM_MAP_ALLOCATE = UCS_BIT(1), +UCP_MEM_MAP_FIXED = UCS_BIT(2) + }
 UCP memory mapping flags. More...
 
enum  { UCP_MEM_MAP_PROT_LOCAL_READ = UCS_BIT(0), +UCP_MEM_MAP_PROT_LOCAL_WRITE = UCS_BIT(1), +UCP_MEM_MAP_PROT_REMOTE_READ = UCS_BIT(8), +UCP_MEM_MAP_PROT_REMOTE_WRITE = UCS_BIT(9) + }
 UCP memory mapping protection mode. More...
 
enum  ucp_mem_advice { UCP_MADV_NORMAL = 0, +UCP_MADV_WILLNEED + }
 list of UCP memory use advice. More...
 
enum  ucp_memh_pack_params_field { UCP_MEMH_PACK_PARAM_FIELD_FLAGS = UCS_BIT(0) + }
 UCP memory handle packing parameters field mask. More...
 
enum  ucp_memh_pack_flags { UCP_MEMH_PACK_FLAG_EXPORT = UCS_BIT(0) + }
 UCP memory handle flags. More...
 
enum  ucp_mem_attr_field { UCP_MEM_ATTR_FIELD_ADDRESS = UCS_BIT(0), +UCP_MEM_ATTR_FIELD_LENGTH = UCS_BIT(1), +UCP_MEM_ATTR_FIELD_MEM_TYPE = UCS_BIT(2) + }
 UCP Memory handle attributes field mask. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_mem_map (ucp_context_h context, const ucp_mem_map_params_t *params, ucp_mem_h *memh_p)
 Map or allocate memory for zero-copy operations. More...
 
ucs_status_t ucp_mem_unmap (ucp_context_h context, ucp_mem_h memh)
 Unmap memory segment. More...
 
ucs_status_t ucp_mem_query (const ucp_mem_h memh, ucp_mem_attr_t *attr)
 query mapped memory segment More...
 
void ucp_mem_print_info (const char *mem_spec, ucp_context_h context, FILE *stream)
 Print memory mapping information. More...
 
ucs_status_t ucp_mem_advise (ucp_context_h context, ucp_mem_h memh, ucp_mem_advise_params_t *params)
 give advice about the use of memory More...
 
ucs_status_t ucp_memh_pack (ucp_mem_h memh, const ucp_memh_pack_params_t *params, void **buffer_p, size_t *buffer_size_p)
 Pack a memory handle to a buffer specified by the user. More...
 
void ucp_memh_buffer_release (void *buffer, const ucp_memh_buffer_release_params_t *params)
 Release packed memory handle buffer. More...
 
ucs_status_t ucp_ep_rkey_unpack (ucp_ep_h ep, const void *rkey_buffer, ucp_rkey_h *rkey_p)
 Create remote access key from packed buffer. More...
 
ucs_status_t ucp_rkey_ptr (ucp_rkey_h rkey, uint64_t raddr, void **addr_p)
 Get a local pointer to remote memory. More...
 
void ucp_rkey_destroy (ucp_rkey_h rkey)
 Destroy the remote key. More...
 
ucs_status_t ucp_rkey_pack (ucp_context_h context, ucp_mem_h memh, void **rkey_buffer_p, size_t *size_p)
 Pack memory region remote access key. More...
 
void ucp_rkey_buffer_release (void *rkey_buffer)
 Release packed remote key buffer. More...
 
+

Detailed Description

+

UCP Memory routines

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_mem_map_params
+
+

The structure defines the parameters that are used for the UCP memory mapping tuning during the ucp_mem_map routine.

+
+ + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_mem_map_params_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+void * +address +

If the address is not NULL, the routine maps (registers) the memory segment pointed to by this address. If the pointer is NULL, the library allocates mapped (registered) memory segment and returns its address in this argument. Therefore, this value is optional. If it's not set (along with its corresponding bit in the field_mask - UCP_MEM_MAP_PARAM_FIELD_ADDRESS), the ucp_mem_map routine will consider address as set to NULL and will allocate memory.

+
+size_t +length +

Length (in bytes) to allocate or map (register). This field is mandatory for filling (along with its corresponding bit in the field_mask - UCP_MEM_MAP_PARAM_FIELD_LENGTH). The ucp_mem_map routine will return with an error if the length isn't specified.

+
+unsigned +flags +

Allocation flags, e.g. UCP_MEM_MAP_NONBLOCK. This value is optional. If it's not set (along with its corresponding bit in the field_mask - UCP_MEM_MAP_PARAM_FIELD_FLAGS), the ucp_mem_map routine will consider the flags as set to zero.

+
+unsigned +prot +

Memory protection mode, e.g. UCP_MEM_MAP_PROT_LOCAL_READ. This value is optional. If it's not set, the ucp_mem_map routine will consider the flags as set to UCP_MEM_MAP_PROT_LOCAL_READ|UCP_MEM_MAP_PROT_LOCAL_WRITE| UCP_MEM_MAP_PROT_REMOTE_READ|UCP_MEM_MAP_PROT_REMOTE_WRITE.

+
+ucs_memory_type_t +memory_type +
+const void * +exported_memh_buffer +

Exported memory handle buffer as returned by ucp_mem_map function for a memory handle created and packed by ucp_memh_pack with UCP_MEMH_PACK_FLAG_EXPORT flag. If this field is specified for ucp_mem_map function, a resulting memory handle will be a mapping of peer memory instead of local memory. If the field is not set (along with its corresponding bit in the field_mask - UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER), the ucp_mem_map routine will consider the memory handle buffer to be set to NULL by default.

+
+ +
+
+ +
+
+ + + + +
struct ucp_mem_advise_params
+
+

This structure defines the parameters that are used for the UCP memory advice tuning during the ucp_mem_advise routine.

+
+ + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_mem_advise_params_field. All fields are mandatory. Provides ABI compatibility with respect to adding new fields.

+
+void * +address +

Memory base address.

+
+size_t +length +

Length (in bytes) to allocate or map (register).

+
+ucp_mem_advice_t +advice +

Memory use advice ucp_mem_advice

+
+ +
+
+ +
+
+ + + + +
struct ucp_memh_pack_params
+
+

This structure defines the parameters that are used for packing the UCP memory handle during the ucp_memh_pack routine.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+uint64_t +flags +

Flags to control packing of a memory handle.

+
+ +
+
+ +
+
+ + + + +
struct ucp_memh_buffer_release_params
+
+

This structure defines the parameters that are used for releasing the UCP memory handle buffer during the ucp_memh_buffer_release routine.

+
+ + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure. All fields are mandatory. Provides ABI compatibility with respect to adding new fields.

+
+ +
+
+ +
+
+ + + + +
struct ucp_mem_attr
+
+
+ + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_mem_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+void * +address +

Address of the memory segment.

+
+size_t +length +

Size of the memory segment.

+
+ucs_memory_type_t +mem_type +

Type of allocated or registered memory

+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ucp_mem_map_params ucp_mem_map_params_t
+
+

The structure defines the parameters that are used for the UCP memory mapping tuning during the ucp_mem_map routine.

+ +
+
+ +
+
+ + + + +
typedef enum ucp_mem_advice ucp_mem_advice_t
+
+

The enumeration list describes memory advice supported by ucp_mem_advise() function.

+ +
+
+ +
+
+

This structure defines the parameters that are used for the UCP memory advice tuning during the ucp_mem_advise routine.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_memh_pack_params ucp_memh_pack_params_t
+
+

This structure defines the parameters that are used for packing the UCP memory handle during the ucp_memh_pack routine.

+ +
+
+ +
+
+

This structure defines the parameters that are used for releasing the UCP memory handle buffer during the ucp_memh_buffer_release routine.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_rkey* ucp_rkey_h
+
+

Remote memory handle is an opaque object representing remote memory access information. Typically, the handle includes a memory access key and other network hardware specific information, which are input to remote memory access operations, such as PUT, GET, and ATOMIC. The object is communicated to remote peers to enable an access to the memory region.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_mem* ucp_mem_h
+
+

Memory handle is an opaque object representing a memory region allocated through UCP library, which is optimized for remote memory access operations (zero-copy operations). The memory handle is a self-contained object, which includes the information required to access the memory region locally, while remote key is used to access it remotely. The memory could be registered to one or multiple network resources that are supported by UCP, such as InfiniBand, Gemini, and others.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_mem_attr ucp_mem_attr_t
+
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucp_mem_map_params_field
+
+

The enumeration allows specifying which fields in ucp_mem_map_params_t are present. It is used to enable backward compatibility support.

+ + + + + + + +
Enumerator
UCP_MEM_MAP_PARAM_FIELD_ADDRESS  +

Address of the memory that will be used in the ucp_mem_map routine.

+
UCP_MEM_MAP_PARAM_FIELD_LENGTH  +

The size of memory that will be allocated or registered in the ucp_mem_map routine.

+
UCP_MEM_MAP_PARAM_FIELD_FLAGS  +

Allocation flags.

+
UCP_MEM_MAP_PARAM_FIELD_PROT  +

Memory protection mode.

+
UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE  +

Memory type.

+
UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER  +

Exported memory handle buffer.

+
+ +
+
+ +
+
+ + + + +
enum ucp_mem_advise_params_field
+
+

The enumeration allows specifying which fields in ucp_mem_advise_params_t are present. It is used to enable backward compatibility support.

+ + + + +
Enumerator
UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS  +

Address of the memory

+
UCP_MEM_ADVISE_PARAM_FIELD_LENGTH  +

The size of memory

+
UCP_MEM_ADVISE_PARAM_FIELD_ADVICE  +

Advice on memory usage

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

The enumeration list describes the memory mapping flags supported by ucp_mem_map() function.

+ + + + +
Enumerator
UCP_MEM_MAP_NONBLOCK  +

Complete the mapping faster, possibly by not populating the pages in the mapping up-front, and mapping them later when they are accessed by communication routines.

+
UCP_MEM_MAP_ALLOCATE  +

Identify requirement for allocation, if passed address is not a null-pointer, then it will be used as a hint or direct address for allocation.

+
UCP_MEM_MAP_FIXED  +

Don't interpret address as a hint: place the mapping at exactly that address. The address must be a multiple of the page size.

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

The enumeration list describes the memory mapping protections supported by the ucp_mem_map() function.

+ + + + + +
Enumerator
UCP_MEM_MAP_PROT_LOCAL_READ  +

Enable local read access.

+
UCP_MEM_MAP_PROT_LOCAL_WRITE  +

Enable local write access.

+
UCP_MEM_MAP_PROT_REMOTE_READ  +

Enable remote read access.

+
UCP_MEM_MAP_PROT_REMOTE_WRITE  +

Enable remote write access.

+
+ +
+
+ +
+
+ + + + +
enum ucp_mem_advice
+
+

The enumeration list describes memory advice supported by ucp_mem_advise() function.

+ + + +
Enumerator
UCP_MADV_NORMAL  +

No special treatment

+
UCP_MADV_WILLNEED  +

can be used on the memory mapped with UCP_MEM_MAP_NONBLOCK to speed up memory mapping and to avoid page faults when the memory is accessed for the first time.

+
+ +
+
+ +
+
+ + + + +
enum ucp_memh_pack_params_field
+
+

The enumeration allows specifying which fields in ucp_memh_pack_params_t are present. It is used to enable backward compatibility support.

+ + +
Enumerator
UCP_MEMH_PACK_PARAM_FIELD_FLAGS  +

Memory handle packing field that will be used in the ucp_memh_pack routine.

+
+ +
+
+ +
+
+ + + + +
enum ucp_memh_pack_flags
+
+

The enumeration list describes the memory handle packing flags supported by ucp_memh_pack() function.

+ + +
Enumerator
UCP_MEMH_PACK_FLAG_EXPORT  +

Pack a memory handle to be exported and used by peers for their local operations on a memory buffer allocated from same or another virtual memory space, but physically registered on the same network device. A peer should call ucp_mem_map with the flag UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER in order to import and use a memory handle buffer obtained from ucp_memh_pack.

+
+ +
+
+ +
+
+ + + + +
enum ucp_mem_attr_field
+
+

The enumeration allows specifying which fields in ucp_mem_attr_t are present. It is used to enable backward compatibility support.

+ + + + +
Enumerator
UCP_MEM_ATTR_FIELD_ADDRESS  +

Virtual address

+
UCP_MEM_ATTR_FIELD_LENGTH  +

The size of memory region

+
UCP_MEM_ATTR_FIELD_MEM_TYPE  +

Type of allocated or registered memory

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_mem_map (ucp_context_h context,
const ucp_mem_map_params_tparams,
ucp_mem_hmemh_p 
)
+
+

This routine maps or/and allocates a user-specified memory segment with UCP application context and the network resources associated with it. If the application specifies NULL as an address for the memory segment, the routine allocates a mapped memory segment and returns its address in the address_p argument. The network stack associated with an application context can typically send and receive data from the mapped memory without CPU intervention; some devices and associated network stacks require the memory to be mapped to send and receive data. The memory handle includes all information required to access the memory locally using UCP routines, while remote registration handle provides an information that is necessary for remote memory access.

+
Note
Another well know terminology for the "map" operation that is typically used in the context of networking is memory "registration" or "pinning". The UCP library registers the memory the available hardware so it can be assessed directly by the hardware.
+

Memory mapping assumptions:

    +
  • A given memory segment can be mapped by several different communication stacks, if these are compatible.
  • +
  • The memh_p handle returned may be used with any sub-region of the mapped memory.
  • +
  • If a large segment is registered, and then segmented for subsequent use by a user, then the user is responsible for segmentation and subsequent management.
  • +
+ + + + + + + + + + + + + + + + + + + + + +
Matrix of behavior
parameter/flag NONBLOCK ALLOCATE FIXED address result
value 0/1 - the value
+ only affects the
+ register/map
+ phase
0 0 0 error if length > 0
1 0 0 alloc+register
0 1 0 error
0 0 defined register
1 1 0 error
1 0 defined alloc+register,hint
0 1 defined error
1 1 defined alloc+register,fixed
+
Note
    +
  • register means that the memory will be registered in corresponding transports for RMA/AMO operations. This case intends that the memory was allocated by user before.
  • +
  • alloc+register means that the memory will be allocated in the memory provided by the system and registered in corresponding transports for RMA/AMO operations.
  • +
  • alloc+register,hint means that the memory will be allocated with using ucp_mem_map_params::address as a hint and registered in corresponding transports for RMA/AMO operations.
  • +
  • alloc+register,fixed means that the memory will be allocated and registered in corresponding transports for RMA/AMO operations.
  • +
  • error is an erroneous combination of the parameters.
  • +
+
+
Parameters
+ + + + +
[in]contextApplication context to map (register) and allocate the memory on.
[in]paramsUser defined ucp_mem_map_params_t configurations for the UCP memory handle.
[out]memh_pUCP handle for the allocated segment.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_mem_unmap (ucp_context_h context,
ucp_mem_h memh 
)
+
+

This routine unmaps a user specified memory segment, that was previously mapped using the ucp_mem_map() routine. The unmap routine will also release the resources associated with the memory handle. When the function returns, the ucp_mem_h and associated remote key will be invalid and cannot be used with any UCP routine.

+
Note
Another well know terminology for the "unmap" operation that is typically used in the context of networking is memory "de-registration". The UCP library de-registers the memory the available hardware so it can be returned back to the operation system.
+

Error cases:

    +
  • Once memory is unmapped a network access to the region may cause a failure.
  • +
+
Parameters
+ + + +
[in]contextApplication context which was used to allocate/map the memory.
[in]memhHandle to memory region.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_mem_query (const ucp_mem_h memh,
ucp_mem_attr_tattr 
)
+
+

This routine returns address and length of memory segment mapped with ucp_mem_map() routine.

+
Parameters
+ + + +
[in]memhHandle to memory region.
[out]attrFilled with attributes of the UCP memory handle.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void ucp_mem_print_info (const char * mem_spec,
ucp_context_h context,
FILE * stream 
)
+
+

This routine maps memory and prints information about the created memory handle: including the mapped memory length, the allocation method, and other useful information associated with the memory handle.

+
Parameters
+ + + + +
[in]mem_specSize and optional type of the memory to map. The format of the string is: "<size>[,<type>]". For example:
    +
  • "32768" : allocate 32 kilobytes of host memory.
  • +
  • "1m,cuda" : allocate 1 megabayte of cuda memory.
  • +
+
[in]contextThe context on which the memory is mapped.
[in]streamOutput stream on which to print the information.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_mem_advise (ucp_context_h context,
ucp_mem_h memh,
ucp_mem_advise_params_tparams 
)
+
+

This routine advises the UCP about how to handle memory range beginning at address and size of length bytes. This call does not influence the semantics of the application, but may influence its performance. The UCP may ignore the advice.

+
Parameters
+ + + + +
[in]contextApplication context which was used to allocate/map the memory.
[in]memhHandle to memory region.
[in]paramsMemory base address and length. The advice field is used to pass memory use advice as defined in the ucp_mem_advice list The memory range must belong to the memh
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_memh_pack (ucp_mem_h memh,
const ucp_memh_pack_params_tparams,
void ** buffer_p,
size_t * buffer_size_p 
)
+
+

This routine allocates a memory buffer and packs a memory handle into the buffer. A packed memory key is an opaque object that provides the information that is necessary for a peer. This routine packs the memory handle in a portable format such that the object can be unpacked on any platform supported by the UCP library, e.g. if the memory handle was packed as a remote memory key (RKEY), it should be unpacked by ucp_ep_rkey_unpack(). In order to release the memory buffer allocated by this routine, the application is responsible for calling the ucp_memh_buffer_release() routine.

+
Note
    +
  • RKEYs for InfiniBand and Cray Aries networks typically includes InfiniBand and Aries key.
  • +
  • In order to enable remote direct memory access to the memory associated with the memory handle the application is responsible for sharing the RKEY with the peers that will initiate the access.
  • +
+
+
Parameters
+ + + + + +
[in]memhHandle to memory region.
[in]paramsMemory handle packing parameters, as defined by ucp_memh_pack_params_t.
[out]buffer_pMemory buffer allocated by the library. The buffer contains the packed memory handle.
[out]buffer_size_pSize (in bytes) of the buffer which contains packed memory handle.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_memh_buffer_release (void * buffer,
const ucp_memh_buffer_release_params_tparams 
)
+
+

This routine releases the buffer that was allocated using ucp_memh_pack().

+
Warning
    +
  • Once memory is released, an access to the memory may cause undefined behavior.
  • +
  • If the input memory address was not allocated using ucp_memh_pack() routine, the behavior of this routine is undefined.
  • +
+
+
Parameters
+ + + +
[in]bufferBuffer to release.
[in]paramsMemory handle buffer release parameters, as defined by ucp_memh_buffer_release_params_t.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_ep_rkey_unpack (ucp_ep_h ep,
const void * rkey_buffer,
ucp_rkey_hrkey_p 
)
+
+

This routine unpacks the remote key (RKEY) object into the local memory such that it can be accessed and used by UCP routines. The RKEY object has to be packed using the ucp_rkey_pack() routine. Application code should not make any changes to the content of the RKEY buffer.

+
Note
The application is responsible for releasing the RKEY object when it is no longer needed, by calling the ucp_rkey_destroy() routine.
+
+The remote key object can be used for communications only on the endpoint on which it was unpacked.
+
Parameters
+ + + + +
[in]epEndpoint to access using the remote key.
[in]rkey_bufferPacked rkey.
[out]rkey_pRemote key handle.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_rkey_ptr (ucp_rkey_h rkey,
uint64_t raddr,
void ** addr_p 
)
+
+

This routine returns a local pointer to the remote memory described by the rkey.

+
Note
This routine can return a valid pointer only for the endpoints that are reachable via shared memory.
+
Parameters
+ + + + +
[in]rkeyA remote key handle.
[in]raddrA remote memory address within the memory area described by the rkey.
[out]addr_pA pointer that can be used for direct access to the remote memory.
+
+
+
Returns
Error code as defined by ucs_status_t if the remote memory cannot be accessed directly or the remote memory address is not valid.
+ +
+
+ +
+
+ + + + + + + + +
void ucp_rkey_destroy (ucp_rkey_h rkey)
+
+

This routine destroys the RKEY object and the memory that was allocated using the ucp_ep_rkey_unpack() routine. This routine also releases any resources that are associated with the RKEY object.

+
Warning
    +
  • Once the RKEY object is released an access to the memory will cause an undefined failure.
  • +
  • If the RKEY object was not created using ucp_ep_rkey_unpack() routine the behavior of this routine is undefined.
  • +
  • The RKEY object must be destroyed after all outstanding operations which are using it are flushed, and before the endpoint on which it was unpacked is destroyed.
  • +
+
+
Parameters
+ + +
[in]rkeyRemote key to destroy.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_rkey_pack (ucp_context_h context,
ucp_mem_h memh,
void ** rkey_buffer_p,
size_t * size_p 
)
+
+
Deprecated:
Replaced by ucp_memh_pack().
+

This routine allocates a memory buffer and packs a remote access key (RKEY) object into it. RKEY is an opaque object that provides the information that is necessary for remote memory access. This routine packs the RKEY object in a portable format such that the object can be unpacked on any platform supported by the UCP library. In order to release the memory buffer allocated by this routine, the application is responsible for calling the ucp_rkey_buffer_release() routine.

+
Note
    +
  • RKEYs for InfiniBand and Cray Aries networks typically include the InfiniBand and Aries key.
  • +
  • In order to enable remote direct memory access to the memory associated with the memory handle, the application is responsible for sharing the RKEY with the peers that will initiate the access.
  • +
+
+
Parameters
+ + + + + +
[in]contextApplication context which was used to allocate/map the memory.
[in]memhHandle to the memory region.
[out]rkey_buffer_pMemory buffer allocated by the library. The buffer contains the packed RKEY.
[out]size_pSize (in bytes) of the packed RKEY.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + +
void ucp_rkey_buffer_release (void * rkey_buffer)
+
+
Deprecated:
Replaced by ucp_memh_buffer_release().
+

This routine releases the buffer that was allocated using ucp_rkey_pack().

+
Warning
    +
  • Once memory is released, an access to the memory may cause undefined behavior.
  • +
  • If the input memory address was not allocated using ucp_rkey_pack() routine, the behavior of this routine is undefined.
  • +
+
+
Parameters
+ + +
[in]rkey_bufferBuffer to release.
+
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___m_e_m.js b/api/v1.14/html/group___u_c_p___m_e_m.js new file mode 100644 index 00000000000..ebc38efe77d --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m.js @@ -0,0 +1,86 @@ +var group___u_c_p___m_e_m = +[ + [ "ucp_mem_map_params", "group___u_c_p___m_e_m.html#structucp__mem__map__params", [ + [ "field_mask", "group___u_c_p___m_e_m.html#aaeaeceb96d57c6cd5048abeda3fcb87f", null ], + [ "address", "group___u_c_p___m_e_m.html#acc3761c4bbcca9c1defa742a8db08bbb", null ], + [ "length", "group___u_c_p___m_e_m.html#a36d735fe974dd85677474c028edb2af8", null ], + [ "flags", "group___u_c_p___m_e_m.html#a668567560d65f2e0458159d444fb89ca", null ], + [ "prot", "group___u_c_p___m_e_m.html#af8bb06187e2c1f180a24d867a4922b2e", null ], + [ "memory_type", "group___u_c_p___m_e_m.html#a71916e12e0fa7706355965de2edd7fc9", null ], + [ "exported_memh_buffer", "group___u_c_p___m_e_m.html#af4b12bd23e90295c7503e6dc19063a6b", null ] + ] ], + [ "ucp_mem_advise_params", "group___u_c_p___m_e_m.html#structucp__mem__advise__params", [ + [ "field_mask", "group___u_c_p___m_e_m.html#a01c09d6fdafcd62e733cece26166e036", null ], + [ "address", "group___u_c_p___m_e_m.html#ab25f1b439c184a0bfb93eda0c9ceb9f7", null ], + [ "length", "group___u_c_p___m_e_m.html#a33e763e90d0cc7aad526a69dee8ef900", null ], + [ "advice", "group___u_c_p___m_e_m.html#a26833bd101fcb6b4c1024b2975aed5dc", null ] + ] ], + [ "ucp_memh_pack_params", "group___u_c_p___m_e_m.html#structucp__memh__pack__params", [ + [ "field_mask", "group___u_c_p___m_e_m.html#aafd1c1f51c5170b30695d9f73aad1f99", null ], + [ "flags", "group___u_c_p___m_e_m.html#a3e9ba8e33dd1daf74e341dee2abacff7", null ] + ] ], + [ "ucp_memh_buffer_release_params", "group___u_c_p___m_e_m.html#structucp__memh__buffer__release__params", [ + [ "field_mask", "group___u_c_p___m_e_m.html#a29dab951ef791f596be6a08e7fc88cb6", null ] + ] ], + [ "ucp_mem_attr", "group___u_c_p___m_e_m.html#structucp__mem__attr", [ + [ "field_mask", "group___u_c_p___m_e_m.html#ac2b9b68d716c78b3750f50f599259e66", null ], + [ "address", "group___u_c_p___m_e_m.html#ab9a2b772838f436158ae4e25d8bb21e4", null ], + [ "length", "group___u_c_p___m_e_m.html#ae807002e05a4a269a74c767e23f49fa8", null ], + [ "mem_type", "group___u_c_p___m_e_m.html#ac88b3fb764dd2af1a77bbe90161b2896", null ] + ] ], + [ "ucp_mem_map_params_t", "group___u_c_p___m_e_m.html#gaf20a30e6819c75f1a8a8727572661a99", null ], + [ "ucp_mem_advice_t", "group___u_c_p___m_e_m.html#ga65ad5bf9d9e62766b5133fd80e3af613", null ], + [ "ucp_mem_advise_params_t", "group___u_c_p___m_e_m.html#ga6d5e3085cb8086de3592e15cc19a3b50", null ], + [ "ucp_memh_pack_params_t", "group___u_c_p___m_e_m.html#gaa337a1ae88aed5f497d492d9406cf8c0", null ], + [ "ucp_memh_buffer_release_params_t", "group___u_c_p___m_e_m.html#ga0eab5641bbc55da181862a06d4d79101", null ], + [ "ucp_rkey_h", "group___u_c_p___m_e_m.html#gaefeb4e775983f4313691a6b465e36c24", null ], + [ "ucp_mem_h", "group___u_c_p___m_e_m.html#gacf61d6417524329d75f239d3f2ea8d3b", null ], + [ "ucp_mem_attr_t", "group___u_c_p___m_e_m.html#ga80089f1bd72dea239fbcb45bd6414c26", null ], + [ "ucp_mem_map_params_field", "group___u_c_p___m_e_m.html#ga1b78010c24c834aadc9fb8f1083e226f", [ + [ "UCP_MEM_MAP_PARAM_FIELD_ADDRESS", "group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faa3ddd6c11c7610ae3c97fcb4473d9332", null ], + [ "UCP_MEM_MAP_PARAM_FIELD_LENGTH", "group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faa4aa7e36cd51262837f9179cb74fb22a", null ], + [ "UCP_MEM_MAP_PARAM_FIELD_FLAGS", "group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fafc2e699ec811b6848bfc40d4a6c1b049", null ], + [ "UCP_MEM_MAP_PARAM_FIELD_PROT", "group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fa349ca907322a708479795afef1fe28ff", null ], + [ "UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE", "group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fab5d6cd1e76f334a4ae5d10d5955d51b7", null ], + [ "UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER", "group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faf130e704ffef248e615f5aeb25208ce9", null ] + ] ], + [ "ucp_mem_advise_params_field", "group___u_c_p___m_e_m.html#ga3c0f7ca217c77fa0ae8649e21b24a1fc", [ + [ "UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS", "group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fca19cd431b1a46a62abaf904d0358ffaad", null ], + [ "UCP_MEM_ADVISE_PARAM_FIELD_LENGTH", "group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fcac60bdd12018a716587c71883ae408b60", null ], + [ "UCP_MEM_ADVISE_PARAM_FIELD_ADVICE", "group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fca8834ee80833e5509eea118807dc1a213", null ], + [ "UCP_MEM_MAP_NONBLOCK", "group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba31fa3f795110becccb25734067b5e203", null ], + [ "UCP_MEM_MAP_ALLOCATE", "group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba8cb2c18c15da7e8da9aa2de5b407957a", null ], + [ "UCP_MEM_MAP_FIXED", "group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba937051276d5a7825211189c84d7f2922", null ], + [ "UCP_MEM_MAP_PROT_LOCAL_READ", "group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a78c92c33fb131e7084b6a2933632ec17", null ], + [ "UCP_MEM_MAP_PROT_LOCAL_WRITE", "group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a6961fd2dcb7ff1fd5980f2d09bb40c39", null ], + [ "UCP_MEM_MAP_PROT_REMOTE_READ", "group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a2dc03b7f80ce18c5ec948d1039342bdb", null ], + [ "UCP_MEM_MAP_PROT_REMOTE_WRITE", "group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a4d1429c096e17c691ca710aeb6385fe8", null ] + ] ], + [ "ucp_mem_advice", "group___u_c_p___m_e_m.html#ga1a73c4a7fc1d8a6d75e6b53256eec0b8", [ + [ "UCP_MADV_NORMAL", "group___u_c_p___m_e_m.html#gga1a73c4a7fc1d8a6d75e6b53256eec0b8a3a335aa51dc934e57f4ccbd26fb32fb0", null ], + [ "UCP_MADV_WILLNEED", "group___u_c_p___m_e_m.html#gga1a73c4a7fc1d8a6d75e6b53256eec0b8a882711eaac0fe1172570783e9824e12f", null ] + ] ], + [ "ucp_memh_pack_params_field", "group___u_c_p___m_e_m.html#ga9143b85c7c40d6b13020a13bc13f9dbf", [ + [ "UCP_MEMH_PACK_PARAM_FIELD_FLAGS", "group___u_c_p___m_e_m.html#gga9143b85c7c40d6b13020a13bc13f9dbfaa88937590bafafda1088444634173fa8", null ] + ] ], + [ "ucp_memh_pack_flags", "group___u_c_p___m_e_m.html#ga83ac2dbb4fe6b93948b00c9a2ad16efe", [ + [ "UCP_MEMH_PACK_FLAG_EXPORT", "group___u_c_p___m_e_m.html#gga83ac2dbb4fe6b93948b00c9a2ad16efead1933cc321da0f7ab0428070d36d1e00", null ] + ] ], + [ "ucp_mem_attr_field", "group___u_c_p___m_e_m.html#gab0d7a54391c964c59b2cfbf30e23dc14", [ + [ "UCP_MEM_ATTR_FIELD_ADDRESS", "group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14a7255d71b73495f3466b2b3938f85630f", null ], + [ "UCP_MEM_ATTR_FIELD_LENGTH", "group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14aaf7684459badd65a4e70a65813ae1e35", null ], + [ "UCP_MEM_ATTR_FIELD_MEM_TYPE", "group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14a97c63bcd6332d0556e4439bc65531116", null ] + ] ], + [ "ucp_mem_map", "group___u_c_p___m_e_m.html#ga1af508a609cc7f2cebf4b33f9ee6ac66", null ], + [ "ucp_mem_unmap", "group___u_c_p___m_e_m.html#gac8bd616375fe05594690b5e0cddd6318", null ], + [ "ucp_mem_query", "group___u_c_p___m_e_m.html#ga080c10aaf347682594092d796bbc913f", null ], + [ "ucp_mem_print_info", "group___u_c_p___m_e_m.html#ga3240a60d906b2ecf5d0a19acdf13850f", null ], + [ "ucp_mem_advise", "group___u_c_p___m_e_m.html#ga455313831b8734fe1a824109c3ffc588", null ], + [ "ucp_memh_pack", "group___u_c_p___m_e_m.html#ga8540eb3c5b885dfddbca0e39e00117ad", null ], + [ "ucp_memh_buffer_release", "group___u_c_p___m_e_m.html#gab016c446e78e171c03a2fe11ab5fe48d", null ], + [ "ucp_ep_rkey_unpack", "group___u_c_p___m_e_m.html#ga92353d1cb038a4e281f0a1973937079d", null ], + [ "ucp_rkey_ptr", "group___u_c_p___m_e_m.html#ga68f3458805ba15d6a5883219ecd56c1e", null ], + [ "ucp_rkey_destroy", "group___u_c_p___m_e_m.html#gae33d7cc264e0fe1b11e27ae4289fba39", null ], + [ "ucp_rkey_pack", "group___u_c_p___m_e_m.html#gadbb6b3ace4ab988cd7660319123407b4", null ], + [ "ucp_rkey_buffer_release", "group___u_c_p___m_e_m.html#ga8bc005f53da015f4a062087e6eb064e9", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__advise__params.js b/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__advise__params.js new file mode 100644 index 00000000000..89afa1c6462 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__advise__params.js @@ -0,0 +1,7 @@ +var group___u_c_p___m_e_m_structucp__mem__advise__params = +[ + [ "field_mask", "group___u_c_p___m_e_m.html#a01c09d6fdafcd62e733cece26166e036", null ], + [ "address", "group___u_c_p___m_e_m.html#ab25f1b439c184a0bfb93eda0c9ceb9f7", null ], + [ "length", "group___u_c_p___m_e_m.html#a33e763e90d0cc7aad526a69dee8ef900", null ], + [ "advice", "group___u_c_p___m_e_m.html#a26833bd101fcb6b4c1024b2975aed5dc", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__attr.js b/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__attr.js new file mode 100644 index 00000000000..597f368ff1a --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__attr.js @@ -0,0 +1,7 @@ +var group___u_c_p___m_e_m_structucp__mem__attr = +[ + [ "field_mask", "group___u_c_p___m_e_m.html#ac2b9b68d716c78b3750f50f599259e66", null ], + [ "address", "group___u_c_p___m_e_m.html#ab9a2b772838f436158ae4e25d8bb21e4", null ], + [ "length", "group___u_c_p___m_e_m.html#ae807002e05a4a269a74c767e23f49fa8", null ], + [ "mem_type", "group___u_c_p___m_e_m.html#ac88b3fb764dd2af1a77bbe90161b2896", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__map__params.js b/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__map__params.js new file mode 100644 index 00000000000..a27f6a1c9e5 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m_structucp__mem__map__params.js @@ -0,0 +1,10 @@ +var group___u_c_p___m_e_m_structucp__mem__map__params = +[ + [ "field_mask", "group___u_c_p___m_e_m.html#aaeaeceb96d57c6cd5048abeda3fcb87f", null ], + [ "address", "group___u_c_p___m_e_m.html#acc3761c4bbcca9c1defa742a8db08bbb", null ], + [ "length", "group___u_c_p___m_e_m.html#a36d735fe974dd85677474c028edb2af8", null ], + [ "flags", "group___u_c_p___m_e_m.html#a668567560d65f2e0458159d444fb89ca", null ], + [ "prot", "group___u_c_p___m_e_m.html#af8bb06187e2c1f180a24d867a4922b2e", null ], + [ "memory_type", "group___u_c_p___m_e_m.html#a71916e12e0fa7706355965de2edd7fc9", null ], + [ "exported_memh_buffer", "group___u_c_p___m_e_m.html#af4b12bd23e90295c7503e6dc19063a6b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___m_e_m_structucp__memh__buffer__release__params.js b/api/v1.14/html/group___u_c_p___m_e_m_structucp__memh__buffer__release__params.js new file mode 100644 index 00000000000..1644ec1bb6b --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m_structucp__memh__buffer__release__params.js @@ -0,0 +1,4 @@ +var group___u_c_p___m_e_m_structucp__memh__buffer__release__params = +[ + [ "field_mask", "group___u_c_p___m_e_m.html#a29dab951ef791f596be6a08e7fc88cb6", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___m_e_m_structucp__memh__pack__params.js b/api/v1.14/html/group___u_c_p___m_e_m_structucp__memh__pack__params.js new file mode 100644 index 00000000000..26c51a92556 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___m_e_m_structucp__memh__pack__params.js @@ -0,0 +1,5 @@ +var group___u_c_p___m_e_m_structucp__memh__pack__params = +[ + [ "field_mask", "group___u_c_p___m_e_m.html#aafd1c1f51c5170b30695d9f73aad1f99", null ], + [ "flags", "group___u_c_p___m_e_m.html#a3e9ba8e33dd1daf74e341dee2abacff7", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_a_k_e_u_p.html b/api/v1.14/html/group___u_c_p___w_a_k_e_u_p.html new file mode 100644 index 00000000000..c06b99828ef --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_a_k_e_u_p.html @@ -0,0 +1,305 @@ + + + + + + +UCX: UCP Wake-up routines + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_worker_get_efd (ucp_worker_h worker, int *fd)
 Obtain an event file descriptor for event notification. More...
 
ucs_status_t ucp_worker_wait (ucp_worker_h worker)
 Wait for an event of the worker. More...
 
void ucp_worker_wait_mem (ucp_worker_h worker, void *address)
 Wait for memory update on the address. More...
 
ucs_status_t ucp_worker_arm (ucp_worker_h worker)
 Turn on event notification for the next event. More...
 
ucs_status_t ucp_worker_signal (ucp_worker_h worker)
 Cause an event of the worker. More...
 
+

Detailed Description

+

UCP Wake-up routines

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_get_efd (ucp_worker_h worker,
int * fd 
)
+
+

This routine returns a valid file descriptor for polling functions. The file descriptor will get signaled when an event occurs, as part of the wake-up mechanism. Signaling means a call to poll() or select() with this file descriptor will return at this point, with this descriptor marked as the reason (or one of the reasons) the function has returned. The user does not need to release the obtained file descriptor.

+

The wake-up mechanism exists to allow for the user process to register for notifications on events of the underlying interfaces, and wait until such occur. This is an alternative to repeated polling for request completion. The goal is to allow for waiting while consuming minimal resources from the system. This is recommended for cases where traffic is infrequent, and latency can be traded for lower resource consumption while waiting for it.

+

There are two alternative ways to use the wakeup mechanism: the first is the file descriptor obtained per worker (this function) and the second is the ucp_worker_wait function for waiting on the next event internally.

+
Note
UCP features have to be triggered with UCP_FEATURE_WAKEUP to select proper transport
+
Parameters
+ + + +
[in]workerWorker of notified events.
[out]fdFile descriptor.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_worker_wait (ucp_worker_h worker)
+
+

This routine waits (blocking) until an event has happened, as part of the wake-up mechanism.

+

This function is guaranteed to return only if new communication events occur on the worker. Therefore one must drain all existing events before waiting on the file descriptor. This can be achieved by calling ucp_worker_progress repeatedly until it returns 0.

+

There are two alternative ways to use the wakeup mechanism. The first is by polling on a per-worker file descriptor obtained from ucp_worker_get_efd. The second is by using this function to perform an internal wait for the next event associated with the specified worker.

+
Note
During the blocking call the wake-up mechanism relies on other means of notification and may not progress some of the requests as it would when calling ucp_worker_progress (which is not invoked in that duration).
+
+UCP features have to be triggered with UCP_FEATURE_WAKEUP to select proper transport
+
Parameters
+ + +
[in]workerWorker to wait for events on.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_worker_wait_mem (ucp_worker_h worker,
void * address 
)
+
+

This routine waits for a memory update at the local memory address. This is a blocking routine. The routine returns when the memory address is updated ("write") or an event occurs in the system.

+

This function is guaranteed to return only if new communication events occur on the worker or address is modified. Therefore one must drain all existing events before waiting on the file descriptor. This can be achieved by calling ucp_worker_progress repeatedly until it returns 0.

+
Note
This routine can be used by an application that executes busy-waiting loop checking for a memory update. Instead of continuous busy-waiting on an address the application can use ucp_worker_wait_mem, which may suspend execution until the memory is updated. The goal of the routine is to provide an opportunity for energy savings for architectures that support this functionality.
+
Parameters
+ + + +
[in]workerWorker to wait for updates on.
[in]addressLocal memory address
+
+
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_worker_arm (ucp_worker_h worker)
+
+

This routine needs to be called before waiting on each notification on this worker, so will typically be called once the processing of the previous event is over, as part of the wake-up mechanism.

+

The worker must be armed before waiting on an event (must be re-armed after it has been signaled for re-use) with ucp_worker_arm. The events triggering a signal of the file descriptor from ucp_worker_get_efd depend on the interfaces used by the worker and defined in the transport layer, and typically represent a request completion or newly available resources. It can also be triggered by calling ucp_worker_signal .

+

The file descriptor is guaranteed to become signaled only if new communication events occur on the worker. Therefore one must drain all existing events before waiting on the file descriptor. This can be achieved by calling ucp_worker_progress repeatedly until it returns 0.

+
void application_initialization() {
// should be called once in application init flow and before
// process_communication() is used
...
status = ucp_worker_get_efd(worker, &fd);
...
}
void process_communication() {
// should be called every time need to wait for some condition such as
// ucp request completion in sleep mode.
for (;;) {
// check for stop condition as long as progress is made
if (check_for_events()) {
break;
} else if (ucp_worker_progress(worker)) {
continue; // some progress happened but condition not met
}
// arm the worker and clean-up fd
status = ucp_worker_arm(worker);
if (UCS_OK == status) {
poll(&fds, nfds, timeout); // wait for events (sleep mode)
} else if (UCS_ERR_BUSY == status) {
continue; // could not arm, need to progress more
} else {
abort();
}
}
}
Note
UCP features have to be triggered with UCP_FEATURE_WAKEUP to select proper transport
+
Parameters
+ + +
[in]workerWorker of notified events.
+
+
+
Returns
UCS_OK The operation completed successfully. File descriptor will be signaled by new events.
+
+UCS_ERR_BUSY There are unprocessed events which prevent the file descriptor from being armed. These events should be removed by calling ucp_worker_progress(). The operation is not completed. File descriptor will not be signaled by new events.
+
+Other different error codes in case of issues.
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_worker_signal (ucp_worker_h worker)
+
+

This routine signals that the event has happened, as part of the wake-up mechanism. This function causes a blocking call to ucp_worker_wait or waiting on a file descriptor from ucp_worker_get_efd to return, even if no event from the underlying interfaces has taken place.

+
Note
It's safe to use this routine from any thread, even if UCX is compiled without multi-threading support and/or initialized with any value of ucp_params_t::mt_workers_shared and ucp_worker_params_t::thread_mode parameters
+
Parameters
+ + +
[in]workerWorker to wait for events on.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___w_a_k_e_u_p.js b/api/v1.14/html/group___u_c_p___w_a_k_e_u_p.js new file mode 100644 index 00000000000..b33318d5bc3 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_a_k_e_u_p.js @@ -0,0 +1,8 @@ +var group___u_c_p___w_a_k_e_u_p = +[ + [ "ucp_worker_get_efd", "group___u_c_p___w_a_k_e_u_p.html#gadf849649110fa338fd891548198a578b", null ], + [ "ucp_worker_wait", "group___u_c_p___w_a_k_e_u_p.html#gaa6d1fba4d8a2525b74174a8c344ae9aa", null ], + [ "ucp_worker_wait_mem", "group___u_c_p___w_a_k_e_u_p.html#ga8b9a2ca2795f083e3b1250d698162aa6", null ], + [ "ucp_worker_arm", "group___u_c_p___w_a_k_e_u_p.html#gadce97937294aae0f5f599d58d68904d6", null ], + [ "ucp_worker_signal", "group___u_c_p___w_a_k_e_u_p.html#ga4f83bf7620a2ea765fb7167c756b8e48", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r.html b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r.html new file mode 100644 index 00000000000..9512fbd03a9 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r.html @@ -0,0 +1,2063 @@ + + + + + + +UCX: UCP Worker + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  ucp_worker_attr
 UCP worker attributes. More...
 
struct  ucp_worker_params
 Tuning parameters for the UCP worker. More...
 
struct  ucp_worker_address_attr
 UCP worker address attributes. More...
 
struct  ucp_listener_attr
 UCP listener attributes. More...
 
struct  ucp_conn_request_attr
 UCP listener's connection request attributes. More...
 
struct  ucp_listener_params
 Parameters for a UCP listener object. More...
 
struct  ucp_am_handler_param
 Active Message handler parameters passed to ucp_worker_set_am_recv_handler routine. More...
 
struct  ucp_am_recv_param
 Operation parameters provided in ucp_am_recv_callback_t callback. More...
 
struct  ucp_listener_accept_handler
 
struct  ucp_listener_conn_handler
 UCP callback to handle the connection request in a client-server connection establishment flow. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct ucp_worker_attr ucp_worker_attr_t
 UCP worker attributes. More...
 
typedef struct ucp_worker_params ucp_worker_params_t
 Tuning parameters for the UCP worker. More...
 
typedef struct ucp_worker_address_attr ucp_worker_address_attr_t
 UCP worker address attributes. More...
 
typedef struct ucp_listener_attr ucp_listener_attr_t
 UCP listener attributes. More...
 
typedef struct ucp_conn_request_attr ucp_conn_request_attr_t
 UCP listener's connection request attributes. More...
 
typedef struct ucp_listener_params ucp_listener_params_t
 Parameters for a UCP listener object. More...
 
typedef struct ucp_am_handler_param ucp_am_handler_param_t
 Active Message handler parameters passed to ucp_worker_set_am_recv_handler routine. More...
 
typedef struct ucp_listener_accept_handler ucp_listener_accept_handler_t
 
typedef struct ucp_am_recv_param ucp_am_recv_param_t
 Operation parameters provided in ucp_am_recv_callback_t callback. More...
 
typedef struct ucp_address ucp_address_t
 UCP worker address. More...
 
typedef struct ucp_listener * ucp_listener_h
 UCP listen handle. More...
 
typedef struct ucp_worker * ucp_worker_h
 UCP Worker. More...
 
typedef void(* ucp_listener_accept_callback_t) (ucp_ep_h ep, void *arg)
 A callback for accepting client/server connections on a listener ucp_listener_h. More...
 
typedef void(* ucp_listener_conn_callback_t) (ucp_conn_request_h conn_request, void *arg)
 A callback for handling of incoming connection request conn_request from a client. More...
 
typedef struct ucp_listener_conn_handler ucp_listener_conn_handler_t
 UCP callback to handle the connection request in a client-server connection establishment flow. More...
 
typedef enum ucp_wakeup_event_types ucp_wakeup_event_t
 UCP worker wakeup events mask. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  ucp_worker_params_field {
+  UCP_WORKER_PARAM_FIELD_THREAD_MODE = UCS_BIT(0), +UCP_WORKER_PARAM_FIELD_CPU_MASK = UCS_BIT(1), +UCP_WORKER_PARAM_FIELD_EVENTS = UCS_BIT(2), +UCP_WORKER_PARAM_FIELD_USER_DATA = UCS_BIT(3), +
+  UCP_WORKER_PARAM_FIELD_EVENT_FD = UCS_BIT(4), +UCP_WORKER_PARAM_FIELD_FLAGS = UCS_BIT(5), +UCP_WORKER_PARAM_FIELD_NAME = UCS_BIT(6), +UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT = UCS_BIT(7), +
+  UCP_WORKER_PARAM_FIELD_CLIENT_ID = UCS_BIT(8) +
+ }
 UCP worker parameters field mask. More...
 
enum  ucp_worker_flags_t { UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK = UCS_BIT(0) + }
 UCP worker flags. More...
 
enum  ucp_listener_params_field { UCP_LISTENER_PARAM_FIELD_SOCK_ADDR = UCS_BIT(0), +UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER = UCS_BIT(1), +UCP_LISTENER_PARAM_FIELD_CONN_HANDLER = UCS_BIT(2) + }
 UCP listener parameters field mask. More...
 
enum  ucp_worker_address_flags_t { UCP_WORKER_ADDRESS_FLAG_NET_ONLY = UCS_BIT(0) + }
 UCP worker address flags. More...
 
enum  ucp_worker_attr_field {
+  UCP_WORKER_ATTR_FIELD_THREAD_MODE = UCS_BIT(0), +UCP_WORKER_ATTR_FIELD_ADDRESS = UCS_BIT(1), +UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS = UCS_BIT(2), +UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER = UCS_BIT(3), +
+  UCP_WORKER_ATTR_FIELD_NAME = UCS_BIT(4), +UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING = UCS_BIT(5) +
+ }
 UCP worker attributes field mask. More...
 
enum  ucp_worker_address_attr_field { UCP_WORKER_ADDRESS_ATTR_FIELD_UID = UCS_BIT(0) + }
 UCP worker address attributes field mask. More...
 
enum  ucp_listener_attr_field { UCP_LISTENER_ATTR_FIELD_SOCKADDR = UCS_BIT(0) + }
 UCP listener attributes field mask. More...
 
enum  ucp_conn_request_attr_field { UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR = UCS_BIT(0), +UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID = UCS_BIT(1) + }
 UCP listener's connection request attributes field mask. More...
 
enum  ucp_am_cb_flags { UCP_AM_FLAG_WHOLE_MSG = UCS_BIT(0), +UCP_AM_FLAG_PERSISTENT_DATA = UCS_BIT(1) + }
 Flags for a UCP Active Message callback. More...
 
enum  ucp_send_am_flags {
+  UCP_AM_SEND_FLAG_REPLY = UCS_BIT(0), +UCP_AM_SEND_FLAG_EAGER = UCS_BIT(1), +UCP_AM_SEND_FLAG_RNDV = UCS_BIT(2), +UCP_AM_SEND_FLAG_COPY_HEADER = UCS_BIT(3), +
+  UCP_AM_SEND_REPLY = UCP_AM_SEND_FLAG_REPLY +
+ }
 Flags for sending a UCP Active Message. More...
 
enum  ucp_wakeup_event_types {
+  UCP_WAKEUP_RMA = UCS_BIT(0), +UCP_WAKEUP_AMO = UCS_BIT(1), +UCP_WAKEUP_TAG_SEND = UCS_BIT(2), +UCP_WAKEUP_TAG_RECV = UCS_BIT(3), +
+  UCP_WAKEUP_TX = UCS_BIT(10), +UCP_WAKEUP_RX = UCS_BIT(11), +UCP_WAKEUP_EDGE = UCS_BIT(16) +
+ }
 UCP worker wakeup events mask. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucp_worker_create (ucp_context_h context, const ucp_worker_params_t *params, ucp_worker_h *worker_p)
 Create a worker object. More...
 
void ucp_worker_destroy (ucp_worker_h worker)
 Destroy a worker object. More...
 
ucs_status_t ucp_worker_query (ucp_worker_h worker, ucp_worker_attr_t *attr)
 Get attributes specific to a particular worker. More...
 
void ucp_worker_print_info (ucp_worker_h worker, FILE *stream)
 Print information about the worker. More...
 
void ucp_worker_release_address (ucp_worker_h worker, ucp_address_t *address)
 Release an address of the worker object. More...
 
ucs_status_t ucp_worker_address_query (ucp_address_t *address, ucp_worker_address_attr_t *attr)
 Get attributes of the particular worker address. More...
 
unsigned ucp_worker_progress (ucp_worker_h worker)
 Progress all communications on a specific worker. More...
 
ssize_t ucp_stream_worker_poll (ucp_worker_h worker, ucp_stream_poll_ep_t *poll_eps, size_t max_eps, unsigned flags)
 Poll for endpoints that are ready to consume streaming data. More...
 
ucs_status_t ucp_listener_create (ucp_worker_h worker, const ucp_listener_params_t *params, ucp_listener_h *listener_p)
 Create a listener to accept connections on. Connection requests on the listener will arrive at a local address specified by the user. More...
 
void ucp_listener_destroy (ucp_listener_h listener)
 Stop accepting connections on a local address of the worker object. More...
 
ucs_status_t ucp_listener_query (ucp_listener_h listener, ucp_listener_attr_t *attr)
 Get attributes specific to a particular listener. More...
 
ucs_status_t ucp_conn_request_query (ucp_conn_request_h conn_request, ucp_conn_request_attr_t *attr)
 Get attributes specific to a particular connection request received on the server side. More...
 
ucs_status_t ucp_listener_reject (ucp_listener_h listener, ucp_conn_request_h conn_request)
 Reject an incoming connection request. More...
 
ucs_status_t ucp_worker_set_am_recv_handler (ucp_worker_h worker, const ucp_am_handler_param_t *param)
 Add user defined callback for Active Message. More...
 
ucs_status_t ucp_worker_fence (ucp_worker_h worker)
 Assures ordering between non-blocking operations. More...
 
ucs_status_ptr_t ucp_worker_flush_nbx (ucp_worker_h worker, const ucp_request_param_t *param)
 Flush outstanding AMO and RMA operations on the worker. More...
 
ucs_status_t ucp_worker_flush (ucp_worker_h worker)
 Flush outstanding AMO and RMA operations on the worker. More...
 
ucs_status_t ucp_worker_get_address (ucp_worker_h worker, ucp_address_t **address_p, size_t *address_length_p)
 Get the address of the worker object. More...
 
ucs_status_t ucp_worker_set_am_handler (ucp_worker_h worker, uint16_t id, ucp_am_callback_t cb, void *arg, uint32_t flags)
 Add user defined callback for Active Message. More...
 
ucs_status_ptr_t ucp_worker_flush_nb (ucp_worker_h worker, unsigned flags, ucp_send_callback_t cb)
 Flush outstanding AMO and RMA operations on the worker. More...
 
+

Detailed Description

+

UCP Worker routines

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucp_worker_attr
+
+

The structure defines the attributes which characterize the particular worker.

+
Examples:
ucp_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_worker_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+ucs_thread_mode_t +thread_mode +

Thread safe level of the worker.

+
+uint32_t +address_flags +

Flags indicating requested details of the worker address. If UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS bit is set in the field_mask, this value should be set as well. Possible flags are specified in ucp_worker_address_flags_t.

Note
This is an input attribute.
+
+ucp_address_t * +address +

Worker address, which can be passed to remote instances of the UCP library in order to connect to this worker. The memory for the address handle is allocated by ucp_worker_query() routine, and must be released by using ucp_worker_release_address() routine.

+
+size_t +address_length +

Size of worker address in bytes.

+
+size_t +max_am_header +

Maximum allowed header size for ucp_am_send_nbx routine.

+
+char +name[UCP_ENTITY_NAME_MAX] +

Tracing and analysis tools can identify the worker using this name.

+
+size_t +max_debug_string +

Maximum debug string size that can be filled with ucp_request_query.

+
+ +
+
+ +
+
+ + + + +
struct ucp_worker_params
+
+

The structure defines the parameters that are used for the UCP worker tuning during the UCP worker creation.

+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_worker_params_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+ucs_thread_mode_t +thread_mode +

The parameter thread_mode suggests the thread safety mode which worker and the associated resources should be created with. This is an optional parameter. The default value is UCS_THREAD_MODE_SINGLE and it is used when the value of the parameter is not set. When this parameter along with its corresponding bit in the field_mask - UCP_WORKER_PARAM_FIELD_THREAD_MODE is set, the ucp_worker_create attempts to create worker with this thread mode. The thread mode with which worker is created can differ from the suggested mode. The actual thread mode of the worker should be obtained using the query interface ucp_worker_query.

+
+ucs_cpu_set_t +cpu_mask +

Mask of which CPUs worker resources should preferably be allocated on. This value is optional. If it's not set (along with its corresponding bit in the field_mask - UCP_WORKER_PARAM_FIELD_CPU_MASK), resources are allocated according to system's default policy.

+
+unsigned +events +

Mask of events (ucp_wakeup_event_t) which are expected on wakeup. This value is optional. If it's not set (along with its corresponding bit in the field_mask - UCP_WORKER_PARAM_FIELD_EVENTS), all types of events will trigger on wakeup.

+
+void * +user_data +

User data associated with the current worker. This value is optional. If it's not set (along with its corresponding bit in the field_mask - UCP_WORKER_PARAM_FIELD_USER_DATA), it will default to NULL.

+
+int +event_fd +

External event file descriptor. This value is optional. If UCP_WORKER_PARAM_FIELD_EVENT_FD is set in the field_mask, events on the worker will be reported on the provided event file descriptor. In this case, calling ucp_worker_get_efd will result in an error. The provided file descriptor must be capable of aggregating notifications for arbitrary events, for example epoll(7) on Linux systems. user_data will be used as the event user-data on systems which support it. For example, on Linux, it will be placed in epoll_data_t::ptr, when returned from epoll_wait(2).

+

Otherwise, events will be reported to the event file descriptor returned from ucp_worker_get_efd().

+
+uint64_t +flags +

Worker flags. This value is optional. If UCP_WORKER_PARAM_FIELD_FLAGS is not set in the field_mask, the value of this field will default to 0.

+
+const char * +name +

Tracing and analysis tools can identify the worker using this name. To retrieve the worker's name, use ucp_worker_query, as the name you supply may be changed by UCX under some circumstances, e.g. a name conflict. This field is only assigned if you set UCP_WORKER_PARAM_FIELD_NAME in the field mask. If not, then a default unique name will be created for you.

+
+size_t +am_alignment +

Minimal address alignment of the active message data pointer as passed in argument data to the active message handler, defined as ucp_am_recv_callback_t.

+
+uint64_t +client_id +

Client id that is sent as part of the connection request payload when connecting to a remote socket address. On the remote side, this value can be obtained from ucp_conn_request_h using ucp_conn_request_query.

+
+ +
+
+ +
+
+ + + + +
struct ucp_worker_address_attr
+
+

The structure defines the attributes of the particular worker address.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_worker_address_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+uint64_t +worker_uid +

Unique id of the worker this address belongs to.

+
+ +
+
+ +
+
+ + + + +
struct ucp_listener_attr
+
+

The structure defines the attributes which characterize the particular listener.

+
Examples:
ucp_client_server.c.
+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_listener_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+struct sockaddr_storage +sockaddr +

Sockaddr on which this listener is listening for incoming connection requests.

+
+ +
+
+ +
+
+ + + + +
struct ucp_conn_request_attr
+
+

The structure defines the attributes that characterize the particular connection request received on the server side.

+
Examples:
ucp_client_server.c.
+
+ + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_conn_request_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+struct sockaddr_storage +client_address +

The address of the remote client that sent the connection request to the server.

+
+uint64_t +client_id +

Remote client id if remote endpoint's flag UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID is set.

+
+ +
+
+ +
+
+ + + + +
struct ucp_listener_params
+
+

This structure defines parameters for ucp_listener_create, which is used to listen for incoming client/server connections.

+
Examples:
ucp_client_server.c.
+
+ + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_listener_params_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+ucs_sock_addr_t +sockaddr +

An address in the form of a sockaddr. This field is mandatory for filling (along with its corresponding bit in the field_mask - UCP_LISTENER_PARAM_FIELD_SOCK_ADDR). The ucp_listener_create routine will return with an error if sockaddr is not specified.

+
+ucp_listener_accept_handler_t +accept_handler +

Handler to endpoint creation in a client-server connection flow. In order for the callback inside this handler to be invoked, the UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER needs to be set in the field_mask.

+
+ucp_listener_conn_handler_t +conn_handler +

Handler of an incoming connection request in a client-server connection flow. In order for the callback inside this handler to be invoked, the UCP_LISTENER_PARAM_FIELD_CONN_HANDLER needs to be set in the field_mask.

Note
User is expected to call ucp_ep_create with set UCP_EP_PARAM_FIELD_CONN_REQUEST flag to ucp_ep_params_t::field_mask and ucp_ep_params_t::conn_request in order to be able to receive communications.
+
+ +
+
+ +
+
+ + + + +
struct ucp_am_handler_param
+
+
Examples:
ucp_client_server.c.
+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from ucp_am_handler_param_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+unsigned +id +

Active Message id.

+
+uint32_t +flags +

Handler flags as defined by ucp_am_cb_flags.

+
+ucp_am_recv_callback_t +cb +

Active Message callback. To clear the already set callback, this value should be set to NULL.

+
+void * +arg +

Active Message argument, which will be passed in to every invocation of ucp_am_recv_callback_t function as the arg argument.

+
+ +
+
+ +
+
+ + + + +
struct ucp_am_recv_param
+
+
Examples:
ucp_client_server.c.
+
+ + + + + + + +
Data Fields
+uint64_t +recv_attr +

Mask of valid fields in this structure and receive operation flags, using bits from ucp_am_recv_attr_t. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+ucp_ep_h +reply_ep +

Endpoint, which can be used for the reply to this message.

+
+ +
+
+ +
+
+ + + + +
struct ucp_listener_accept_handler
+
+ + + + + + + + +
Data Fields
+ucp_listener_accept_callback_t +cb +

Endpoint creation callback

+
+void * +arg +

User defined argument for the callback

+
+ +
+
+ +
+
+ + + + +
struct ucp_listener_conn_handler
+
+

This structure is used for handling an incoming connection request on the listener. Setting this type of handler allows creating an endpoint on any other worker and not limited to the worker on which the listener was created.

Note
    +
  • Other than communication progress routines, it is allowed to call all other communication routines from the callback in the struct.
  • +
  • The callback is thread safe with respect to the worker it is invoked on.
  • +
  • It is the user's responsibility to avoid potential dead lock accessing different worker.
  • +
+
+
+ + + + + + + +
Data Fields
+ucp_listener_conn_callback_t +cb +

Connection request callback

+
+void * +arg +

User defined argument for the callback

+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct ucp_worker_attr ucp_worker_attr_t
+
+

The structure defines the attributes which characterize the particular worker.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_worker_params ucp_worker_params_t
+
+

The structure defines the parameters that are used for the UCP worker tuning during the UCP worker creation.

+ +
+
+ +
+
+

The structure defines the attributes of the particular worker address.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_listener_attr ucp_listener_attr_t
+
+

The structure defines the attributes which characterize the particular listener.

+ +
+
+ +
+
+

The structure defines the attributes that characterize the particular connection request received on the server side.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_listener_params ucp_listener_params_t
+
+

This structure defines parameters for ucp_listener_create, which is used to listen for incoming client/server connections.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_am_handler_param ucp_am_handler_param_t
+
+ +
+
+ + + +
+
+ + + + +
typedef struct ucp_am_recv_param ucp_am_recv_param_t
+
+ +
+
+ +
+
+ + + + +
typedef struct ucp_address ucp_address_t
+
+

The address handle is an opaque object that is used as an identifier for a worker instance.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_listener* ucp_listener_h
+
+

The listener handle is an opaque object that is used for listening on a specific address and accepting connections from clients.

+ +
+
+ +
+
+ + + + +
typedef struct ucp_worker* ucp_worker_h
+
+

UCP worker is an opaque object representing the communication context. The worker represents an instance of a local communication resource and the progress engine associated with it. The progress engine is a construct that is responsible for asynchronous and independent progress of communication directives. The progress engine could be implemented in hardware or software. The worker object abstracts an instance of network resources such as a host channel adapter port, network interface, or multiple resources such as multiple network interfaces or communication ports. It could also represent virtual communication resources that are defined across multiple devices. Although the worker can represent multiple network resources, it is associated with a single UCX application context. All communication functions require a context to perform the operation on the dedicated hardware resource(s) and an endpoint to address the destination.

+
Note
Worker are parallel "threading points" that an upper layer may use to optimize concurrent communications.
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_listener_accept_callback_t) (ucp_ep_h ep, void *arg)
+
+

This callback routine is invoked on the server side upon creating a connection to a remote client. The user can pass an argument to this callback. The user is responsible for releasing the ep handle using the ucp_ep_destroy() routine.

+
Parameters
+ + + +
[in]epHandle to a newly created endpoint which is connected to the remote peer which has initiated the connection.
[in]argUser's argument for the callback.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* ucp_listener_conn_callback_t) (ucp_conn_request_h conn_request, void *arg)
+
+

This callback routine is invoked on the server side to handle incoming connections from remote clients. The user can pass an argument to this callback. The conn_request handle has to be released, either by ucp_ep_create or ucp_listener_reject routine.

+
Parameters
+ + + +
[in]conn_requestConnection request handle.
[in]argUser's argument for the callback.
+
+
+ +
+
+ +
+
+

This structure is used for handling an incoming connection request on the listener. Setting this type of handler allows creating an endpoint on any other worker and not limited to the worker on which the listener was created.

Note
    +
  • Other than communication progress routines, it is allowed to call all other communication routines from the callback in the struct.
  • +
  • The callback is thread safe with respect to the worker it is invoked on.
  • +
  • It is the user's responsibility to avoid potential dead lock accessing different worker.
  • +
+
+ +
+
+ +
+
+ + + + +
typedef enum ucp_wakeup_event_types ucp_wakeup_event_t
+
+

The enumeration allows specifying which events are expected on wakeup. Empty events are possible for any type of event except for UCP_WAKEUP_TX and UCP_WAKEUP_RX.

+
Note
Send completions are reported by POLLIN-like events (see poll man page). Since outgoing operations can be initiated at any time, UCP does not generate POLLOUT-like events, although it must be noted that outgoing operations may be queued depending upon resource availability.
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucp_worker_params_field
+
+

The enumeration allows specifying which fields in ucp_worker_params_t are present. It is used to enable backward compatibility support.

+ + + + + + + + + + +
Enumerator
UCP_WORKER_PARAM_FIELD_THREAD_MODE  +

UCP thread mode

+
UCP_WORKER_PARAM_FIELD_CPU_MASK  +

Worker's CPU bitmap

+
UCP_WORKER_PARAM_FIELD_EVENTS  +

Worker's events bitmap

+
UCP_WORKER_PARAM_FIELD_USER_DATA  +

User data

+
UCP_WORKER_PARAM_FIELD_EVENT_FD  +

External event file descriptor

+
UCP_WORKER_PARAM_FIELD_FLAGS  +

Worker flags

+
UCP_WORKER_PARAM_FIELD_NAME  +

Worker name

+
UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT  +

Alignment of active messages on the receiver

+
UCP_WORKER_PARAM_FIELD_CLIENT_ID  +

Client id

+
+ +
+
+ +
+
+ + + + +
enum ucp_worker_flags_t
+
+

This enumeration allows specifying flags for ucp_worker_params_t::flags, which is used as parameter for ucp_worker_create.

+ + +
Enumerator
UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK  +

Do not print warnings about request leaks

+
+ +
+
+ +
+
+ + + + +
enum ucp_listener_params_field
+
+

The enumeration allows specifying which fields in ucp_listener_params_t are present. It is used to enable backward compatibility support.

+ + + + +
Enumerator
UCP_LISTENER_PARAM_FIELD_SOCK_ADDR  +

Sock address and length.

+
UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER  +

User's callback and argument for handling the creation of an endpoint.User's callback and argument for handling the incoming connection request.

+
UCP_LISTENER_PARAM_FIELD_CONN_HANDLER  +
+ +
+
+ +
+
+ + + + +
enum ucp_worker_address_flags_t
+
+

The enumeration list describes possible UCP worker address flags, indicating what needs to be included to the worker address returned by ucp_worker_query() routine.

+ + +
Enumerator
UCP_WORKER_ADDRESS_FLAG_NET_ONLY  +

Pack addresses of network devices only. Using such shortened addresses for the remote node peers will reduce the amount of wireup data being exchanged during connection establishment phase.

+
+ +
+
+ +
+
+ + + + +
enum ucp_worker_attr_field
+
+

The enumeration allows specifying which fields in ucp_worker_attr_t are present. It is used to enable backward compatibility support.

+ + + + + + + +
Enumerator
UCP_WORKER_ATTR_FIELD_THREAD_MODE  +

UCP thread mode

+
UCP_WORKER_ATTR_FIELD_ADDRESS  +

UCP address

+
UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS  +

UCP address flags

+
UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER  +

Maximum header size used by UCP AM API

+
UCP_WORKER_ATTR_FIELD_NAME  +

UCP worker name

+
UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING  +

Maximum size of info string

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in ucp_worker_address_attr_t are present. It is used to enable backward compatibility support.

+ + +
Enumerator
UCP_WORKER_ADDRESS_ATTR_FIELD_UID  +

Unique id of the worker

+
+ +
+
+ +
+
+ + + + +
enum ucp_listener_attr_field
+
+

The enumeration allows specifying which fields in ucp_listener_attr_t are present. It is used to enable backward compatibility support.

+ + +
Enumerator
UCP_LISTENER_ATTR_FIELD_SOCKADDR  +

Sockaddr used for listening

+
+ +
+
+ +
+
+ + + + +
enum ucp_conn_request_attr_field
+
+

The enumeration allows specifying which fields in ucp_conn_request_attr_t are present. It is used to enable backward compatibility support.

+ + + +
Enumerator
UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR  +

Client's address

+
UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID  +

Remote client id

+
+ +
+
+ +
+
+ + + + +
enum ucp_am_cb_flags
+
+

Flags that indicate how to handle UCP Active Messages.

+ + + +
Enumerator
UCP_AM_FLAG_WHOLE_MSG  +

Indicates that the entire message will be handled in one callback.

+
UCP_AM_FLAG_PERSISTENT_DATA  +

Guarantees that the specified ucp_am_recv_callback_t callback, will always be called with UCP_AM_RECV_ATTR_FLAG_DATA flag set, so the data will be accessible outside the callback, until ucp_am_data_release is called.

+
+ +
+
+ +
+
+ + + + +
enum ucp_send_am_flags
+
+

Flags dictate the behavior of ucp_am_send_nb and ucp_am_send_nbx routines.

+ + + + + + +
Enumerator
UCP_AM_SEND_FLAG_REPLY  +

Force relevant reply endpoint to be passed to the data callback on the receiver.

+
UCP_AM_SEND_FLAG_EAGER  +

Force UCP to use only eager protocol for AM sends.

+
UCP_AM_SEND_FLAG_RNDV  +

Force UCP to use only rendezvous protocol for AM sends.

+
UCP_AM_SEND_FLAG_COPY_HEADER  +

The flag indicates that the header should be copied to an internal buffer in case it's needed after the send function returns. If this flag is specified, the header can be released immediately after the send function returns, even if the non-blocking send request is not completed.

+
UCP_AM_SEND_REPLY  +

Backward compatibility.

+
+ +
+
+ +
+
+ + + + +
enum ucp_wakeup_event_types
+
+

The enumeration allows specifying which events are expected on wakeup. Empty events are possible for any type of event except for UCP_WAKEUP_TX and UCP_WAKEUP_RX.

+
Note
Send completions are reported by POLLIN-like events (see poll man page). Since outgoing operations can be initiated at any time, UCP does not generate POLLOUT-like events, although it must be noted that outgoing operations may be queued depending upon resource availability.
+ + + + + + + + +
Enumerator
UCP_WAKEUP_RMA  +

Remote memory access send completion

+
UCP_WAKEUP_AMO  +

Atomic operation send completion

+
UCP_WAKEUP_TAG_SEND  +

Tag send completion

+
UCP_WAKEUP_TAG_RECV  +

Tag receive completion

+
UCP_WAKEUP_TX  +

This event type will generate an event on completion of any outgoing operation (complete or partial, according to the underlying protocol) for any type of transfer (send, atomic, or RMA).

+
UCP_WAKEUP_RX  +

This event type will generate an event on completion of any receive operation (complete or partial, according to the underlying protocol).

+
UCP_WAKEUP_EDGE  +

Use edge-triggered wakeup. The event file descriptor will be signaled only for new events, rather than existing ones.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_create (ucp_context_h context,
const ucp_worker_params_tparams,
ucp_worker_hworker_p 
)
+
+

This routine allocates and initializes a worker object. Each worker is associated with one and only one application context. In the same time, an application context can create multiple workers in order to enable concurrent access to communication resources. For example, application can allocate a dedicated worker for each application thread, where every worker can be progressed independently of others.

+
Note
The worker object is allocated within context of the calling thread
+
Parameters
+ + + + +
[in]contextHandle to UCP application context.
[in]paramsUser defined ucp_worker_params_t configurations for the UCP worker.
[out]worker_pA pointer to the worker object allocated by the UCP library
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void ucp_worker_destroy (ucp_worker_h worker)
+
+

This routine releases the resources associated with a UCP worker.

+
Warning
Once the UCP worker destroy the worker handle cannot be used with any UCP routine.
+

The destroy process releases and shuts down all resources associated with the worker.

+
Parameters
+ + +
[in]workerWorker object to destroy.
+
+
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_query (ucp_worker_h worker,
ucp_worker_attr_tattr 
)
+
+

This routine fetches information about the worker.

+
Parameters
+ + + +
[in]workerWorker object to query.
[out]attrFilled with attributes of worker.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_worker_print_info (ucp_worker_h worker,
FILE * stream 
)
+
+

This routine prints information about the protocols being used, thresholds, UCT transport methods, and other useful information associated with the worker.

+
Parameters
+ + + +
[in]workerWorker object to print information for.
[in]streamOutput stream to print the information to.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void ucp_worker_release_address (ucp_worker_h worker,
ucp_address_taddress 
)
+
+

This routine release an address handle associated within the worker object.

+
Warning
Once the address released the address handle cannot be used with any UCP routine.
+
Parameters
+ + + +
[in]workerWorker object that is associated with the address object.
[in]addressAddress to release; the address object has to be allocated using ucp_worker_get_address() routine.
+
+
+
Examples:
ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_address_query (ucp_address_taddress,
ucp_worker_address_attr_tattr 
)
+
+

This routine fetches information about the worker address. The address can be either of local or remote worker.

+
Parameters
+ + + +
[in]addressWorker address to query.
[out]attrFilled with attributes of the worker address.
+
+
+
Returns
Error code as defined by ucs_status_t.
+ +
+
+ +
+
+ + + + + + + + +
unsigned ucp_worker_progress (ucp_worker_h worker)
+
+

This routine explicitly progresses all communication operations on a worker.

+
Note
    +
  • Typically, request wait and test routines call this routine to progress any outstanding operations.
  • +
  • Transport layers, implementing asynchronous progress using threads, require callbacks and other user code to be thread safe.
  • +
  • The state of communication can be advanced (progressed) by blocking routines. Nevertheless, the non-blocking routines can not be used for communication progress.
  • +
+
+
Parameters
+ + +
[in]workerWorker to progress.
+
+
+
Returns
Non-zero if any communication was progressed, zero otherwise.
+
Examples:
ucp_client_server.c, and ucp_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ssize_t ucp_stream_worker_poll (ucp_worker_h worker,
ucp_stream_poll_ep_tpoll_eps,
size_t max_eps,
unsigned flags 
)
+
+

This non-blocking routine returns endpoints on a worker which are ready to consume streaming data. The ready endpoints are placed in poll_eps array, and the function return value indicates how many are there.

+
Parameters
+ + + + + +
[in]workerWorker to poll.
[out]poll_epsPointer to array of endpoints, should be allocated by user.
[in]max_epsMaximum number of endpoints that should be filled in poll_eps.
[in]flagsReserved for future use.
+
+
+
Returns
Negative value indicates an error according to ucs_status_t. On success, non-negative value (less or equal max_eps) indicates actual number of endpoints filled in poll_eps array.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_listener_create (ucp_worker_h worker,
const ucp_listener_params_tparams,
ucp_listener_hlistener_p 
)
+
+

This routine creates a new listener object that is bound to a specific local address. The listener will listen to incoming connection requests. After receiving a request from the remote peer, an endpoint to this peer will be created - either right away or by calling ucp_ep_create, as specified by the callback type in ucp_listener_params_t. The user's callback will be invoked once the endpoint is created.

+
Parameters
+ + + + +
[in]workerWorker object to create the listener on.
[in]paramsUser defined ucp_listener_params_t configurations for the ucp_listener_h.
[out]listener_pA handle to the created listener, can be released by calling ucp_listener_destroy
+
+
+
Returns
Error code as defined by ucs_status_t
+
Note
ucp_listener_params_t::conn_handler or ucp_listener_params_t::accept_handler must be provided to be able to handle incoming connections.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + +
void ucp_listener_destroy (ucp_listener_h listener)
+
+

This routine unbinds the worker from the given handle and stops listening for incoming connection requests on it.

+
Parameters
+ + +
[in]listenerA handle to the listener to stop listening on.
+
+
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_listener_query (ucp_listener_h listener,
ucp_listener_attr_tattr 
)
+
+

This routine fetches information about the listener.

+
Parameters
+ + + +
[in]listenerlistener object to query.
[out]attrFilled with attributes of the listener.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_conn_request_query (ucp_conn_request_h conn_request,
ucp_conn_request_attr_tattr 
)
+
+

This routine fetches information about the connection request.

+
Parameters
+ + + +
[in]conn_requestconnection request object to query.
[out]attrFilled with attributes of the connection request.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_listener_reject (ucp_listener_h listener,
ucp_conn_request_h conn_request 
)
+
+

Reject the incoming connection request and release associated resources. If the remote initiator endpoint has set an ucp_ep_params_t::err_handler, it will be invoked with status UCS_ERR_REJECTED.

+
Parameters
+ + + +
[in]listenerHandle to the listener on which the connection request was received.
[in]conn_requestHandle to the connection request to reject.
+
+
+
Returns
Error code as defined by ucs_status_t
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_set_am_recv_handler (ucp_worker_h worker,
const ucp_am_handler_param_tparam 
)
+
+

This routine installs a user defined callback to handle incoming Active Messages with a specific id. This callback is called whenever an Active Message that was sent from the remote peer by ucp_am_send_nbx is received on this worker.

+
Warning
Handlers set by this function are not compatible with ucp_am_send_nb routine.
+
Parameters
+ + + +
[in]workerUCP worker on which to set the Active Message handler.
[in]paramActive Message handler parameters, as defined by ucp_am_handler_param_t.
+
+
+
Returns
error code if the worker does not support Active Messages or requested callback flags.
+
Examples:
ucp_client_server.c.
+
+
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_worker_fence (ucp_worker_h worker)
+
+

This routine ensures ordering of non-blocking communication operations on the UCP worker. Communication operations issued on a particular endpoint created on the worker prior to this call are guaranteed to be completed before any communication operations issued on the same endpoint after this call.

+
Note
The primary difference between ucp_worker_fence() and the ucp_worker_flush_nb() is the fact the fence routine does not guarantee completion of the operations on the call return but only ensures the order between communication operations. The flush operation on return guarantees that all operations are completed and corresponding memory regions were updated.
+
Parameters
+ + +
[in]workerUCP worker.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_worker_flush_nbx (ucp_worker_h worker,
const ucp_request_param_tparam 
)
+
+

This routine flushes all outstanding AMO and RMA communications on the worker. All the AMO and RMA operations issued on the worker prior to this call are completed both at the origin and at the target when this call returns.

+
Note
For description of the differences between flush and fence operations please see ucp_worker_fence()
+
Parameters
+ + + +
[in]workerUCP worker.
[in]paramOperation parameters, see ucp_request_param_t
+
+
+
Returns
NULL - The flush operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The flush operation failed.
+
+otherwise - Flush operation was scheduled and can be completed in any point in time. The request handle is returned to the application in order to track progress.
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_t ucp_worker_flush (ucp_worker_h worker)
+
+
Deprecated:
Replaced by ucp_worker_flush_nb. The following example implements the same functionality using ucp_worker_flush_nb :
+
1 ucs_status_t worker_flush(ucp_worker_h worker)
2 {
3  void *request = ucp_worker_flush_nb(worker);
4  if (request == NULL) {
5  return UCS_OK;
6  } else if (UCS_PTR_IS_ERR(request)) {
7  return UCS_PTR_STATUS(request);
8  } else {
9  ucs_status_t status;
10  do {
11  ucp_worker_progress(worker);
12  status = ucp_request_check_status(request);
13  } while (status == UCS_INPROGRESS);
14  ucp_request_release(request);
15  return status;
16  }
17 }

This routine flushes all outstanding AMO and RMA communications on the worker. All the AMO and RMA operations issued on the worker prior to this call are completed both at the origin and at the target when this call returns.

+
Note
For description of the differences between flush and fence operations please see ucp_worker_fence()
+
Parameters
+ + +
[in]workerUCP worker.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_get_address (ucp_worker_h worker,
ucp_address_t ** address_p,
size_t * address_length_p 
)
+
+
Deprecated:
Use ucp_worker_query with the flag UCP_WORKER_ATTR_FIELD_ADDRESS in order to obtain the worker address.
+

This routine returns the address of the worker object. This address can be passed to remote instances of the UCP library in order to connect to this worker. The memory for the address handle is allocated by this function, and must be released by using ucp_worker_release_address() routine.

+
Parameters
+ + + + +
[in]workerWorker object whose address to return.
[out]address_pA pointer to the worker address.
[out]address_length_pThe size in bytes of the address.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucp_worker_set_am_handler (ucp_worker_h worker,
uint16_t id,
ucp_am_callback_t cb,
void * arg,
uint32_t flags 
)
+
+
Deprecated:
Use ucp_worker_set_am_recv_handler instead.
+

This routine installs a user defined callback to handle incoming Active Messages with a specific id. This callback is called whenever an Active Message that was sent from the remote peer by ucp_am_send_nb is received on this worker.

+
Parameters
+ + + + + + +
[in]workerUCP worker on which to set the Active Message handler.
[in]idActive Message id.
[in]cbActive Message callback. NULL to clear.
[in]argActive Message argument, which will be passed in to every invocation of the callback as the arg argument.
[in]flagsDictates how an Active Message is handled on the remote endpoint. Currently only UCP_AM_FLAG_WHOLE_MSG is supported, which indicates the callback will not be invoked until all data has arrived.
+
+
+
Returns
error code if the worker does not support Active Messages or requested callback flags.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t ucp_worker_flush_nb (ucp_worker_h worker,
unsigned flags,
ucp_send_callback_t cb 
)
+
+
Deprecated:
Use ucp_worker_flush_nbx instead.
+

This routine flushes all outstanding AMO and RMA communications on the worker. All the AMO and RMA operations issued on the worker prior to this call are completed both at the origin and at the target when this call returns.

+
Note
For description of the differences between flush and fence operations please see ucp_worker_fence()
+
Parameters
+ + + + +
[in]workerUCP worker.
[in]flagsFlags for flush operation. Reserved for future use.
[in]cbCallback which will be called when the flush operation completes.
+
+
+
Returns
NULL - The flush operation was completed immediately.
+
+UCS_PTR_IS_ERR(_ptr) - The flush operation failed.
+
+otherwise - Flush operation was scheduled and can be completed in any point in time. The request handle is returned to the application in order to track progress. The application is responsible for releasing the handle using ucp_request_free() routine.
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r.js new file mode 100644 index 00000000000..fb2a315efa8 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r.js @@ -0,0 +1,159 @@ +var group___u_c_p___w_o_r_k_e_r = +[ + [ "ucp_worker_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__worker__attr", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#af0f34f82bba00221aa22ec54fa5efc0f", null ], + [ "thread_mode", "group___u_c_p___w_o_r_k_e_r.html#abf2b8b0c74946fbd1791a21369236678", null ], + [ "address_flags", "group___u_c_p___w_o_r_k_e_r.html#a6c288e285b8c870ec576f1a939519799", null ], + [ "address", "group___u_c_p___w_o_r_k_e_r.html#a0863e78ee73ef351311c54d95b6c8fa5", null ], + [ "address_length", "group___u_c_p___w_o_r_k_e_r.html#a7b0ad8e7e5c8d4c4c4931e769ca0fe6f", null ], + [ "max_am_header", "group___u_c_p___w_o_r_k_e_r.html#a7678aa8d4fb18b0d6e2a0276b03e2cb4", null ], + [ "name", "group___u_c_p___w_o_r_k_e_r.html#a3123aa88fefa33c972da4c2bda3bebee", null ], + [ "max_debug_string", "group___u_c_p___w_o_r_k_e_r.html#a79406f6545efcaefffaa34ca99bfdc04", null ] + ] ], + [ "ucp_worker_params", "group___u_c_p___w_o_r_k_e_r.html#structucp__worker__params", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#a33863ec848e47f79d2e14181fe2aa921", null ], + [ "thread_mode", "group___u_c_p___w_o_r_k_e_r.html#a790642ea681ddd2b0935ad62f70e4ef1", null ], + [ "cpu_mask", "group___u_c_p___w_o_r_k_e_r.html#afc8f70f3ff12f36ea34ad40ff12de61e", null ], + [ "events", "group___u_c_p___w_o_r_k_e_r.html#a89b9add865222b57caee81874704ba89", null ], + [ "user_data", "group___u_c_p___w_o_r_k_e_r.html#a2c277d353e134219265887c4f5339159", null ], + [ "event_fd", "group___u_c_p___w_o_r_k_e_r.html#aaeaf0e7ec196ed72ee2b52183f8d1d7d", null ], + [ "flags", "group___u_c_p___w_o_r_k_e_r.html#adbd9725024f5138a693196f11dab124c", null ], + [ "name", "group___u_c_p___w_o_r_k_e_r.html#a7ea9a6700ec1393aaa95c4b1e1df04e1", null ], + [ "am_alignment", "group___u_c_p___w_o_r_k_e_r.html#aab378fafe0b474381edbe25023910eb4", null ], + [ "client_id", "group___u_c_p___w_o_r_k_e_r.html#a41afbbfba922c2bdc4f35e2c4ecfcaa4", null ] + ] ], + [ "ucp_worker_address_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__worker__address__attr", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#a596a9aee8bfbd1c232c6d63549c75f08", null ], + [ "worker_uid", "group___u_c_p___w_o_r_k_e_r.html#a682d3477655dc66072e03530d95239f2", null ] + ] ], + [ "ucp_listener_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__attr", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#aaaa6353f56fd585d7c83c363380703f4", null ], + [ "sockaddr", "group___u_c_p___w_o_r_k_e_r.html#affcc213cd4305412937974eefb95bc32", null ] + ] ], + [ "ucp_conn_request_attr", "group___u_c_p___w_o_r_k_e_r.html#structucp__conn__request__attr", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#ad6a97d8268992c34631ac773a6c2148b", null ], + [ "client_address", "group___u_c_p___w_o_r_k_e_r.html#a8ca1dc70d395335dc9f8fe20e9de1a0d", null ], + [ "client_id", "group___u_c_p___w_o_r_k_e_r.html#aff4d88d6fd3b2613e058bbcf43d0815b", null ] + ] ], + [ "ucp_listener_params", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__params", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#afb01e3b0d3c0a04cef0cde4f849fcc1d", null ], + [ "sockaddr", "group___u_c_p___w_o_r_k_e_r.html#a88be57709393e7bf27d10d8a5238b544", null ], + [ "accept_handler", "group___u_c_p___w_o_r_k_e_r.html#a17487f0e8e3102519d7b512c77efdb1f", null ], + [ "conn_handler", "group___u_c_p___w_o_r_k_e_r.html#a0694aacde5fff09dc75e556e8116098a", null ] + ] ], + [ "ucp_am_handler_param", "group___u_c_p___w_o_r_k_e_r.html#structucp__am__handler__param", [ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#a8f31d53e411769961286865cb9332f6f", null ], + [ "id", "group___u_c_p___w_o_r_k_e_r.html#ad0c6157f387e18cb4d92a37a638274af", null ], + [ "flags", "group___u_c_p___w_o_r_k_e_r.html#a061115b2dc01fb803ae8082bd41f8730", null ], + [ "cb", "group___u_c_p___w_o_r_k_e_r.html#acd54cdefba3f3f5e145dfe2360485659", null ], + [ "arg", "group___u_c_p___w_o_r_k_e_r.html#ae1670a4926d8528fb1ec1cd3f461f13a", null ] + ] ], + [ "ucp_am_recv_param", "group___u_c_p___w_o_r_k_e_r.html#structucp__am__recv__param", [ + [ "recv_attr", "group___u_c_p___w_o_r_k_e_r.html#a53a8777a31faf7e65289bcc1d710fb19", null ], + [ "reply_ep", "group___u_c_p___w_o_r_k_e_r.html#a5e4629812b7b7737beb6f7f7332b7d7f", null ] + ] ], + [ "ucp_listener_accept_handler", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__accept__handler", [ + [ "cb", "group___u_c_p___w_o_r_k_e_r.html#a3017ef77fb807d87b60667df14f6c0b0", null ], + [ "arg", "group___u_c_p___w_o_r_k_e_r.html#a05ba12e5d6e6c2b3caef35975644ce85", null ] + ] ], + [ "ucp_listener_conn_handler", "group___u_c_p___w_o_r_k_e_r.html#structucp__listener__conn__handler", [ + [ "cb", "group___u_c_p___w_o_r_k_e_r.html#a55ac5ba9e07ca64d55e22730038a4018", null ], + [ "arg", "group___u_c_p___w_o_r_k_e_r.html#ae84882c5fbe486b118460662afe395ec", null ] + ] ], + [ "ucp_worker_attr_t", "group___u_c_p___w_o_r_k_e_r.html#ga27a9d7a36ee31d7718f6ec2819108d07", null ], + [ "ucp_worker_params_t", "group___u_c_p___w_o_r_k_e_r.html#ga7aad09f7b71f912abe0b120872a236f2", null ], + [ "ucp_worker_address_attr_t", "group___u_c_p___w_o_r_k_e_r.html#ga517602b302ea1c754a3c38e8020ac1bb", null ], + [ "ucp_listener_attr_t", "group___u_c_p___w_o_r_k_e_r.html#ga63fa3ed5e0f2c2e8d3d193cd63ce5739", null ], + [ "ucp_conn_request_attr_t", "group___u_c_p___w_o_r_k_e_r.html#ga36b1aef3732666365e92bbf54e722a4a", null ], + [ "ucp_listener_params_t", "group___u_c_p___w_o_r_k_e_r.html#ga2603bc15f79df18099f98b2254afab04", null ], + [ "ucp_am_handler_param_t", "group___u_c_p___w_o_r_k_e_r.html#ga41064b7ada287b9a2138451ef63ea1e4", null ], + [ "ucp_listener_accept_handler_t", "group___u_c_p___w_o_r_k_e_r.html#gad8b65bba266c848ca394ec48da48bc18", null ], + [ "ucp_am_recv_param_t", "group___u_c_p___w_o_r_k_e_r.html#ga435d870d0afb413f0bc780809f1db2ef", null ], + [ "ucp_address_t", "group___u_c_p___w_o_r_k_e_r.html#ga7d24d2759c1375bf4d2d639e3b701956", null ], + [ "ucp_listener_h", "group___u_c_p___w_o_r_k_e_r.html#gac0496f7102c43cf339cc760b9e5724a2", null ], + [ "ucp_worker_h", "group___u_c_p___w_o_r_k_e_r.html#ga5fd52efba31d20fc52055bb19270729f", null ], + [ "ucp_listener_accept_callback_t", "group___u_c_p___w_o_r_k_e_r.html#ga9a1d61f9a3c1fd97c008dd77ae86c02c", null ], + [ "ucp_listener_conn_callback_t", "group___u_c_p___w_o_r_k_e_r.html#ga389a8cfa253f87eb9d8cc7b8d4747c82", null ], + [ "ucp_listener_conn_handler_t", "group___u_c_p___w_o_r_k_e_r.html#ga558f048d85d5600f95c2f733ddc6b3e8", null ], + [ "ucp_wakeup_event_t", "group___u_c_p___w_o_r_k_e_r.html#gae454437b2f4d1bd23dfc8975bbe60c2e", null ], + [ "ucp_worker_params_field", "group___u_c_p___w_o_r_k_e_r.html#gadbfc8fd5eaa65351d1617f2f158b80f6", [ + [ "UCP_WORKER_PARAM_FIELD_THREAD_MODE", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a651598f7340d42cafb0876d918c83ec8", null ], + [ "UCP_WORKER_PARAM_FIELD_CPU_MASK", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a0ba499461804b26850d6a530609e228d", null ], + [ "UCP_WORKER_PARAM_FIELD_EVENTS", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6ac756667325d053bd1cc11cccf853b0c9", null ], + [ "UCP_WORKER_PARAM_FIELD_USER_DATA", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a1243d403aeceab36eee6d9cb985e8eb0", null ], + [ "UCP_WORKER_PARAM_FIELD_EVENT_FD", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6ae743c2d23a0d7b0a9a8c6362a7611139", null ], + [ "UCP_WORKER_PARAM_FIELD_FLAGS", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a4a43ec7752c45629a3fc229a31d33617", null ], + [ "UCP_WORKER_PARAM_FIELD_NAME", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a57069c65941e47f35bea0478ddf0a829", null ], + [ "UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a68376de940e85a5ee4ffa6359c5ee2bc", null ], + [ "UCP_WORKER_PARAM_FIELD_CLIENT_ID", "group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a20b21817e31db3e2ef52b507abbfa0bb", null ] + ] ], + [ "ucp_worker_flags_t", "group___u_c_p___w_o_r_k_e_r.html#ga11a37476d021e1ad36c1b727373212b4", [ + [ "UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK", "group___u_c_p___w_o_r_k_e_r.html#gga11a37476d021e1ad36c1b727373212b4a367a4eddbf55c75a186584fef73a484a", null ] + ] ], + [ "ucp_listener_params_field", "group___u_c_p___w_o_r_k_e_r.html#ga36d95269fcce844261494cbd4f5e26fc", [ + [ "UCP_LISTENER_PARAM_FIELD_SOCK_ADDR", "group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca0eed5ab19654fabc0afceb5b439c6f05", null ], + [ "UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER", "group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca3cdf187536d998c115377f8de396ac66", null ], + [ "UCP_LISTENER_PARAM_FIELD_CONN_HANDLER", "group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca6f28cd3c96e0ada4fafc63d6f67e48bc", null ] + ] ], + [ "ucp_worker_address_flags_t", "group___u_c_p___w_o_r_k_e_r.html#gab1ec638cc4a7498a85017d132492d195", [ + [ "UCP_WORKER_ADDRESS_FLAG_NET_ONLY", "group___u_c_p___w_o_r_k_e_r.html#ggab1ec638cc4a7498a85017d132492d195af9fe9ee3edc7fe21c889437941bb4117", null ] + ] ], + [ "ucp_worker_attr_field", "group___u_c_p___w_o_r_k_e_r.html#gacf03ee299a48c2f9c776516cc82c7194", [ + [ "UCP_WORKER_ATTR_FIELD_THREAD_MODE", "group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a6d3178929ef9e6570999384991fbd42d", null ], + [ "UCP_WORKER_ATTR_FIELD_ADDRESS", "group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a0dde53e12c0ab222ddcf2a52984fddd2", null ], + [ "UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS", "group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a9b007ce57d2935817f86b4c4c6aad8c9", null ], + [ "UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER", "group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a4ad76742671a6282274e48dc904f145e", null ], + [ "UCP_WORKER_ATTR_FIELD_NAME", "group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a806d5f1afd1e673b78888588b03ae95e", null ], + [ "UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING", "group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194aa92fba4ea095cc171b1153b88684213d", null ] + ] ], + [ "ucp_worker_address_attr_field", "group___u_c_p___w_o_r_k_e_r.html#gaadc74e7e271c4e181263115b08bf71c8", [ + [ "UCP_WORKER_ADDRESS_ATTR_FIELD_UID", "group___u_c_p___w_o_r_k_e_r.html#ggaadc74e7e271c4e181263115b08bf71c8af5d5293830102fa30e1e26cfbdde0772", null ] + ] ], + [ "ucp_listener_attr_field", "group___u_c_p___w_o_r_k_e_r.html#ga54059507b51041359aedffbe75635720", [ + [ "UCP_LISTENER_ATTR_FIELD_SOCKADDR", "group___u_c_p___w_o_r_k_e_r.html#gga54059507b51041359aedffbe75635720a5a58fea3f5a4daa6b055306a6798ec26", null ] + ] ], + [ "ucp_conn_request_attr_field", "group___u_c_p___w_o_r_k_e_r.html#ga31119b42b06b185822699697bd7a1018", [ + [ "UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR", "group___u_c_p___w_o_r_k_e_r.html#gga31119b42b06b185822699697bd7a1018a98d3bca4557571d8ccb56ae2d29b2ad6", null ], + [ "UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID", "group___u_c_p___w_o_r_k_e_r.html#gga31119b42b06b185822699697bd7a1018a2dbcf2ed5576bf2721ca550d34361f1d", null ] + ] ], + [ "ucp_am_cb_flags", "group___u_c_p___w_o_r_k_e_r.html#ga41d5b7b408c7546c7cb8b38d72f8653f", [ + [ "UCP_AM_FLAG_WHOLE_MSG", "group___u_c_p___w_o_r_k_e_r.html#gga41d5b7b408c7546c7cb8b38d72f8653fab8e0a400e8017b571682b853c8ff0559", null ], + [ "UCP_AM_FLAG_PERSISTENT_DATA", "group___u_c_p___w_o_r_k_e_r.html#gga41d5b7b408c7546c7cb8b38d72f8653faa15bbd02f0d9e0afd2e979b89669fbe2", null ] + ] ], + [ "ucp_send_am_flags", "group___u_c_p___w_o_r_k_e_r.html#ga583228e89cd5c882025ed04c76106aa6", [ + [ "UCP_AM_SEND_FLAG_REPLY", "group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6ace99c327865c6f2294f800099d467b16", null ], + [ "UCP_AM_SEND_FLAG_EAGER", "group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6af29f97eb0938984f627be7989c35079c", null ], + [ "UCP_AM_SEND_FLAG_RNDV", "group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a3174d72844f5488bee9e0b35c75f68e5", null ], + [ "UCP_AM_SEND_FLAG_COPY_HEADER", "group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a0654f3da5be1bc517d45307b6a21cbdf", null ], + [ "UCP_AM_SEND_REPLY", "group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a1794c5ef851a147688d783532f1ec7bb", null ] + ] ], + [ "ucp_wakeup_event_types", "group___u_c_p___w_o_r_k_e_r.html#ga66be8946dcd33051d40ceca65ba28e22", [ + [ "UCP_WAKEUP_RMA", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a80fc6d63077023d905d9f3adfb37c50a", null ], + [ "UCP_WAKEUP_AMO", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a1f8891a39fe63593947811936a9af8f7", null ], + [ "UCP_WAKEUP_TAG_SEND", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a136d0a608b0dcceb731d3022f1cb0e91", null ], + [ "UCP_WAKEUP_TAG_RECV", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a15bd79b8acc9815513dccf43fc350435", null ], + [ "UCP_WAKEUP_TX", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22ad70899effbabed3294c35b9b0f2a747b", null ], + [ "UCP_WAKEUP_RX", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a182a353c533fc335e638e41fdaf7c6b5", null ], + [ "UCP_WAKEUP_EDGE", "group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a474ecc6ca013d28f71ade5d85aafd1c8", null ] + ] ], + [ "ucp_worker_create", "group___u_c_p___w_o_r_k_e_r.html#ga0aec01ed3dad646ca6cd3814b13054b1", null ], + [ "ucp_worker_destroy", "group___u_c_p___w_o_r_k_e_r.html#ga6b6c5bf97d16e7fc4b7c815875e92676", null ], + [ "ucp_worker_query", "group___u_c_p___w_o_r_k_e_r.html#gaab678930b792e328eb4f0a17654e5e42", null ], + [ "ucp_worker_print_info", "group___u_c_p___w_o_r_k_e_r.html#gab746c6cccbfe8d25a892eb415bcedd97", null ], + [ "ucp_worker_release_address", "group___u_c_p___w_o_r_k_e_r.html#ga94260829739496267d2c8d86414b863d", null ], + [ "ucp_worker_address_query", "group___u_c_p___w_o_r_k_e_r.html#ga0fac7f3d7bf9970e837732557e4277b0", null ], + [ "ucp_worker_progress", "group___u_c_p___w_o_r_k_e_r.html#ga340784a8528d4932916651460dc481c0", null ], + [ "ucp_stream_worker_poll", "group___u_c_p___w_o_r_k_e_r.html#gaacff2409268fc6620d9a2bca4fa01950", null ], + [ "ucp_listener_create", "group___u_c_p___w_o_r_k_e_r.html#ga7a8943f89a7b49c1f1abc562fb5178ad", null ], + [ "ucp_listener_destroy", "group___u_c_p___w_o_r_k_e_r.html#gae45c609cd659bdd0e205d30627b7af21", null ], + [ "ucp_listener_query", "group___u_c_p___w_o_r_k_e_r.html#ga785a8cc6adab6c01bb2354a38bcd9928", null ], + [ "ucp_conn_request_query", "group___u_c_p___w_o_r_k_e_r.html#ga440c99f2462ba8201280687a76fd8569", null ], + [ "ucp_listener_reject", "group___u_c_p___w_o_r_k_e_r.html#ga1f1620fdbae11ea076875fd6ac644241", null ], + [ "ucp_worker_set_am_recv_handler", "group___u_c_p___w_o_r_k_e_r.html#ga410d5e90c2abc6997924cbf7dee4a1f3", null ], + [ "ucp_worker_fence", "group___u_c_p___w_o_r_k_e_r.html#ga05b3b5887475966631c62119d64c6182", null ], + [ "ucp_worker_flush_nbx", "group___u_c_p___w_o_r_k_e_r.html#ga57fedddf88d4b777f5c16b39b5fcf52e", null ], + [ "ucp_worker_flush", "group___u_c_p___w_o_r_k_e_r.html#gae20b8bc9fbbde208ea266490bde4cbcb", null ], + [ "ucp_worker_get_address", "group___u_c_p___w_o_r_k_e_r.html#ga41aaa5fb8fbd3de50a39b1fda12977cc", null ], + [ "ucp_worker_set_am_handler", "group___u_c_p___w_o_r_k_e_r.html#gab8e272749e7a396643caf8775889df4e", null ], + [ "ucp_worker_flush_nb", "group___u_c_p___w_o_r_k_e_r.html#gac461d1034a3313612243a5829b7e3847", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__am__handler__param.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__am__handler__param.js new file mode 100644 index 00000000000..33cb7f1b25e --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__am__handler__param.js @@ -0,0 +1,8 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__am__handler__param = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#a8f31d53e411769961286865cb9332f6f", null ], + [ "id", "group___u_c_p___w_o_r_k_e_r.html#ad0c6157f387e18cb4d92a37a638274af", null ], + [ "flags", "group___u_c_p___w_o_r_k_e_r.html#a061115b2dc01fb803ae8082bd41f8730", null ], + [ "cb", "group___u_c_p___w_o_r_k_e_r.html#acd54cdefba3f3f5e145dfe2360485659", null ], + [ "arg", "group___u_c_p___w_o_r_k_e_r.html#ae1670a4926d8528fb1ec1cd3f461f13a", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__am__recv__param.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__am__recv__param.js new file mode 100644 index 00000000000..801c160dd67 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__am__recv__param.js @@ -0,0 +1,5 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__am__recv__param = +[ + [ "recv_attr", "group___u_c_p___w_o_r_k_e_r.html#a53a8777a31faf7e65289bcc1d710fb19", null ], + [ "reply_ep", "group___u_c_p___w_o_r_k_e_r.html#a5e4629812b7b7737beb6f7f7332b7d7f", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__conn__request__attr.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__conn__request__attr.js new file mode 100644 index 00000000000..62261d0ede3 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__conn__request__attr.js @@ -0,0 +1,6 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__conn__request__attr = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#ad6a97d8268992c34631ac773a6c2148b", null ], + [ "client_address", "group___u_c_p___w_o_r_k_e_r.html#a8ca1dc70d395335dc9f8fe20e9de1a0d", null ], + [ "client_id", "group___u_c_p___w_o_r_k_e_r.html#aff4d88d6fd3b2613e058bbcf43d0815b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__accept__handler.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__accept__handler.js new file mode 100644 index 00000000000..31c8a78984f --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__accept__handler.js @@ -0,0 +1,5 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__listener__accept__handler = +[ + [ "cb", "group___u_c_p___w_o_r_k_e_r.html#a3017ef77fb807d87b60667df14f6c0b0", null ], + [ "arg", "group___u_c_p___w_o_r_k_e_r.html#a05ba12e5d6e6c2b3caef35975644ce85", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__attr.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__attr.js new file mode 100644 index 00000000000..fc4318d531a --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__attr.js @@ -0,0 +1,5 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__listener__attr = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#aaaa6353f56fd585d7c83c363380703f4", null ], + [ "sockaddr", "group___u_c_p___w_o_r_k_e_r.html#affcc213cd4305412937974eefb95bc32", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__conn__handler.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__conn__handler.js new file mode 100644 index 00000000000..86bf53b0d7f --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__conn__handler.js @@ -0,0 +1,5 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__listener__conn__handler = +[ + [ "cb", "group___u_c_p___w_o_r_k_e_r.html#a55ac5ba9e07ca64d55e22730038a4018", null ], + [ "arg", "group___u_c_p___w_o_r_k_e_r.html#ae84882c5fbe486b118460662afe395ec", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__params.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__params.js new file mode 100644 index 00000000000..4c5199a2c5a --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__listener__params.js @@ -0,0 +1,7 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__listener__params = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#afb01e3b0d3c0a04cef0cde4f849fcc1d", null ], + [ "sockaddr", "group___u_c_p___w_o_r_k_e_r.html#a88be57709393e7bf27d10d8a5238b544", null ], + [ "accept_handler", "group___u_c_p___w_o_r_k_e_r.html#a17487f0e8e3102519d7b512c77efdb1f", null ], + [ "conn_handler", "group___u_c_p___w_o_r_k_e_r.html#a0694aacde5fff09dc75e556e8116098a", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__address__attr.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__address__attr.js new file mode 100644 index 00000000000..aab098d0c70 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__address__attr.js @@ -0,0 +1,5 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__worker__address__attr = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#a596a9aee8bfbd1c232c6d63549c75f08", null ], + [ "worker_uid", "group___u_c_p___w_o_r_k_e_r.html#a682d3477655dc66072e03530d95239f2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__attr.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__attr.js new file mode 100644 index 00000000000..c004a460cbc --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__attr.js @@ -0,0 +1,11 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__worker__attr = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#af0f34f82bba00221aa22ec54fa5efc0f", null ], + [ "thread_mode", "group___u_c_p___w_o_r_k_e_r.html#abf2b8b0c74946fbd1791a21369236678", null ], + [ "address_flags", "group___u_c_p___w_o_r_k_e_r.html#a6c288e285b8c870ec576f1a939519799", null ], + [ "address", "group___u_c_p___w_o_r_k_e_r.html#a0863e78ee73ef351311c54d95b6c8fa5", null ], + [ "address_length", "group___u_c_p___w_o_r_k_e_r.html#a7b0ad8e7e5c8d4c4c4931e769ca0fe6f", null ], + [ "max_am_header", "group___u_c_p___w_o_r_k_e_r.html#a7678aa8d4fb18b0d6e2a0276b03e2cb4", null ], + [ "name", "group___u_c_p___w_o_r_k_e_r.html#a3123aa88fefa33c972da4c2bda3bebee", null ], + [ "max_debug_string", "group___u_c_p___w_o_r_k_e_r.html#a79406f6545efcaefffaa34ca99bfdc04", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__params.js b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__params.js new file mode 100644 index 00000000000..a852ea03a81 --- /dev/null +++ b/api/v1.14/html/group___u_c_p___w_o_r_k_e_r_structucp__worker__params.js @@ -0,0 +1,13 @@ +var group___u_c_p___w_o_r_k_e_r_structucp__worker__params = +[ + [ "field_mask", "group___u_c_p___w_o_r_k_e_r.html#a33863ec848e47f79d2e14181fe2aa921", null ], + [ "thread_mode", "group___u_c_p___w_o_r_k_e_r.html#a790642ea681ddd2b0935ad62f70e4ef1", null ], + [ "cpu_mask", "group___u_c_p___w_o_r_k_e_r.html#afc8f70f3ff12f36ea34ad40ff12de61e", null ], + [ "events", "group___u_c_p___w_o_r_k_e_r.html#a89b9add865222b57caee81874704ba89", null ], + [ "user_data", "group___u_c_p___w_o_r_k_e_r.html#a2c277d353e134219265887c4f5339159", null ], + [ "event_fd", "group___u_c_p___w_o_r_k_e_r.html#aaeaf0e7ec196ed72ee2b52183f8d1d7d", null ], + [ "flags", "group___u_c_p___w_o_r_k_e_r.html#adbd9725024f5138a693196f11dab124c", null ], + [ "name", "group___u_c_p___w_o_r_k_e_r.html#a7ea9a6700ec1393aaa95c4b1e1df04e1", null ], + [ "am_alignment", "group___u_c_p___w_o_r_k_e_r.html#aab378fafe0b474381edbe25023910eb4", null ], + [ "client_id", "group___u_c_p___w_o_r_k_e_r.html#a41afbbfba922c2bdc4f35e2c4ecfcaa4", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_s___a_p_i.html b/api/v1.14/html/group___u_c_s___a_p_i.html new file mode 100644 index 00000000000..0f59b082293 --- /dev/null +++ b/api/v1.14/html/group___u_c_s___a_p_i.html @@ -0,0 +1,129 @@ + + + + + + +UCX: Unified Communication Services (UCS) API + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Unified Communication Services (UCS) API
+
+
+ + + + +

+Modules

 UCS Communication Resource
 
+

Detailed Description

+

This section describes UCS API.

+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_s___a_p_i.js b/api/v1.14/html/group___u_c_s___a_p_i.js new file mode 100644 index 00000000000..d23689b855e --- /dev/null +++ b/api/v1.14/html/group___u_c_s___a_p_i.js @@ -0,0 +1,4 @@ +var group___u_c_s___a_p_i = +[ + [ "UCS Communication Resource", "group___u_c_s___r_e_s_o_u_r_c_e.html", "group___u_c_s___r_e_s_o_u_r_c_e" ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e.html b/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e.html new file mode 100644 index 00000000000..bbcf04e79d9 --- /dev/null +++ b/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e.html @@ -0,0 +1,792 @@ + + + + + + +UCX: UCS Communication Resource + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + +

+Data Structures

struct  ucs_sock_addr
 
+ + + + + + + + + + + + + +

+Typedefs

typedef void(* ucs_async_event_cb_t) (int id, ucs_event_set_types_t events, void *arg)
 
typedef struct ucs_sock_addr ucs_sock_addr_t
 
typedef enum ucs_memory_type ucs_memory_type_t
 Memory types. More...
 
typedef unsigned long ucs_time_t
 
typedef void * ucs_status_ptr_t
 Status pointer. More...
 
+ + + + + + + + + + + + +

+Enumerations

enum  ucs_callbackq_flags { UCS_CALLBACKQ_FLAG_FAST = UCS_BIT(0), +UCS_CALLBACKQ_FLAG_ONESHOT = UCS_BIT(1) + }
 
enum  ucs_memory_type {
+  UCS_MEMORY_TYPE_HOST, +UCS_MEMORY_TYPE_CUDA, +UCS_MEMORY_TYPE_CUDA_MANAGED, +UCS_MEMORY_TYPE_ROCM, +
+  UCS_MEMORY_TYPE_ROCM_MANAGED, +UCS_MEMORY_TYPE_LAST, +UCS_MEMORY_TYPE_UNKNOWN = UCS_MEMORY_TYPE_LAST +
+ }
 Memory types. More...
 
enum  ucs_status_t {
+  UCS_OK = 0, +UCS_INPROGRESS = 1, +UCS_ERR_NO_MESSAGE = -1, +UCS_ERR_NO_RESOURCE = -2, +
+  UCS_ERR_IO_ERROR = -3, +UCS_ERR_NO_MEMORY = -4, +UCS_ERR_INVALID_PARAM = -5, +UCS_ERR_UNREACHABLE = -6, +
+  UCS_ERR_INVALID_ADDR = -7, +UCS_ERR_NOT_IMPLEMENTED = -8, +UCS_ERR_MESSAGE_TRUNCATED = -9, +UCS_ERR_NO_PROGRESS = -10, +
+  UCS_ERR_BUFFER_TOO_SMALL = -11, +UCS_ERR_NO_ELEM = -12, +UCS_ERR_SOME_CONNECTS_FAILED = -13, +UCS_ERR_NO_DEVICE = -14, +
+  UCS_ERR_BUSY = -15, +UCS_ERR_CANCELED = -16, +UCS_ERR_SHMEM_SEGMENT = -17, +UCS_ERR_ALREADY_EXISTS = -18, +
+  UCS_ERR_OUT_OF_RANGE = -19, +UCS_ERR_TIMED_OUT = -20, +UCS_ERR_EXCEEDS_LIMIT = -21, +UCS_ERR_UNSUPPORTED = -22, +
+  UCS_ERR_REJECTED = -23, +UCS_ERR_NOT_CONNECTED = -24, +UCS_ERR_CONNECTION_RESET = -25, +UCS_ERR_FIRST_LINK_FAILURE = -40, +
+  UCS_ERR_LAST_LINK_FAILURE = -59, +UCS_ERR_FIRST_ENDPOINT_FAILURE = -60, +UCS_ERR_ENDPOINT_TIMEOUT = -80, +UCS_ERR_LAST_ENDPOINT_FAILURE = -89, +
+  UCS_ERR_LAST = -100 +
+ }
 Status codes. More...
 
enum  ucs_thread_mode_t { UCS_THREAD_MODE_SINGLE, +UCS_THREAD_MODE_SERIALIZED, +UCS_THREAD_MODE_MULTI, +UCS_THREAD_MODE_LAST + }
 Thread sharing mode. More...
 
+ + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t ucs_async_set_event_handler (ucs_async_mode_t mode, int event_fd, ucs_event_set_types_t events, ucs_async_event_cb_t cb, void *arg, ucs_async_context_t *async)
 
ucs_status_t ucs_async_add_timer (ucs_async_mode_t mode, ucs_time_t interval, ucs_async_event_cb_t cb, void *arg, ucs_async_context_t *async, int *timer_id_p)
 
ucs_status_t ucs_async_remove_handler (int id, int sync)
 
ucs_status_t ucs_async_modify_handler (int fd, ucs_event_set_types_t events)
 
ucs_status_t ucs_async_context_create (ucs_async_mode_t mode, ucs_async_context_t **async_p)
 Create an asynchronous execution context. More...
 
void ucs_async_context_destroy (ucs_async_context_t *async)
 Destroy the asynchronous execution context. More...
 
void ucs_async_poll (ucs_async_context_t *async)
 
+

Detailed Description

+

This section describes a concept of the Communication Resource and routines associated with the concept.

+

Data Structure Documentation

+ +
+
+ + + + +
struct ucs_sock_addr
+
+

BSD socket address specification.

+
+ + + + + + + +
Data Fields
+const struct sockaddr * +addr +

Pointer to socket address

+
+socklen_t +addrlen +

Address length

+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef void(* ucs_async_event_cb_t) (int id, ucs_event_set_types_t events, void *arg)
+
+

Async event callback.

+
Parameters
+ + + + +
idEvent id (timer or file descriptor).
eventsThe events that triggered the callback.
argUser-defined argument.
+
+
+ +
+
+ +
+
+ + + + +
typedef struct ucs_sock_addr ucs_sock_addr_t
+
+

BSD socket address specification.

+ +
+
+ +
+
+ + + + +
typedef enum ucs_memory_type ucs_memory_type_t
+
+

List of supported memory types.

+ +
+
+ +
+
+ + + + +
typedef unsigned long ucs_time_t
+
+

UCS time units. These are not necessarily aligned with metric time units. MUST compare short time values with UCS_SHORT_TIME_CMP to handle wrap-around.

+ +
+
+ +
+
+ + + + +
typedef void* ucs_status_ptr_t
+
+

A pointer can represent one of these values:

    +
  • NULL / UCS_OK
  • +
  • Error code pointer (UCS_ERR_xx)
  • +
  • Valid pointer
  • +
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum ucs_callbackq_flags
+
+

Callback flags

+ + + +
Enumerator
UCS_CALLBACKQ_FLAG_FAST  +

Fast-path (best effort)

+
UCS_CALLBACKQ_FLAG_ONESHOT  +

Call the callback only once (cannot be used with FAST)

+
+ +
+
+ +
+
+ + + + +
enum ucs_memory_type
+
+

List of supported memory types.

+ + + + + + + + +
Enumerator
UCS_MEMORY_TYPE_HOST  +

Default system memory

+
UCS_MEMORY_TYPE_CUDA  +

NVIDIA CUDA memory

+
UCS_MEMORY_TYPE_CUDA_MANAGED  +

NVIDIA CUDA managed (or unified) memory

+
UCS_MEMORY_TYPE_ROCM  +

AMD ROCM memory

+
UCS_MEMORY_TYPE_ROCM_MANAGED  +

AMD ROCM managed system memory

+
UCS_MEMORY_TYPE_LAST  +
UCS_MEMORY_TYPE_UNKNOWN  +
+ +
+
+ +
+
+ + + + +
enum ucs_status_t
+
+
Note
In order to evaluate the necessary steps to recover from a certain error, all error codes which can be returned by the external API are grouped by the largest entity permanently effected by the error. Each group ranges between its UCS_ERR_FIRST_<name> and UCS_ERR_LAST_<name> enum values. For example, if a link fails it may be sufficient to destroy (and possibly replace) it, in contrast to an endpoint-level error.
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
UCS_OK  +
UCS_INPROGRESS  +
UCS_ERR_NO_MESSAGE  +
UCS_ERR_NO_RESOURCE  +
UCS_ERR_IO_ERROR  +
UCS_ERR_NO_MEMORY  +
UCS_ERR_INVALID_PARAM  +
UCS_ERR_UNREACHABLE  +
UCS_ERR_INVALID_ADDR  +
UCS_ERR_NOT_IMPLEMENTED  +
UCS_ERR_MESSAGE_TRUNCATED  +
UCS_ERR_NO_PROGRESS  +
UCS_ERR_BUFFER_TOO_SMALL  +
UCS_ERR_NO_ELEM  +
UCS_ERR_SOME_CONNECTS_FAILED  +
UCS_ERR_NO_DEVICE  +
UCS_ERR_BUSY  +
UCS_ERR_CANCELED  +
UCS_ERR_SHMEM_SEGMENT  +
UCS_ERR_ALREADY_EXISTS  +
UCS_ERR_OUT_OF_RANGE  +
UCS_ERR_TIMED_OUT  +
UCS_ERR_EXCEEDS_LIMIT  +
UCS_ERR_UNSUPPORTED  +
UCS_ERR_REJECTED  +
UCS_ERR_NOT_CONNECTED  +
UCS_ERR_CONNECTION_RESET  +
UCS_ERR_FIRST_LINK_FAILURE  +
UCS_ERR_LAST_LINK_FAILURE  +
UCS_ERR_FIRST_ENDPOINT_FAILURE  +
UCS_ERR_ENDPOINT_TIMEOUT  +
UCS_ERR_LAST_ENDPOINT_FAILURE  +
UCS_ERR_LAST  +
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + +
enum ucs_thread_mode_t
+
+

Specifies thread sharing mode of an object.

+ + + + + +
Enumerator
UCS_THREAD_MODE_SINGLE  +

Only the master thread can access (i.e. the thread that initialized the context; multiple threads may exist and never access)

+
UCS_THREAD_MODE_SERIALIZED  +

Multiple threads can access, but only one at a time

+
UCS_THREAD_MODE_MULTI  +

Multiple threads can access concurrently

+
UCS_THREAD_MODE_LAST  +
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucs_async_set_event_handler (ucs_async_mode_t mode,
int event_fd,
ucs_event_set_types_t events,
ucs_async_event_cb_t cb,
void * arg,
ucs_async_context_t * async 
)
+
+

Register a file descriptor for monitoring (call handler upon events). Every fd can have only one handler.

+
Parameters
+ + + + + + + +
modeThread or signal.
event_fdFile descriptor to set handler for.
eventsEvents to wait on (UCS_EVENT_SET_EVxxx bits).
cbCallback function to execute.
argArgument to callback.
asyncAsync context to which events are delivered. If NULL, safety is up to the user.
+
+
+
Returns
Error code as defined by ucs_status_t.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t ucs_async_add_timer (ucs_async_mode_t mode,
ucs_time_t interval,
ucs_async_event_cb_t cb,
void * arg,
ucs_async_context_t * async,
int * timer_id_p 
)
+
+

Add timer handler.

+
Parameters
+ + + + + + + +
modeThread or signal.
intervalTimer interval.
cbCallback function to execute.
argArgument to callback.
asyncAsync context to which events are delivered. If NULL, safety is up to the user.
timer_id_pFilled with timer id.
+
+
+
Returns
Error code as defined by ucs_status_t.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucs_async_remove_handler (int id,
int sync 
)
+
+

Remove an event handler (Timer or event file).

+
Parameters
+ + + +
idTimer/FD to remove.
syncIf nonzero, wait until the handler for this event is not running anymore. If called from the context of the callback, the handler will be removed immediately after the current callback returns.
+
+
+
Returns
Error code as defined by ucs_status_t.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucs_async_modify_handler (int fd,
ucs_event_set_types_t events 
)
+
+

Modify events mask for an existing event handler (event file).

+
Parameters
+ + + +
fdFile descriptor modify events for.
eventsNew set of events to wait on (UCS_EVENT_SET_EVxxx bits).
+
+
+
Returns
Error code as defined by ucs_status_t.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t ucs_async_context_create (ucs_async_mode_t mode,
ucs_async_context_t ** async_p 
)
+
+

Allocate and initialize an asynchronous execution context. This can be used to ensure safe event delivery.

+
Parameters
+ + + +
modeIndicates whether to use signals or polling threads for waiting.
async_pEvent context pointer to initialize.
+
+
+
Returns
Error code as defined by ucs_status_t.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void ucs_async_context_destroy (ucs_async_context_t * async)
+
+

Clean up the async context, and release system resources if possible. The context memory released.

+
Parameters
+ + +
asyncAsynchronous context to clean up.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void ucs_async_poll (ucs_async_context_t * async)
+
+

Poll on async context.

+
Parameters
+ + +
asyncAsync context to poll on. NULL polls on all.
+
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e.js b/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e.js new file mode 100644 index 00000000000..23e2397cea7 --- /dev/null +++ b/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e.js @@ -0,0 +1,73 @@ +var group___u_c_s___r_e_s_o_u_r_c_e = +[ + [ "ucs_sock_addr", "group___u_c_s___r_e_s_o_u_r_c_e.html#structucs__sock__addr", [ + [ "addr", "group___u_c_s___r_e_s_o_u_r_c_e.html#a6294db86dc9327058b8a31cb4af87edb", null ], + [ "addrlen", "group___u_c_s___r_e_s_o_u_r_c_e.html#ac86eaa6362c3345d05c75bb4508ff2f1", null ] + ] ], + [ "ucs_async_event_cb_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga6175fd675274497a9d714623a6ffba6f", null ], + [ "ucs_sock_addr_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga1f31d58cb8b110b03a3df3efc04ab3c0", null ], + [ "ucs_memory_type_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#gaf9af40bd8efcc0aac27a5194deeb1fbf", null ], + [ "ucs_time_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga69fbc58f4523686b459ee0fff60b5197", null ], + [ "ucs_status_ptr_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#gaf4381d25f2fb0cf02f996f3e0729ed62", null ], + [ "ucs_callbackq_flags", "group___u_c_s___r_e_s_o_u_r_c_e.html#gaa693580c739b1ba94bd6218d00222110", [ + [ "UCS_CALLBACKQ_FLAG_FAST", "group___u_c_s___r_e_s_o_u_r_c_e.html#ggaa693580c739b1ba94bd6218d00222110a05c5239629fdbfb4dc63a2b354b93e93", null ], + [ "UCS_CALLBACKQ_FLAG_ONESHOT", "group___u_c_s___r_e_s_o_u_r_c_e.html#ggaa693580c739b1ba94bd6218d00222110aabec96aecc786be2edb8f16c5034c493", null ] + ] ], + [ "ucs_memory_type", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga5cfcc524f5dc586101a3e7caff8d982d", [ + [ "UCS_MEMORY_TYPE_HOST", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da4bebe1325d9a3be9b5821bec4f78a55f", null ], + [ "UCS_MEMORY_TYPE_CUDA", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dafc4cb4732ebd0539e364bb6a4466c2fc", null ], + [ "UCS_MEMORY_TYPE_CUDA_MANAGED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dab61ccfc729e22de60f4831cc60ef1e16", null ], + [ "UCS_MEMORY_TYPE_ROCM", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da84a165376983da6abbdf0e9cc7d3d546", null ], + [ "UCS_MEMORY_TYPE_ROCM_MANAGED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dabc097618d75594ac6df460592561cd77", null ], + [ "UCS_MEMORY_TYPE_LAST", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da6105aba9983dc25cbf7cbf4d03f655d7", null ], + [ "UCS_MEMORY_TYPE_UNKNOWN", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dab0e5609f442bf33d5447c6e8b5928215", null ] + ] ], + [ "ucs_status_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga88ca72d7294772e7d2edb70a2df15558", [ + [ "UCS_OK", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a1a7fbae02ac33fb94f519c7c773f419a", null ], + [ "UCS_INPROGRESS", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a77aa02620851779729e4ad6ceb41f84a", null ], + [ "UCS_ERR_NO_MESSAGE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a1bbd2445646883a1ef758fe2ef75e586", null ], + [ "UCS_ERR_NO_RESOURCE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a83fc93632e7b3e3251410985aab27edc", null ], + [ "UCS_ERR_IO_ERROR", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aaaf39ceea715057fdec5736443e0265b", null ], + [ "UCS_ERR_NO_MEMORY", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a9919ffd4eaf870612c4aa63df65ae0a6", null ], + [ "UCS_ERR_INVALID_PARAM", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab5a5c5278c83f957a096444de28db597", null ], + [ "UCS_ERR_UNREACHABLE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab56647f308360ef22316ed42a700e057", null ], + [ "UCS_ERR_INVALID_ADDR", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aaebc6a3a7f1626b431f80ff66e9a4922", null ], + [ "UCS_ERR_NOT_IMPLEMENTED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a623f715116a8d8986c737bf626e956b4", null ], + [ "UCS_ERR_MESSAGE_TRUNCATED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aef3defd5d754266db882e079fad7c544", null ], + [ "UCS_ERR_NO_PROGRESS", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa3e6111410197f82888c6527258a5149", null ], + [ "UCS_ERR_BUFFER_TOO_SMALL", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a2ab3b7e6c60cb0afe80c2e11cc39122f", null ], + [ "UCS_ERR_NO_ELEM", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab67faa1abcd824b5bb47a094491524ba", null ], + [ "UCS_ERR_SOME_CONNECTS_FAILED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa74d2a7cf7aeeaaaff6724bf0d700743", null ], + [ "UCS_ERR_NO_DEVICE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558af42564cbfb39953294f80d782404a3bf", null ], + [ "UCS_ERR_BUSY", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a331d8719f76965a4514684c570110105", null ], + [ "UCS_ERR_CANCELED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a446ce3cf260eab2465e9f7adfbad1f11", null ], + [ "UCS_ERR_SHMEM_SEGMENT", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a5cfb884e5be55df1f4acf19990f4029d", null ], + [ "UCS_ERR_ALREADY_EXISTS", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a8295b85b654e3145ee08a94714832112", null ], + [ "UCS_ERR_OUT_OF_RANGE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a7ce30c5ce3f9b06ed9d51a618dc76920", null ], + [ "UCS_ERR_TIMED_OUT", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a28655a75087757c2b6c28adcae5562c7", null ], + [ "UCS_ERR_EXCEEDS_LIMIT", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a45d1cd8512f1ba4391f91b0bc399f1fb", null ], + [ "UCS_ERR_UNSUPPORTED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a252c38290855ceaf849c04b7fa52dc23", null ], + [ "UCS_ERR_REJECTED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a7ebfa416cd741e37ec1a0371feaaa10a", null ], + [ "UCS_ERR_NOT_CONNECTED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a19ed4a30ff1b25ffdc00adeb8cd211fa", null ], + [ "UCS_ERR_CONNECTION_RESET", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a3845462922a8704ddca8be0dafc47cd5", null ], + [ "UCS_ERR_FIRST_LINK_FAILURE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a8356f94996c7759a785f8d508ff58779", null ], + [ "UCS_ERR_LAST_LINK_FAILURE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a9e4aac3283309260e9b8f34bca72209c", null ], + [ "UCS_ERR_FIRST_ENDPOINT_FAILURE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a2441db0c09803ed41453968577e29446", null ], + [ "UCS_ERR_ENDPOINT_TIMEOUT", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558adc9adfec2d408b4efd95be36dcb119cf", null ], + [ "UCS_ERR_LAST_ENDPOINT_FAILURE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa54339cfd8cefc96aa4e9d5d0b824284", null ], + [ "UCS_ERR_LAST", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a359c2fe5ffba5911f340ec8a750917bb", null ] + ] ], + [ "ucs_thread_mode_t", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga40e9f363c389e702ad9920f5d52525ce", [ + [ "UCS_THREAD_MODE_SINGLE", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525ceabc2f71e39a3527f7abe6a1c47f0a5a25", null ], + [ "UCS_THREAD_MODE_SERIALIZED", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525cea95d2ddb2144f8cfebfe305be13bd6776", null ], + [ "UCS_THREAD_MODE_MULTI", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525cea8f8e252ce479d99c7cdc708321534904", null ], + [ "UCS_THREAD_MODE_LAST", "group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525ceaf7b465a8a13f216fd6c35a828a8c7986", null ] + ] ], + [ "ucs_async_set_event_handler", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga4bd1833c4a212330cbdff7605858819c", null ], + [ "ucs_async_add_timer", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga11a624df0bff9513f87b273506a8f711", null ], + [ "ucs_async_remove_handler", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga7253f7d2762b8d288e78d573f9948aef", null ], + [ "ucs_async_modify_handler", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga46ac2384234000408d56065a8e43fc5a", null ], + [ "ucs_async_context_create", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga8c3ad862fef1d35af708628d778a5a5b", null ], + [ "ucs_async_context_destroy", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga65db07fbee18ab2bd46a738c89ccc8f7", null ], + [ "ucs_async_poll", "group___u_c_s___r_e_s_o_u_r_c_e.html#ga41fb5f0e0719d9b6d2c07358c6a9e6ae", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e_structucs__sock__addr.js b/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e_structucs__sock__addr.js new file mode 100644 index 00000000000..678b4b9c9df --- /dev/null +++ b/api/v1.14/html/group___u_c_s___r_e_s_o_u_r_c_e_structucs__sock__addr.js @@ -0,0 +1,5 @@ +var group___u_c_s___r_e_s_o_u_r_c_e_structucs__sock__addr = +[ + [ "addr", "group___u_c_s___r_e_s_o_u_r_c_e.html#a6294db86dc9327058b8a31cb4af87edb", null ], + [ "addrlen", "group___u_c_s___r_e_s_o_u_r_c_e.html#ac86eaa6362c3345d05c75bb4508ff2f1", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___a_m.html b/api/v1.14/html/group___u_c_t___a_m.html new file mode 100644 index 00000000000..2d367199a3b --- /dev/null +++ b/api/v1.14/html/group___u_c_t___a_m.html @@ -0,0 +1,626 @@ + + + + + + +UCX: UCT Active messages + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + +

+Typedefs

typedef ucs_status_t(* uct_am_callback_t) (void *arg, void *data, size_t length, unsigned flags)
 Callback to process incoming active message. More...
 
typedef void(* uct_am_tracer_t) (void *arg, uct_am_trace_type_t type, uint8_t id, const void *data, size_t length, char *buffer, size_t max)
 Callback to trace active messages. More...
 
+ + + + + + + +

+Enumerations

enum  uct_msg_flags { UCT_SEND_FLAG_SIGNALED = UCS_BIT(0), +UCT_SEND_FLAG_PEER_CHECK = UCS_BIT(1) + }
 Flags for active message send operation. More...
 
enum  uct_am_trace_type {
+  UCT_AM_TRACE_TYPE_SEND, +UCT_AM_TRACE_TYPE_RECV, +UCT_AM_TRACE_TYPE_SEND_DROP, +UCT_AM_TRACE_TYPE_RECV_DROP, +
+  UCT_AM_TRACE_TYPE_LAST +
+ }
 Trace types for active message tracer. More...
 
+ + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_iface_set_am_handler (uct_iface_h iface, uint8_t id, uct_am_callback_t cb, void *arg, uint32_t flags)
 Set active message handler for the interface. More...
 
ucs_status_t uct_iface_set_am_tracer (uct_iface_h iface, uct_am_tracer_t tracer, void *arg)
 Set active message tracer for the interface. More...
 
void uct_iface_release_desc (void *desc)
 Release AM descriptor. More...
 
ucs_status_t uct_ep_am_short (uct_ep_h ep, uint8_t id, uint64_t header, const void *payload, unsigned length)
 
ucs_status_t uct_ep_am_short_iov (uct_ep_h ep, uint8_t id, const uct_iov_t *iov, size_t iovcnt)
 Short io-vector send operation. More...
 
ssize_t uct_ep_am_bcopy (uct_ep_h ep, uint8_t id, uct_pack_callback_t pack_cb, void *arg, unsigned flags)
 
ucs_status_t uct_ep_am_zcopy (uct_ep_h ep, uint8_t id, const void *header, unsigned header_length, const uct_iov_t *iov, size_t iovcnt, unsigned flags, uct_completion_t *comp)
 Send active message while avoiding local memory copy. More...
 
+

Detailed Description

+

Defines active message functions.

+

Typedef Documentation

+ +
+
+ + + + +
typedef ucs_status_t(* uct_am_callback_t) (void *arg, void *data, size_t length, unsigned flags)
+
+

When the callback is called, flags indicates how data should be handled. If flags contain UCT_CB_PARAM_FLAG_DESC value, it means data is part of a descriptor which must be released later by uct_iface_release_desc by the user if the callback returns UCS_INPROGRESS.

+
Parameters
+ + + + + +
[in]argUser-defined argument.
[in]dataPoints to the received data. This may be a part of a descriptor which may be released later.
[in]lengthLength of data.
[in]flagsMask with uct_cb_param_flags
+
+
+
Note
This callback could be set and released by uct_iface_set_am_handler function.
+
Return values
+ + + +
UCS_OK- descriptor was consumed, and can be released by the caller.
UCS_INPROGRESS- descriptor is owned by the callee, and would be released later. Supported only if flags contain UCT_CB_PARAM_FLAG_DESC value. Otherwise, this is an error.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* uct_am_tracer_t) (void *arg, uct_am_trace_type_t type, uint8_t id, const void *data, size_t length, char *buffer, size_t max)
+
+

Writes a string which represents active message contents into 'buffer'.

+
Parameters
+ + + + + + + + +
[in]argUser-defined argument.
[in]typeMessage type.
[in]idActive message id.
[in]dataPoints to the received data.
[in]lengthLength of data.
[out]bufferFilled with a debug information string.
[in]maxMaximal length of the string.
+
+
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum uct_msg_flags
+
+ + + +
Enumerator
UCT_SEND_FLAG_SIGNALED  +

Trigger UCT_EVENT_RECV_SIG event on remote side. Make best effort attempt to avoid triggering UCT_EVENT_RECV event. Ignored if not supported by interface.

+
UCT_SEND_FLAG_PEER_CHECK  +

Forces checking connectivity to a peer. If the connection is not alive, an error callback will be invoked. If the flag is not set, there is no guarantee that a connectivity error could be detected.

+
+ +
+
+ +
+
+ + + + +
enum uct_am_trace_type
+
+ + + + + + +
Enumerator
UCT_AM_TRACE_TYPE_SEND  +
UCT_AM_TRACE_TYPE_RECV  +
UCT_AM_TRACE_TYPE_SEND_DROP  +
UCT_AM_TRACE_TYPE_RECV_DROP  +
UCT_AM_TRACE_TYPE_LAST  +
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_set_am_handler (uct_iface_h iface,
uint8_t id,
uct_am_callback_t cb,
void * arg,
uint32_t flags 
)
+
+

Only one handler can be set of each active message ID, and setting a handler replaces the previous value. If cb == NULL, the current handler is removed.

+
Parameters
+ + + + + + +
[in]ifaceInterface to set the active message handler for.
[in]idActive message id. Must be 0..UCT_AM_ID_MAX-1.
[in]cbActive message callback. NULL to clear.
[in]argActive message argument.
[in]flagsRequired callback flags
+
+
+
Returns
error code if the interface does not support active messages or requested callback flags
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_set_am_tracer (uct_iface_h iface,
uct_am_tracer_t tracer,
void * arg 
)
+
+

Sets a function which dumps active message debug information to a buffer, which is printed every time an active message is sent or received, when data tracing is on. Without the tracer, only transport-level information is printed.

+
Parameters
+ + + + +
[in]ifaceInterface to set the active message tracer for.
[in]tracerActive message tracer. NULL to clear.
[in]argTracer custom argument.
+
+
+ +
+
+ +
+
+ + + + + + + + +
void uct_iface_release_desc (void * desc)
+
+

Release active message descriptor desc, which was passed to the active message callback, and owned by the callee.

+
Parameters
+ + +
[in]descDescriptor to release.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_am_short (uct_ep_h ep,
uint8_t id,
uint64_t header,
const void * payload,
unsigned length 
)
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_am_short_iov (uct_ep_h ep,
uint8_t id,
const uct_iov_tiov,
size_t iovcnt 
)
+
+

This routine sends a message using short protocol. The input data in iov array of uct_iov_t structures is sent to remote side to contiguous buffer keeping the order of the data in the array.

+
Parameters
+ + + + + +
[in]epDestination endpoint handle.
[in]idActive message id. Must be in range 0..UCT_AM_ID_MAX-1.
[in]iovPoints to an array of uct_iov_t structures. The iov pointer must be a valid address of an array of uct_iov_t structures. A particular structure pointer must be a valid address. A NULL terminated array is not required. stride and count fields in uct_iov_t structure are ignored in current implementation. The total size of the data buffers in the array is limited by uct_iface_attr::cap::am::max_short.
[in]iovcntSize of the iov data uct_iov_t structures array. If iovcnt is zero, the data is considered empty. iovcnt is limited by uct_iface_attr::cap::am::max_iov.
+
+
+
Returns
UCS_OK Operation completed successfully.
+
+UCS_ERR_NO_RESOURCE Could not start the operation due to lack of send resources.
+
+otherwise Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ssize_t uct_ep_am_bcopy (uct_ep_h ep,
uint8_t id,
uct_pack_callback_t pack_cb,
void * arg,
unsigned flags 
)
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_am_zcopy (uct_ep_h ep,
uint8_t id,
const void * header,
unsigned header_length,
const uct_iov_tiov,
size_t iovcnt,
unsigned flags,
uct_completion_tcomp 
)
+
+

The input data in iov array of uct_iov_t structures sent to remote side ("gather output"). Buffers in iov are processed in array order. This means that the function complete iov[0] before proceeding to iov[1], and so on.

+
Parameters
+ + + + + + + + + +
[in]epDestination endpoint handle.
[in]idActive message id. Must be in range 0..UCT_AM_ID_MAX-1.
[in]headerActive message header.
[in]header_lengthActive message header length in bytes.
[in]iovPoints to an array of uct_iov_t structures. The iov pointer must be a valid address of an array of uct_iov_t structures. A particular structure pointer must be a valid address. A NULL terminated array is not required.
[in]iovcntSize of the iov data uct_iov_t structures array. If iovcnt is zero, the data is considered empty. iovcnt is limited by uct_iface_attr::cap::am::max_iov.
[in]flagsActive message flags, see uct_msg_flags.
[in]compCompletion handle as defined by uct_completion_t.
+
+
+
Returns
UCS_OK Operation completed successfully.
+
+UCS_INPROGRESS Some communication operations are still in progress. If non-NULL comp is provided, it will be updated upon completion of these operations.
+
+UCS_ERR_NO_RESOURCE Could not start the operation due to lack of send resources.
+
Note
If the operation returns UCS_INPROGRESS, the memory buffers pointed to by iov array must not be modified until the operation is completed by comp. header can be released or changed.
+
Examples:
uct_hello_world.c.
+
+
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___a_m.js b/api/v1.14/html/group___u_c_t___a_m.js new file mode 100644 index 00000000000..dcb28aba019 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___a_m.js @@ -0,0 +1,23 @@ +var group___u_c_t___a_m = +[ + [ "uct_am_callback_t", "group___u_c_t___a_m.html#gaeeaac1f152fc82d237e286a663e83d04", null ], + [ "uct_am_tracer_t", "group___u_c_t___a_m.html#gae089079bf0edee87f4f8be3edc0164cb", null ], + [ "uct_msg_flags", "group___u_c_t___a_m.html#ga139e5d124e16d412200bf64bdbccab1c", [ + [ "UCT_SEND_FLAG_SIGNALED", "group___u_c_t___a_m.html#gga139e5d124e16d412200bf64bdbccab1ca5af3a2c43c1e989a4f21f97188f38b06", null ], + [ "UCT_SEND_FLAG_PEER_CHECK", "group___u_c_t___a_m.html#gga139e5d124e16d412200bf64bdbccab1ca222442e08a093d34d6266e810346f4d8", null ] + ] ], + [ "uct_am_trace_type", "group___u_c_t___a_m.html#gacbe4c7fdcaf25cd7bd004a3c2d54f067", [ + [ "UCT_AM_TRACE_TYPE_SEND", "group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067aef58a6db54a952e5e34edd91325a83ed", null ], + [ "UCT_AM_TRACE_TYPE_RECV", "group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a02b0b980c43b7d66823bb0169d03f98f", null ], + [ "UCT_AM_TRACE_TYPE_SEND_DROP", "group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a70335ae779aaa99685d6842f9e85a6db", null ], + [ "UCT_AM_TRACE_TYPE_RECV_DROP", "group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067aa2125f63177d657998f381a60e60e8fd", null ], + [ "UCT_AM_TRACE_TYPE_LAST", "group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a74589340125a9634d4f1cba73da0b0a1", null ] + ] ], + [ "uct_iface_set_am_handler", "group___u_c_t___a_m.html#ga81dd3f74f8dc8c2c950d932fca0f799e", null ], + [ "uct_iface_set_am_tracer", "group___u_c_t___a_m.html#gaed13079973d867e4bb18be3696216a3a", null ], + [ "uct_iface_release_desc", "group___u_c_t___a_m.html#gac894ed0c24a3481f316945a462d67921", null ], + [ "uct_ep_am_short", "group___u_c_t___a_m.html#ga0d170165e2d16dccbe45588ebad181f3", null ], + [ "uct_ep_am_short_iov", "group___u_c_t___a_m.html#ga54b4c1f0426349ac9fc498736c53c0e7", null ], + [ "uct_ep_am_bcopy", "group___u_c_t___a_m.html#gae29dad6b69beaf21c19255906742e14d", null ], + [ "uct_ep_am_zcopy", "group___u_c_t___a_m.html#gae79d303f72e688df6d49bc44823c2210", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___a_m_o.html b/api/v1.14/html/group___u_c_t___a_m_o.html new file mode 100644 index 00000000000..0448c0014b6 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___a_m_o.html @@ -0,0 +1,452 @@ + + + + + + +UCX: UCT Atomic operations + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_ep_atomic_cswap64 (uct_ep_h ep, uint64_t compare, uint64_t swap, uint64_t remote_addr, uct_rkey_t rkey, uint64_t *result, uct_completion_t *comp)
 
ucs_status_t uct_ep_atomic_cswap32 (uct_ep_h ep, uint32_t compare, uint32_t swap, uint64_t remote_addr, uct_rkey_t rkey, uint32_t *result, uct_completion_t *comp)
 
ucs_status_t uct_ep_atomic32_post (uct_ep_h ep, uct_atomic_op_t opcode, uint32_t value, uint64_t remote_addr, uct_rkey_t rkey)
 
ucs_status_t uct_ep_atomic64_post (uct_ep_h ep, uct_atomic_op_t opcode, uint64_t value, uint64_t remote_addr, uct_rkey_t rkey)
 
ucs_status_t uct_ep_atomic32_fetch (uct_ep_h ep, uct_atomic_op_t opcode, uint32_t value, uint32_t *result, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
 
ucs_status_t uct_ep_atomic64_fetch (uct_ep_h ep, uct_atomic_op_t opcode, uint64_t value, uint64_t *result, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
 
+

Detailed Description

+

Defines atomic operations.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_atomic_cswap64 (uct_ep_h ep,
uint64_t compare,
uint64_t swap,
uint64_t remote_addr,
uct_rkey_t rkey,
uint64_t * result,
uct_completion_tcomp 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_atomic_cswap32 (uct_ep_h ep,
uint32_t compare,
uint32_t swap,
uint64_t remote_addr,
uct_rkey_t rkey,
uint32_t * result,
uct_completion_tcomp 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_atomic32_post (uct_ep_h ep,
uct_atomic_op_t opcode,
uint32_t value,
uint64_t remote_addr,
uct_rkey_t rkey 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_atomic64_post (uct_ep_h ep,
uct_atomic_op_t opcode,
uint64_t value,
uint64_t remote_addr,
uct_rkey_t rkey 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_atomic32_fetch (uct_ep_h ep,
uct_atomic_op_t opcode,
uint32_t value,
uint32_t * result,
uint64_t remote_addr,
uct_rkey_t rkey,
uct_completion_tcomp 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_atomic64_fetch (uct_ep_h ep,
uct_atomic_op_t opcode,
uint64_t value,
uint64_t * result,
uint64_t remote_addr,
uct_rkey_t rkey,
uct_completion_tcomp 
)
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___a_m_o.js b/api/v1.14/html/group___u_c_t___a_m_o.js new file mode 100644 index 00000000000..a92dfa2aa61 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___a_m_o.js @@ -0,0 +1,9 @@ +var group___u_c_t___a_m_o = +[ + [ "uct_ep_atomic_cswap64", "group___u_c_t___a_m_o.html#ga84362057b7249456e00c00844fc60290", null ], + [ "uct_ep_atomic_cswap32", "group___u_c_t___a_m_o.html#ga8c93ec75fb32dd52cda9cbe628b1077f", null ], + [ "uct_ep_atomic32_post", "group___u_c_t___a_m_o.html#ga81f59547148ece219e188d4196932e9f", null ], + [ "uct_ep_atomic64_post", "group___u_c_t___a_m_o.html#ga0e702db435215d222e12186cdcdf737c", null ], + [ "uct_ep_atomic32_fetch", "group___u_c_t___a_m_o.html#ga2d4fba85b9c7e5d70f09579bddbd91c6", null ], + [ "uct_ep_atomic64_fetch", "group___u_c_t___a_m_o.html#gae13c6bff2a3e26a133a3d17253fa3428", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___a_p_i.html b/api/v1.14/html/group___u_c_t___a_p_i.html new file mode 100644 index 00000000000..15d25bf40f3 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___a_p_i.html @@ -0,0 +1,143 @@ + + + + + + +UCX: Unified Communication Transport (UCT) API + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Unified Communication Transport (UCT) API
+
+
+ + + + + + + + + + + + + + + + + + +

+Modules

 UCT Communication Resource
 
 UCT Communication Context
 
 UCT Memory Domain
 
 UCT Active messages
 
 UCT Remote memory access operations
 
 UCT Atomic operations
 
 UCT Tag matching operations
 
 UCT client-server operations
 
+

Detailed Description

+

This section describes UCT API.

+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___a_p_i.js b/api/v1.14/html/group___u_c_t___a_p_i.js new file mode 100644 index 00000000000..011c25f90a8 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___a_p_i.js @@ -0,0 +1,11 @@ +var group___u_c_t___a_p_i = +[ + [ "UCT Communication Resource", "group___u_c_t___r_e_s_o_u_r_c_e.html", "group___u_c_t___r_e_s_o_u_r_c_e" ], + [ "UCT Communication Context", "group___u_c_t___c_o_n_t_e_x_t.html", "group___u_c_t___c_o_n_t_e_x_t" ], + [ "UCT Memory Domain", "group___u_c_t___m_d.html", "group___u_c_t___m_d" ], + [ "UCT Active messages", "group___u_c_t___a_m.html", "group___u_c_t___a_m" ], + [ "UCT Remote memory access operations", "group___u_c_t___r_m_a.html", "group___u_c_t___r_m_a" ], + [ "UCT Atomic operations", "group___u_c_t___a_m_o.html", "group___u_c_t___a_m_o" ], + [ "UCT Tag matching operations", "group___u_c_t___t_a_g.html", "group___u_c_t___t_a_g" ], + [ "UCT client-server operations", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r" ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html new file mode 100644 index 00000000000..4fa0cf83d50 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html @@ -0,0 +1,1588 @@ + + + + + + +UCX: UCT client-server operations + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  uct_ep_connect_params
 Parameters for connecting a UCT endpoint by uct_ep_connect. More...
 
struct  uct_cm_attr
 Connection manager attributes, capabilities and limitations. More...
 
struct  uct_listener_attr
 UCT listener attributes, capabilities and limitations. More...
 
struct  uct_listener_params
 Parameters for creating a listener object uct_listener_h by uct_listener_create. More...
 
struct  uct_cm_ep_priv_data_pack_args
 Arguments to the client-server private data pack callback. More...
 
struct  uct_cm_ep_resolve_args
 Arguments to the client-server resolved callback. More...
 
struct  uct_cm_remote_data
 Data received from the remote peer. More...
 
struct  uct_cm_listener_conn_request_args
 Arguments to the listener's connection request callback. More...
 
struct  uct_cm_ep_client_connect_args
 Arguments to the client's connect callback. More...
 
struct  uct_cm_ep_server_conn_notify_args
 Arguments to the server's notify callback. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct uct_cm_ep_priv_data_pack_args uct_cm_ep_priv_data_pack_args_t
 Arguments to the client-server private data pack callback. More...
 
typedef struct uct_cm_ep_resolve_args uct_cm_ep_resolve_args_t
 Arguments to the client-server resolved callback. More...
 
typedef struct uct_cm_remote_data uct_cm_remote_data_t
 Data received from the remote peer. More...
 
typedef struct uct_cm_listener_conn_request_args uct_cm_listener_conn_request_args_t
 Arguments to the listener's connection request callback. More...
 
typedef struct uct_cm_ep_client_connect_args uct_cm_ep_client_connect_args_t
 Arguments to the client's connect callback. More...
 
typedef struct uct_cm_ep_server_conn_notify_args uct_cm_ep_server_conn_notify_args_t
 Arguments to the server's notify callback. More...
 
typedef void(* uct_sockaddr_conn_request_callback_t) (uct_iface_h iface, void *arg, uct_conn_request_h conn_request, const void *conn_priv_data, size_t length)
 Callback to process an incoming connection request on the server side. More...
 
typedef void(* uct_cm_listener_conn_request_callback_t) (uct_listener_h listener, void *arg, const uct_cm_listener_conn_request_args_t *conn_req_args)
 Callback to process an incoming connection request on the server side listener in a connection manager. More...
 
typedef void(* uct_cm_ep_server_conn_notify_callback_t) (uct_ep_h ep, void *arg, const uct_cm_ep_server_conn_notify_args_t *connect_args)
 Callback to process an incoming connection establishment acknowledgment on the server side listener, from the client, which indicates that the client side is connected. The callback also notifies the server side of a local error on a not-yet-connected endpoint. More...
 
typedef void(* uct_cm_ep_client_connect_callback_t) (uct_ep_h ep, void *arg, const uct_cm_ep_client_connect_args_t *connect_args)
 Callback to process an incoming connection response on the client side from the server or handle a local error on a not-yet-connected endpoint. More...
 
typedef void(* uct_ep_disconnect_cb_t) (uct_ep_h ep, void *arg)
 Callback to handle the disconnection of the remote peer. More...
 
typedef ssize_t(* uct_cm_ep_priv_data_pack_callback_t) (void *arg, const uct_cm_ep_priv_data_pack_args_t *pack_args, void *priv_data)
 Callback to fill the user's private data in a client-server flow. More...
 
typedef ucs_status_t(* uct_cm_ep_resolve_callback_t) (void *user_data, const uct_cm_ep_resolve_args_t *resolve_args)
 Callback to notify that the client side endpoint is bound to a local device. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  uct_cm_attr_field { UCT_CM_ATTR_FIELD_MAX_CONN_PRIV = UCS_BIT(0) + }
 UCT connection manager attributes field mask. More...
 
enum  uct_listener_attr_field { UCT_LISTENER_ATTR_FIELD_SOCKADDR = UCS_BIT(0) + }
 UCT listener attributes field mask. More...
 
enum  uct_listener_params_field { UCT_LISTENER_PARAM_FIELD_BACKLOG = UCS_BIT(0), +UCT_LISTENER_PARAM_FIELD_CONN_REQUEST_CB = UCS_BIT(1), +UCT_LISTENER_PARAM_FIELD_USER_DATA = UCS_BIT(2) + }
 UCT listener created by uct_listener_create parameters field mask. More...
 
enum  uct_ep_connect_params_field { UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA = UCS_BIT(0), +UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA_LENGTH = UCS_BIT(1) + }
 UCT endpoint connected by uct_ep_connect parameters field mask. More...
 
enum  uct_cm_ep_priv_data_pack_args_field { UCT_CM_EP_PRIV_DATA_PACK_ARGS_FIELD_DEVICE_NAME = UCS_BIT(0) + }
 Client-Server private data pack callback arguments field mask. More...
 
enum  uct_cm_ep_resolve_args_field { UCT_CM_EP_RESOLVE_ARGS_FIELD_DEV_NAME = UCS_BIT(0), +UCT_CM_EP_RESOLVE_ARGS_FIELD_STATUS = UCS_BIT(1) + }
 Client-Server resolve callback arguments field mask. More...
 
enum  uct_cm_remote_data_field { UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR = UCS_BIT(0), +UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR_LENGTH = UCS_BIT(1), +UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA = UCS_BIT(2), +UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA_LENGTH = UCS_BIT(3) + }
 Remote data attributes field mask. More...
 
enum  uct_cm_listener_conn_request_args_field { UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_DEV_NAME = UCS_BIT(0), +UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CONN_REQUEST = UCS_BIT(1), +UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_REMOTE_DATA = UCS_BIT(2), +UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CLIENT_ADDR = UCS_BIT(3) + }
 Listener's connection request callback arguments field mask. More...
 
enum  uct_cm_ep_client_connect_args_field { UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_REMOTE_DATA = UCS_BIT(0), +UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_STATUS = UCS_BIT(1) + }
 Field mask flags for client-side connection established callback. More...
 
enum  uct_cm_ep_server_conn_notify_args_field { UCT_CM_EP_SERVER_CONN_NOTIFY_ARGS_FIELD_STATUS = UCS_BIT(0) + }
 Field mask flags for server-side connection established notification callback. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_iface_accept (uct_iface_h iface, uct_conn_request_h conn_request)
 Accept connection request. More...
 
ucs_status_t uct_iface_reject (uct_iface_h iface, uct_conn_request_h conn_request)
 Reject connection request. Will invoke an error handler uct_error_handler_t on the remote transport interface, if set. More...
 
ucs_status_t uct_ep_connect (uct_ep_h ep, const uct_ep_connect_params_t *params)
 Connect a client side endpoint after it is bound to a local network device, i.e. uct_ep_params_t::cm_resolve_cb was invoked. More...
 
ucs_status_t uct_ep_disconnect (uct_ep_h ep, unsigned flags)
 Initiate a disconnection of an endpoint connected to a sockaddr by a connection manager uct_cm_h. More...
 
ucs_status_t uct_cm_open (uct_component_h component, uct_worker_h worker, const uct_cm_config_t *config, uct_cm_h *cm_p)
 Open a connection manager. More...
 
void uct_cm_close (uct_cm_h cm)
 Close a connection manager. More...
 
ucs_status_t uct_cm_query (uct_cm_h cm, uct_cm_attr_t *cm_attr)
 Get connection manager attributes. More...
 
ucs_status_t uct_cm_config_read (uct_component_h component, const char *env_prefix, const char *filename, uct_cm_config_t **config_p)
 Read the configuration for a connection manager. More...
 
ucs_status_t uct_cm_client_ep_conn_notify (uct_ep_h ep)
 Notify the server about client-side connection establishment. More...
 
ucs_status_t uct_listener_create (uct_cm_h cm, const struct sockaddr *saddr, socklen_t socklen, const uct_listener_params_t *params, uct_listener_h *listener_p)
 Create a new transport listener object. More...
 
void uct_listener_destroy (uct_listener_h listener)
 Destroy a transport listener. More...
 
ucs_status_t uct_listener_reject (uct_listener_h listener, uct_conn_request_h conn_request)
 Reject a connection request. More...
 
ucs_status_t uct_listener_query (uct_listener_h listener, uct_listener_attr_t *listener_attr)
 Get attributes specific to a particular listener. More...
 
+

Detailed Description

+

Defines client-server operations. The client-server API allows the connection establishment between an active side - a client, and its peer - the passive side - a server. The connection can be established through a UCT transport that supports listening and connecting via IP address and port (listening can also be on INADDR_ANY).

+

The following is a general overview of the operations on the server side:

+

Connecting: uct_cm_open Open a connection manager. uct_listener_create Create a listener on the CM and start listening on a given IP,port / INADDR_ANY. uct_cm_listener_conn_request_callback_t This callback is invoked by the UCT transport to handle an incoming connection request from a client. Accept or reject the client's connection request. uct_ep_create Connect to the client by creating an endpoint if the request is accepted. The server creates a new endpoint for every connection request that it accepts. uct_cm_ep_server_conn_notify_callback_t This callback is invoked by the UCT transport to handle the connection notification from the client.

Note
The private data which the server should send to the client can be either provided directly to uct_ep_create, or filled by uct_cm_ep_priv_data_pack_callback_t provided to uct_ep_create.
+
+In order to reject a connection request, can either call uct_listener_reject or return failure status as defined by ucs_status_t from uct_cm_ep_priv_data_pack_callback_t.
+

Disconnecting: uct_ep_disconnect Disconnect the server's endpoint from the client. Can be called when initiating a disconnect or when receiving a disconnect notification from the remote side. uct_ep_disconnect_cb_t This callback is invoked by the UCT transport when the client side calls uct_ep_disconnect as well. uct_ep_destroy Destroy the endpoint connected to the remote peer. If this function is called before the endpoint was disconnected, the uct_ep_disconnect_cb_t will not be invoked.

+

Destroying the server's resources: uct_listener_destroy Destroy the listener object. uct_cm_close Close the connection manager.

+

The following is a general overview of the operations on the client side:

+

Connecting: uct_cm_open Open a connection manager. uct_ep_create Create an endpoint for establishing a connection to the server. uct_cm_ep_resolve_callback_t This callback is invoked on the client side of the connection manager, after the remote server address was resolved to the local device to be used for connection establishment. uct_ep_connect This function should be called on the client side, in order to send private data and resume connection establishment, following an address-resolved notification via uct_cm_ep_resolve_callback_t. uct_cm_ep_client_connect_callback_t This callback is invoked by the UCT transport to handle a connection response from the server. After invoking this callback, the UCT transport will finalize the client's connection to the server. uct_cm_client_ep_conn_notify After the client's connection establishment is completed, the client should call this function in which it sends a notification message to the server stating that it (the client) is connected. The notification message that is sent depends on the transport's implementation.

+

Disconnecting: uct_ep_disconnect Disconnect the client's endpoint from the server. Can be called when initiating a disconnect or when receiving a disconnect notification from the remote side. uct_ep_disconnect_cb_t This callback is invoked by the UCT transport when the server side calls uct_ep_disconnect as well. uct_ep_destroy Destroy the endpoint connected to the remote peer.

+

Destroying the client's resources: uct_cm_close Close the connection manager.

+

Data Structure Documentation

+ +
+
+ + + + +
struct uct_ep_connect_params
+
+
+ + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_ep_connect_params_field. Fields not specified by this mask will be ignored.

+
+const void * +private_data +

User's private data to be passed from client to server.

+
+size_t +private_data_length +

Length of uct_ep_connect_params::private_data, the maximal allowed value is indicated by the uct_cm_attr::max_conn_priv.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_attr
+
+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_attr_field. Fields not specified by this mask will be ignored.

+
+size_t +max_conn_priv +

Max size of the connection manager's private data used for connection establishment with sockaddr.

+
+ +
+
+ +
+
+ + + + +
struct uct_listener_attr
+
+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_listener_attr_field. Fields not specified by this mask will be ignored.

+
+struct sockaddr_storage +sockaddr +

Sockaddr on which this listener is listening.

+
+ +
+
+ +
+
+ + + + +
struct uct_listener_params
+
+
+ + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_listener_params_field. Fields not specified by this mask will be ignored.

+
+int +backlog +

Backlog of incoming connection requests. If specified, must be a positive value. If not specified, each CM component will use its maximal allowed value, based on the system's setting.

+
+uct_cm_listener_conn_request_callback_t +conn_request_cb +

Callback function for handling incoming connection requests.

+
+void * +user_data +

User data associated with the listener.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_ep_priv_data_pack_args
+
+

Used with the client-server API on a connection manager.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_ep_priv_data_pack_args_field. Fields not specified by this mask should not be accessed by the callback.

+
+char +dev_name[UCT_DEVICE_NAME_MAX] +

Device name. This routine may fill the user's private data according to the given device name. The device name that is passed to this routine, corresponds to uct_tl_resource_desc_t::dev_name as returned from uct_md_query_tl_resources.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_ep_resolve_args
+
+

Used with the client-server API on a connection manager.

+
+ + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_ep_resolve_args_field. Fields not specified by this mask should not be accessed by the callback.

+
+char +dev_name[UCT_DEVICE_NAME_MAX] +

Device name indicates the device that the endpoint was bound to during address and route resolution. The device name that is passed to this callback corresponds to uct_tl_resource_desc_t::dev_name as returned from uct_md_query_tl_resources.

+
+ucs_status_t +status +

Indicates address resolution status: UCS_OK - address of the remote server was resolved successfully. UCS_ERR_UNREACHABLE - the remote server is unreachable. Otherwise - indicates an internal connection establishment error on the local (client) side.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_remote_data
+
+

The remote peer's device address, the data received from it and their lengths. Used with the client-server API on a connection manager.

+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_remote_data_field. Fields not specified by this mask will be ignored.

+
+const uct_device_addr_t * +dev_addr +

Device address of the remote peer.

+
+size_t +dev_addr_length +

Length of the remote device address.

+
+const void * +conn_priv_data +

Pointer to the received data. This is the private data that was passed to uct_ep_params_t::sockaddr_pack_cb.

+
+size_t +conn_priv_data_length +

Length of the received data from the peer.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_listener_conn_request_args
+
+

The local device name, connection request handle and the data the client sent. Used with the client-server API on a connection manager.

+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_listener_conn_request_args_field. Fields not specified by this mask should not be accessed by the callback.

+
+char +dev_name[UCT_DEVICE_NAME_MAX] +

Local device name which handles the incoming connection request.

+
+uct_conn_request_h +conn_request +

Connection request handle. Can be passed to this callback from the transport and will be used by it to accept or reject the connection request from the client.

+
+const uct_cm_remote_data_t * +remote_data +

Remote data from the client.

+
+ucs_sock_addr_t +client_address +

Client's address.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_ep_client_connect_args
+
+

Used with the client-server API on a connection manager.

+
+ + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_ep_client_connect_args_field. Fields not specified by this mask should not be accessed by the callback.

+
+const uct_cm_remote_data_t * +remote_data +

Remote data from the server.

+
+ucs_status_t +status +

Indicates the connection establishment response from the remote server: UCS_OK - the remote server accepted the connection request. UCS_ERR_REJECTED - the remote server rejected the connection request. UCS_ERR_CONNECTION_RESET - the server's connection was reset during the connection establishment to the client. Otherwise - indicates an internal connection establishment error on the local (client) side.

+
+ +
+
+ +
+
+ + + + +
struct uct_cm_ep_server_conn_notify_args
+
+

Used with the client-server API on a connection manager.

+
+ + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_cm_ep_server_conn_notify_args_field. Fields not specified by this mask should not be accessed by the callback.

+
+ucs_status_t +status +

Indicates the client's ucs_status_t status: UCS_OK - the client completed its connection establishment and called uct_cm_client_ep_conn_notify UCS_ERR_CONNECTION_RESET - the client's connection was reset during the connection establishment to the server. Otherwise - indicates an internal connection establishment error on the local (server) side.

+
+ +
+
+

Typedef Documentation

+ +
+
+

Used with the client-server API on a connection manager.

+ +
+
+ +
+
+

Used with the client-server API on a connection manager.

+ +
+
+ +
+
+ + + + +
typedef struct uct_cm_remote_data uct_cm_remote_data_t
+
+

The remote peer's device address, the data received from it and their lengths. Used with the client-server API on a connection manager.

+ +
+
+ +
+
+

The local device name, connection request handle and the data the client sent. Used with the client-server API on a connection manager.

+ +
+
+ +
+
+

Used with the client-server API on a connection manager.

+ +
+
+ +
+
+

Used with the client-server API on a connection manager.

+ +
+
+ +
+
+ + + + +
typedef void(* uct_sockaddr_conn_request_callback_t) (uct_iface_h iface, void *arg, uct_conn_request_h conn_request, const void *conn_priv_data, size_t length)
+
+

This callback routine will be invoked on the server side upon receiving an incoming connection request. It should be set by the server side while initializing an interface. Incoming data is placed inside the conn_priv_data buffer. This callback has to be thread safe. Other than communication progress routines, it is allowed to call other UCT communication routines from this callback.

+
Parameters
+ + + + + + +
[in]ifaceTransport interface.
[in]argUser defined argument for this callback.
[in]conn_requestTransport level connection request. The user should accept or reject the request by calling uct_iface_accept or uct_iface_reject routines respectively. conn_request should not be used outside the scope of this callback.
[in]conn_priv_dataPoints to the received data. This is the private data that was passed to the uct_ep_params_t::sockaddr_pack_cb on the client side.
[in]lengthLength of the received data.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* uct_cm_listener_conn_request_callback_t) (uct_listener_h listener, void *arg, const uct_cm_listener_conn_request_args_t *conn_req_args)
+
+

This callback routine will be invoked on the server side upon receiving an incoming connection request. It should be set by the server side while initializing a listener in a connection manager. This callback has to be thread safe. Other than communication progress routines, it is allowed to call other UCT communication routines from this callback.

+
Parameters
+ + + + +
[in]listenerTransport listener.
[in]argUser argument for this callback as defined in uct_listener_params_t::user_data
[in]conn_req_argsListener's arguments to handle the connection request from the client.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* uct_cm_ep_server_conn_notify_callback_t) (uct_ep_h ep, void *arg, const uct_cm_ep_server_conn_notify_args_t *connect_args)
+
+

This callback routine will be invoked on the server side upon receiving an incoming connection establishment acknowledgment from the client, which is sent from it once the client is connected to the server. Used to connect the server side to the client or handle an error from it - depending on the status field. This callback will also be invoked in the event of an internal local error with a failed uct_cm_ep_server_conn_notify_args::status if the endpoint was not connected yet. This callback has to be thread safe. Other than communication progress routines, it is permissible to call other UCT communication routines from this callback.

+
Parameters
+ + + + +
[in]epTransport endpoint.
[in]argUser argument for this callback as defined in uct_ep_params_t::user_data
[in]connect_argsServer's connect callback arguments.
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* uct_cm_ep_client_connect_callback_t) (uct_ep_h ep, void *arg, const uct_cm_ep_client_connect_args_t *connect_args)
+
+

This callback routine will be invoked on the client side upon receiving an incoming connection response from the server. Used to connect the client side to the server or handle an error from it - depending on the status field. This callback will also be invoked in the event of an internal local error with a failed uct_cm_ep_client_connect_args::status if the endpoint was not connected yet. This callback has to be thread safe. Other than communication progress routines, it is permissible to call other UCT communication routines from this callback.

+
Parameters
+ + + + +
[in]epTransport endpoint.
[in]argUser argument for this callback as defined in uct_ep_params_t::user_data.
[in]connect_argsClient's connect callback arguments
+
+
+ +
+
+ +
+
+ + + + +
typedef void(* uct_ep_disconnect_cb_t) (uct_ep_h ep, void *arg)
+
+

This callback routine will be invoked on the client and server sides upon a disconnect of the remote peer. It will disconnect the given endpoint from the remote peer. This callback won't be invoked if the endpoint was not connected to the remote peer yet. This callback has to be thread safe. Other than communication progress routines, it is permissible to call other UCT communication routines from this callback.

+
Parameters
+ + + +
[in]epTransport endpoint to disconnect.
[in]argUser argument for this callback as defined in uct_ep_params_t::user_data.
+
+
+ +
+
+ +
+
+ + + + +
typedef ssize_t(* uct_cm_ep_priv_data_pack_callback_t) (void *arg, const uct_cm_ep_priv_data_pack_args_t *pack_args, void *priv_data)
+
+

This callback routine will be invoked on the client side, before sending the transport's connection request to the server, or on the server side before sending a connection response to the client. This callback routine can be set when creating an endpoint. The user's private data should be placed inside the priv_data buffer to be sent to the remote side. The maximal allowed length of the private data is indicated by the field max_conn_priv inside uct_iface_attr or inside uct_cm_attr when using a connection manager. Communication progress routines should not be called from this callback. It is allowed to call other UCT communication routines from this callback.

+
Parameters
+ + + + +
[in]argUser defined argument for this callback.
[in]pack_argsHandle for the the private data packing.
[out]priv_dataUser's private data to be passed to the remote side.
+
+
+
Returns
Negative value indicates an error according to ucs_status_t. On success, a non-negative value indicates actual number of bytes written to the priv_data buffer.
+ +
+
+ +
+
+ + + + +
typedef ucs_status_t(* uct_cm_ep_resolve_callback_t) (void *user_data, const uct_cm_ep_resolve_args_t *resolve_args)
+
+

This callback routine will be invoked, when the client side endpoint is bound to a local device. The callback routine can be set when creating an endpoint. Communication progress routines should not be called from this callback. It is allowed to call other UCT communication routines from this callback.

+
Parameters
+ + + +
[in]user_dataUser argument as defined in uct_ep_params_t::user_data.
[in]resolve_argsHandle for the extra arguments provided by the transport.
+
+
+
Returns
UCS_OK on success or error as defined in ucs_status_t.
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum uct_cm_attr_field
+
+

The enumeration allows specifying which fields in uct_cm_attr_t are present, for backward compatibility support.

+ + +
Enumerator
UCT_CM_ATTR_FIELD_MAX_CONN_PRIV  +

Enables uct_cm_attr::max_conn_priv

+
+ +
+
+ +
+
+ + + + +
enum uct_listener_attr_field
+
+

The enumeration allows specifying which fields in uct_listener_attr_t are present, for backward compatibility support.

+ + +
Enumerator
UCT_LISTENER_ATTR_FIELD_SOCKADDR  +

Enables uct_listener_attr::sockaddr

+
+ +
+
+ +
+
+ + + + +
enum uct_listener_params_field
+
+

The enumeration allows specifying which fields in uct_listener_params_t are present, for backward compatibility support.

+ + + + +
Enumerator
UCT_LISTENER_PARAM_FIELD_BACKLOG  +

Enables uct_listener_params::backlog

+
UCT_LISTENER_PARAM_FIELD_CONN_REQUEST_CB  +

Enables uct_listener_params::conn_request_cb

+
UCT_LISTENER_PARAM_FIELD_USER_DATA  +

Enables uct_listener_params::user_data

+
+ +
+
+ +
+
+ + + + +
enum uct_ep_connect_params_field
+
+

The enumeration allows specifying which fields in uct_ep_connect_params_t are present, for backward compatibility support.

+ + + +
Enumerator
UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA  +

Enables uct_ep_connect_params::private_data

+
UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA_LENGTH  +

Enables uct_ep_connect_params::private_data_length

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in uct_cm_ep_priv_data_pack_args are present, for backward compatibility support.

+ + +
Enumerator
UCT_CM_EP_PRIV_DATA_PACK_ARGS_FIELD_DEVICE_NAME  +

Enables uct_cm_ep_priv_data_pack_args::dev_name Indicates that dev_name field in uct_cm_ep_priv_data_pack_args_t is valid.

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in uct_cm_ep_resolve_args are present, for backward compatibility support.

+ + + +
Enumerator
UCT_CM_EP_RESOLVE_ARGS_FIELD_DEV_NAME  +

Indicates that uct_cm_ep_resolve_args::dev_name is valid.

+
UCT_CM_EP_RESOLVE_ARGS_FIELD_STATUS  +

Indicates that uct_cm_ep_resolve_args::status is valid.

+
+ +
+
+ +
+
+ + + + +
enum uct_cm_remote_data_field
+
+

The enumeration allows specifying which fields in uct_cm_remote_data are present, for backward compatibility support.

+ + + + + +
Enumerator
UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR  +

Enables uct_cm_remote_data::dev_addr

+
UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR_LENGTH  +

Enables uct_cm_remote_data::dev_addr_length

+
UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA  +

Enables uct_cm_remote_data::conn_priv_data

+
UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA_LENGTH  +

Enables uct_cm_remote_data::conn_priv_data_length

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in uct_cm_listener_conn_request_args are present, for backward compatibility support.

+ + + + + +
Enumerator
UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_DEV_NAME  +

Enables uct_cm_listener_conn_request_args::dev_name Indicates that dev_name field in uct_cm_listener_conn_request_args_t is valid.

+
UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CONN_REQUEST  +

Enables uct_cm_listener_conn_request_args::conn_request Indicates that conn_request field in uct_cm_listener_conn_request_args_t is valid.

+
UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_REMOTE_DATA  +

Enables uct_cm_listener_conn_request_args::remote_data Indicates that remote_data field in uct_cm_listener_conn_request_args_t is valid.

+
UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CLIENT_ADDR  +

Enables uct_cm_listener_conn_request_args::client_address Indicates that client_address field in uct_cm_listener_conn_request_args_t is valid.

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in uct_cm_ep_client_connect_args are present, for backward compatibility support.

+ + + +
Enumerator
UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_REMOTE_DATA  +

Enables uct_cm_ep_client_connect_args::remote_data

+
UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_STATUS  +

Enables uct_cm_ep_client_connect_args::status

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in uct_cm_ep_server_conn_notify_args are present, for backward compatibility support.

+ + +
Enumerator
UCT_CM_EP_SERVER_CONN_NOTIFY_ARGS_FIELD_STATUS  +

Enables uct_cm_ep_server_conn_notify_args::status Indicates that status field in uct_cm_ep_server_conn_notify_args_t is valid.

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_accept (uct_iface_h iface,
uct_conn_request_h conn_request 
)
+
+
Parameters
+ + + +
[in]ifaceTransport interface which generated connection request conn_request.
[in]conn_requestConnection establishment request passed as parameter of uct_sockaddr_conn_request_callback_t.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_reject (uct_iface_h iface,
uct_conn_request_h conn_request 
)
+
+
Parameters
+ + + +
[in]ifaceInterface which generated connection establishment request conn_request.
[in]conn_requestConnection establishment request passed as parameter of uct_sockaddr_conn_request_callback_t.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_connect (uct_ep_h ep,
const uct_ep_connect_params_tparams 
)
+
+

This non-blocking routine establishes connection of the client side endpoint and sends private data to the peer.

+
Parameters
+ + + +
[in]epEndpoint to connect.
[in]paramsParameters as defined in uct_ep_connect_params_t.
+
+
+
Returns
UCS_OK Operation has been initiated successfully. Other error codes as defined by ucs_status_t.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_disconnect (uct_ep_h ep,
unsigned flags 
)
+
+

This non-blocking routine will send a disconnect notification on the endpoint, so that uct_ep_disconnect_cb_t will be called on the remote peer. The remote side should also call this routine when handling the initiator's disconnect. After a call to this function, the given endpoint may not be used for communications anymore. The uct_ep_flush / uct_iface_flush routines will guarantee that the disconnect notification is delivered to the remote peer. uct_ep_destroy should be called on this endpoint after invoking this routine and uct_ep_params::disconnect_cb was called.

+
Parameters
+ + + +
[in]epEndpoint to disconnect.
[in]flagsReserved for future use.
+
+
+
Returns
UCS_OK Operation has completed successfully. UCS_ERR_BUSY The ep is not connected yet (either uct_cm_ep_client_connect_callback_t or uct_cm_ep_server_conn_notify_callback_t was not invoked). UCS_INPROGRESS The disconnect request has been initiated, but the remote peer has not yet responded to this request, and consequently the registered callback uct_ep_disconnect_cb_t has not been invoked to handle the request. UCS_ERR_NOT_CONNECTED The ep is disconnected locally and remotely. Other error codes as defined by ucs_status_t .
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_cm_open (uct_component_h component,
uct_worker_h worker,
const uct_cm_config_tconfig,
uct_cm_hcm_p 
)
+
+

Open a connection manager. All client server connection establishment operations are performed in the context of a specific connection manager.

Note
This is an alternative API for uct_iface_open_mode::UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER and uct_iface_open_mode::UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT .
+
Parameters
+ + + + + +
[in]componentComponent on which to open the connection manager, as returned from uct_query_components.
[in]workerWorker on which to open the connection manager.
[in]configCM configuration options. Either obtained from uct_cm_config_read() function, or pointer to CM-specific structure that extends uct_cm_config_t.
[out]cm_pFilled with a handle to the connection manager.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + +
void uct_cm_close (uct_cm_h cm)
+
+
Parameters
+ + +
[in]cmConnection manager to close.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_cm_query (uct_cm_h cm,
uct_cm_attr_tcm_attr 
)
+
+

This routine queries the cm for its attributes uct_cm_attr_t.

+
Parameters
+ + + +
[in]cmConnection manager to query.
[out]cm_attrFilled with connection manager attributes.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_cm_config_read (uct_component_h component,
const char * env_prefix,
const char * filename,
uct_cm_config_t ** config_p 
)
+
+
Parameters
+ + + + + +
[in]componentRead the configuration of the connection manager on this component.
[in]env_prefixIf non-NULL, search for environment variables starting with this UCT_<prefix>_. Otherwise, search for environment variables starting with just UCT_.
[in]filenameIf non-NULL, read configuration from this file. If the file does not exist, or exists but cannot be opened or read, it will be ignored.
[out]config_pFilled with a pointer to the configuration.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_t uct_cm_client_ep_conn_notify (uct_ep_h ep)
+
+

This routine should be called on the client side after the client completed establishing its connection to the server. The routine will send a notification message to the server indicating that the client is connected.

+
Parameters
+ + +
[in]epThe connected endpoint on the client side.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_listener_create (uct_cm_h cm,
const struct sockaddr * saddr,
socklen_t socklen,
const uct_listener_params_tparams,
uct_listener_hlistener_p 
)
+
+

This routine creates a new listener on the given CM which will start listening on a given sockaddr.

+
Parameters
+ + + + + + +
[in]cmConnection manager on which to open the listener. This cm should not be closed as long as there are open listeners on it.
[in]saddrThe socket address to listen on.
[in]socklenThe saddr length.
[in]paramsUser defined uct_listener_params_t configurations for the listener_p.
[out]listener_pFilled with handle to the new listener.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + +
void uct_listener_destroy (uct_listener_h listener)
+
+
Parameters
+ + +
[in]listenerListener to destroy.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_listener_reject (uct_listener_h listener,
uct_conn_request_h conn_request 
)
+
+

This routine can be invoked on the server side. It rejects a connection request from the client.

+
Parameters
+ + + +
[in]listenerListener which will reject the connection request.
[in]conn_requestConnection establishment request passed as parameter of uct_cm_listener_conn_request_callback_t in uct_cm_listener_conn_request_args_t::conn_request.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_listener_query (uct_listener_h listener,
uct_listener_attr_tlistener_attr 
)
+
+

This routine queries the listener for its attributes uct_listener_attr_t.

+
Parameters
+ + + +
[in]listenerListener object to query.
[out]listener_attrFilled with attributes of the listener.
+
+
+
Returns
Error code as defined by ucs_status_t
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.js new file mode 100644 index 00000000000..3d1b53f7d42 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.js @@ -0,0 +1,121 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r = +[ + [ "uct_ep_connect_params", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__ep__connect__params", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a360893687dea33e2451afc89b89cf858", null ], + [ "private_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#affe9b0a217e8e706f08da5b2efee3665", null ], + [ "private_data_length", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3db99efa74cecf7060aad87e73922572", null ] + ] ], + [ "uct_cm_attr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__attr", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a384bf8b975a0d90b7117f4e393684e3d", null ], + [ "max_conn_priv", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adb462d4f30c639f7fb5a8a7d9702ddcf", null ] + ] ], + [ "uct_listener_attr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__attr", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abd499e7b852c6af527c8db5a010040b6", null ], + [ "sockaddr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8cc6f13deda40a11ae98cae547869342", null ] + ] ], + [ "uct_listener_params", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__params", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2106149ec63faa5e1aebe7c7b1f941d6", null ], + [ "backlog", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a31658aea3303489537ffd68ecbd52f9c", null ], + [ "conn_request_cb", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a84a1de42f58965886c5d457480be3b2d", null ], + [ "user_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8a9d41566f96e942418c48139ccede90", null ] + ] ], + [ "uct_cm_ep_priv_data_pack_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__priv__data__pack__args", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2c613c2ce5d4a428c87a0d83849875ca", null ], + [ "dev_name", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a10c637e00793a55862826870bfe6499d", null ] + ] ], + [ "uct_cm_ep_resolve_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__resolve__args", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abca562cc9e4c45a606ae464815d6cf1a", null ], + [ "dev_name", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af750fc4d3be08d8dcd81f452b1ba5ab4", null ], + [ "status", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#afc75b0697e4624831532a20013eb4c98", null ] + ] ], + [ "uct_cm_remote_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__remote__data", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af27cfe2f1146f9e7f8481d192728640e", null ], + [ "dev_addr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ada382f435e44b388e3e29b16a04c3808", null ], + [ "dev_addr_length", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a05768f24babff9b522b4845dc2672c55", null ], + [ "conn_priv_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3557ea63ebf0f959c06ad78a592cd311", null ], + [ "conn_priv_data_length", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad68a816000641cdaab8b7bae782c005d", null ] + ] ], + [ "uct_cm_listener_conn_request_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__listener__conn__request__args", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad79f7025c8f43a961b3f8d0501b45188", null ], + [ "dev_name", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a718770a6c8d147fadd63490c029de6d2", null ], + [ "conn_request", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#aec2a2194a329ef66262756de423a3cb2", null ], + [ "remote_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a333308d1c7eda2e28111dbe05b288746", null ], + [ "client_address", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab9e98cce78462e28a6593a891f2aa3bc", null ] + ] ], + [ "uct_cm_ep_client_connect_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__client__connect__args", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a07453861a47b7c717f6e89356f75398e", null ], + [ "remote_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adebf71af7948cb58f3724d1b0c4151bb", null ], + [ "status", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab34b457dd1e16034378445aeac010d4b", null ] + ] ], + [ "uct_cm_ep_server_conn_notify_args", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__server__conn__notify__args", [ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a96b97f088ce727e04b1de822227b3283", null ], + [ "status", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a0deb70821df070090ebef30cb70b66c2", null ] + ] ], + [ "uct_cm_ep_priv_data_pack_args_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaebc5e64ca3882b5dd5f578fc2c036c89", null ], + [ "uct_cm_ep_resolve_args_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga34f8c95c45d2eaf614114537746b5030", null ], + [ "uct_cm_remote_data_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga97cd1a740d9f58856642831ae63b8f02", null ], + [ "uct_cm_listener_conn_request_args_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8bcad5374a9b68cb65df3f416459f699", null ], + [ "uct_cm_ep_client_connect_args_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gac5142a3d24728ed4ee19eb32902b1bfd", null ], + [ "uct_cm_ep_server_conn_notify_args_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa2951a7f3fa2869d5ebd9a25c145f2bf", null ], + [ "uct_sockaddr_conn_request_callback_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga18a175c5b28386d6693a35ae432466ef", null ], + [ "uct_cm_listener_conn_request_callback_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8c150a87e614379b42283be7e91b0dec", null ], + [ "uct_cm_ep_server_conn_notify_callback_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaaffce62ed4f37b665a71a88f37cbfec6", null ], + [ "uct_cm_ep_client_connect_callback_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad221f8e9528614b0688ea3097cc0c2bc", null ], + [ "uct_ep_disconnect_cb_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf1b75ee068dfa5fbf7194f999360197a", null ], + [ "uct_cm_ep_priv_data_pack_callback_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga4eb772a7b4af18ae62b546bcd85250ef", null ], + [ "uct_cm_ep_resolve_callback_t", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad96e813463556ed4d5e9258b4ceee78d", null ], + [ "uct_cm_attr_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga2b308be867e1e13dcb7d941b07835431", [ + [ "UCT_CM_ATTR_FIELD_MAX_CONN_PRIV", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga2b308be867e1e13dcb7d941b07835431a2521b69fbc5dd8dff615878729572978", null ] + ] ], + [ "uct_listener_attr_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad253d9c2e4116f9a137a2d2450afbe66", [ + [ "UCT_LISTENER_ATTR_FIELD_SOCKADDR", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggad253d9c2e4116f9a137a2d2450afbe66af566cba098163f464bdad7c392232c3f", null ] + ] ], + [ "uct_listener_params_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf716bd7cdc636377ef78c258886693c7", [ + [ "UCT_LISTENER_PARAM_FIELD_BACKLOG", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7aa2a3bbfd550dc87ed8bba5cf960068fa", null ], + [ "UCT_LISTENER_PARAM_FIELD_CONN_REQUEST_CB", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7a8a9ba7427c813614e65f29c38225ab44", null ], + [ "UCT_LISTENER_PARAM_FIELD_USER_DATA", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7af6172e01a7919f4afd27fa5e0aa0b794", null ] + ] ], + [ "uct_ep_connect_params_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa821e2f4247cd5e72632e5ea7008e6e1", [ + [ "UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaa821e2f4247cd5e72632e5ea7008e6e1a51f30ec2f30a63bdea6660a0ad61305e", null ], + [ "UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA_LENGTH", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaa821e2f4247cd5e72632e5ea7008e6e1accc8d70e4ee5ee60283e1b53456963e1", null ] + ] ], + [ "uct_cm_ep_priv_data_pack_args_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga405dee8e814ebc33f14c5f44e80d008c", [ + [ "UCT_CM_EP_PRIV_DATA_PACK_ARGS_FIELD_DEVICE_NAME", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga405dee8e814ebc33f14c5f44e80d008ca39e1834470a48aaaa5b9e6fbef11b5f1", null ] + ] ], + [ "uct_cm_ep_resolve_args_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga6c342b6c43e178b73f567bd0fb253e62", [ + [ "UCT_CM_EP_RESOLVE_ARGS_FIELD_DEV_NAME", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6c342b6c43e178b73f567bd0fb253e62ab617fac24c5437d6acd095c84eb0a6a1", null ], + [ "UCT_CM_EP_RESOLVE_ARGS_FIELD_STATUS", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6c342b6c43e178b73f567bd0fb253e62ad7cc5818b0812933a99f25378be77cb5", null ] + ] ], + [ "uct_cm_remote_data_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga3e023485a86ad4092497ffe58cddef37", [ + [ "UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37af5ba4b8423006af3e3b0342b9cea533b", null ], + [ "UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR_LENGTH", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a22ac6bf59b6b07381c25ba808254092b", null ], + [ "UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a86ed1d1f02236dd9467176b2130fba32", null ], + [ "UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA_LENGTH", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a550619037bb2bad0ad2a46dfe68f6cc3", null ] + ] ], + [ "uct_cm_listener_conn_request_args_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga9e97a59a0593244e730734d592b642df", [ + [ "UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_DEV_NAME", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfab3c57e4db473538c60b5feaf094833d9", null ], + [ "UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CONN_REQUEST", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfadf438afd4aa996a342ddb1e69894882b", null ], + [ "UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_REMOTE_DATA", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfab87a184e4a1684ba337aaff9547c2753", null ], + [ "UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CLIENT_ADDR", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfae396fa228bfaf18e554eaa2e91f19333", null ] + ] ], + [ "uct_cm_ep_client_connect_args_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga6746759cc1850c6e260fca7e3de008ad", [ + [ "UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_REMOTE_DATA", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6746759cc1850c6e260fca7e3de008ada9657c720a60df0b6b89bd9b019ac01cc", null ], + [ "UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_STATUS", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6746759cc1850c6e260fca7e3de008ada21ad19d697d3ff1b5a3acb0fcb4a7cfc", null ] + ] ], + [ "uct_cm_ep_server_conn_notify_args_field", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf1cffc53a9b63fb98a77503917f5fd79", [ + [ "UCT_CM_EP_SERVER_CONN_NOTIFY_ARGS_FIELD_STATUS", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf1cffc53a9b63fb98a77503917f5fd79a84648af7a2470a6869bd8d05e894b0a5", null ] + ] ], + [ "uct_iface_accept", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaadcca33083e95033b161b4f5b1365dc9", null ], + [ "uct_iface_reject", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga31c30e35f43121d1715620931860dafe", null ], + [ "uct_ep_connect", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaec09721914083255f4856da1a9541880", null ], + [ "uct_ep_disconnect", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga97049050f63eab653949cceef8fe4ba0", null ], + [ "uct_cm_open", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa388b4d447f77dbb9dcc45f4fff4e9b9", null ], + [ "uct_cm_close", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga2d4b7947a338ad8721390f8c292a4dfa", null ], + [ "uct_cm_query", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga4a47044a01e1cefbe7a1fd6a7e9a6857", null ], + [ "uct_cm_config_read", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaec01265a1d6fbbeef49ca3bdb5bbf2b4", null ], + [ "uct_cm_client_ep_conn_notify", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga45664fb4113fa1f2ddad4fc181e0d62a", null ], + [ "uct_listener_create", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gadb87c52696a73feae4e1d6e0b9a01911", null ], + [ "uct_listener_destroy", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8f6a0c420fbca1b5fbe7c1d919757d3f", null ], + [ "uct_listener_reject", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa8d1ea690c1600dc334ae6a014110d5e", null ], + [ "uct_listener_query", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gae8b7a5fbada262d0f312970f018a916e", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__attr.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__attr.js new file mode 100644 index 00000000000..b3779ea2ee2 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__attr.js @@ -0,0 +1,5 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__attr = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a384bf8b975a0d90b7117f4e393684e3d", null ], + [ "max_conn_priv", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adb462d4f30c639f7fb5a8a7d9702ddcf", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__client__connect__args.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__client__connect__args.js new file mode 100644 index 00000000000..16f84b7347e --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__client__connect__args.js @@ -0,0 +1,6 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__client__connect__args = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a07453861a47b7c717f6e89356f75398e", null ], + [ "remote_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adebf71af7948cb58f3724d1b0c4151bb", null ], + [ "status", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab34b457dd1e16034378445aeac010d4b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__priv__data__pack__args.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__priv__data__pack__args.js new file mode 100644 index 00000000000..21ee899ec5c --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__priv__data__pack__args.js @@ -0,0 +1,5 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__priv__data__pack__args = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2c613c2ce5d4a428c87a0d83849875ca", null ], + [ "dev_name", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a10c637e00793a55862826870bfe6499d", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__resolve__args.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__resolve__args.js new file mode 100644 index 00000000000..157908b115f --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__resolve__args.js @@ -0,0 +1,6 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__resolve__args = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abca562cc9e4c45a606ae464815d6cf1a", null ], + [ "dev_name", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af750fc4d3be08d8dcd81f452b1ba5ab4", null ], + [ "status", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#afc75b0697e4624831532a20013eb4c98", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__server__conn__notify__args.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__server__conn__notify__args.js new file mode 100644 index 00000000000..89db85964cb --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__server__conn__notify__args.js @@ -0,0 +1,5 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__ep__server__conn__notify__args = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a96b97f088ce727e04b1de822227b3283", null ], + [ "status", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a0deb70821df070090ebef30cb70b66c2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__listener__conn__request__args.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__listener__conn__request__args.js new file mode 100644 index 00000000000..388c84c886a --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__listener__conn__request__args.js @@ -0,0 +1,8 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__listener__conn__request__args = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad79f7025c8f43a961b3f8d0501b45188", null ], + [ "dev_name", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a718770a6c8d147fadd63490c029de6d2", null ], + [ "conn_request", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#aec2a2194a329ef66262756de423a3cb2", null ], + [ "remote_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a333308d1c7eda2e28111dbe05b288746", null ], + [ "client_address", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab9e98cce78462e28a6593a891f2aa3bc", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__remote__data.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__remote__data.js new file mode 100644 index 00000000000..a6649d3ab85 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__remote__data.js @@ -0,0 +1,8 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__cm__remote__data = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af27cfe2f1146f9e7f8481d192728640e", null ], + [ "dev_addr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ada382f435e44b388e3e29b16a04c3808", null ], + [ "dev_addr_length", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a05768f24babff9b522b4845dc2672c55", null ], + [ "conn_priv_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3557ea63ebf0f959c06ad78a592cd311", null ], + [ "conn_priv_data_length", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad68a816000641cdaab8b7bae782c005d", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__ep__connect__params.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__ep__connect__params.js new file mode 100644 index 00000000000..6d78b798614 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__ep__connect__params.js @@ -0,0 +1,6 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__ep__connect__params = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a360893687dea33e2451afc89b89cf858", null ], + [ "private_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#affe9b0a217e8e706f08da5b2efee3665", null ], + [ "private_data_length", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3db99efa74cecf7060aad87e73922572", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__attr.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__attr.js new file mode 100644 index 00000000000..3f276c79f92 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__attr.js @@ -0,0 +1,5 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__attr = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abd499e7b852c6af527c8db5a010040b6", null ], + [ "sockaddr", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8cc6f13deda40a11ae98cae547869342", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__params.js b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__params.js new file mode 100644 index 00000000000..1f47af577b5 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__params.js @@ -0,0 +1,7 @@ +var group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r_structuct__listener__params = +[ + [ "field_mask", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2106149ec63faa5e1aebe7c7b1f941d6", null ], + [ "backlog", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a31658aea3303489537ffd68ecbd52f9c", null ], + [ "conn_request_cb", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a84a1de42f58965886c5d457480be3b2d", null ], + [ "user_data", "group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8a9d41566f96e942418c48139ccede90", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___c_o_n_t_e_x_t.html b/api/v1.14/html/group___u_c_t___c_o_n_t_e_x_t.html new file mode 100644 index 00000000000..e58067a0dfb --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_o_n_t_e_x_t.html @@ -0,0 +1,476 @@ + + + + + + +UCX: UCT Communication Context + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + +

+Enumerations

enum  uct_alloc_method_t {
+  UCT_ALLOC_METHOD_THP, +UCT_ALLOC_METHOD_MD, +UCT_ALLOC_METHOD_HEAP, +UCT_ALLOC_METHOD_MMAP, +
+  UCT_ALLOC_METHOD_HUGE, +UCT_ALLOC_METHOD_LAST, +UCT_ALLOC_METHOD_DEFAULT = UCT_ALLOC_METHOD_LAST +
+ }
 Memory allocation methods. More...
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_worker_create (ucs_async_context_t *async, ucs_thread_mode_t thread_mode, uct_worker_h *worker_p)
 Create a worker object. More...
 
void uct_worker_destroy (uct_worker_h worker)
 Destroy a worker object. More...
 
void uct_worker_progress_register_safe (uct_worker_h worker, ucs_callback_t func, void *arg, unsigned flags, uct_worker_cb_id_t *id_p)
 Add a slow path callback function to a worker progress. More...
 
void uct_worker_progress_unregister_safe (uct_worker_h worker, uct_worker_cb_id_t *id_p)
 Remove a slow path callback function from worker's progress. More...
 
ucs_status_t uct_config_get (void *config, const char *name, char *value, size_t max)
 Get value by name from interface configuration (uct_iface_config_t), memory domain configuration (uct_md_config_t) or connection manager configuration (uct_cm_config_t). More...
 
ucs_status_t uct_config_modify (void *config, const char *name, const char *value)
 Modify interface configuration (uct_iface_config_t), memory domain configuration (uct_md_config_t) or connection manager configuration (uct_cm_config_t). More...
 
unsigned uct_worker_progress (uct_worker_h worker)
 Explicit progress for UCT worker. More...
 
+

Detailed Description

+

UCT context abstracts all the resources required for network communication. It is designed to enable either share or isolate resources for multiple programming models used by an application.

+

This section provides a detailed description of this concept and routines associated with it.

+

Enumeration Type Documentation

+ +
+
+ + + + +
enum uct_alloc_method_t
+
+ + + + + + + + +
Enumerator
UCT_ALLOC_METHOD_THP  +

Allocate from OS using libc allocator with Transparent Huge Pages enabled

+
UCT_ALLOC_METHOD_MD  +

Allocate using memory domain

+
UCT_ALLOC_METHOD_HEAP  +

Allocate from heap using libc allocator

+
UCT_ALLOC_METHOD_MMAP  +

Allocate from OS using mmap() syscall

+
UCT_ALLOC_METHOD_HUGE  +

Allocate huge pages

+
UCT_ALLOC_METHOD_LAST  +
UCT_ALLOC_METHOD_DEFAULT  +

Use default method

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_worker_create (ucs_async_context_t * async,
ucs_thread_mode_t thread_mode,
uct_worker_hworker_p 
)
+
+

The worker represents a progress engine. Multiple progress engines can be created in an application, for example to be used by multiple threads. Transports can allocate separate communication resources for every worker, so that every worker can be progressed independently of others.

+
Parameters
+ + + + +
[in]asyncContext for async event handlers. Must not be NULL.
[in]thread_modeThread access mode to the worker and all interfaces and endpoints associated with it.
[out]worker_pFilled with a pointer to the worker object.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_worker_destroy (uct_worker_h worker)
+
+
Parameters
+ + +
[in]workerWorker object to destroy.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void uct_worker_progress_register_safe (uct_worker_h worker,
ucs_callback_t func,
void * arg,
unsigned flags,
uct_worker_cb_id_tid_p 
)
+
+

If *id_p is equal to UCS_CALLBACKQ_ID_NULL, this function will add a callback which will be invoked every time progress is made on the worker. *id_p will be updated with an id which refers to this callback and can be used in uct_worker_progress_unregister_safe to remove it from the progress path.

+
Parameters
+ + + + + + +
[in]workerHandle to the worker whose progress should invoke the callback.
[in]funcPointer to the callback function.
[in]argArgument for the callback function.
[in]flagsCallback flags, see ucs_callbackq_flags.
[in,out]id_pPoints to a location to store a callback identifier. If *id_p is equal to UCS_CALLBACKQ_ID_NULL, a callback will be added and *id_p will be replaced with a callback identifier which can be subsequently used to remove the callback. Otherwise, no callback will be added and *id_p will be left unchanged.
+
+
+
Note
This function is thread safe.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void uct_worker_progress_unregister_safe (uct_worker_h worker,
uct_worker_cb_id_tid_p 
)
+
+

If *id_p is not equal to UCS_CALLBACKQ_ID_NULL, remove a callback which was previously added by uct_worker_progress_register_safe. *id_p will be reset to UCS_CALLBACKQ_ID_NULL.

+
Parameters
+ + + +
[in]workerHandle to the worker whose progress should invoke the callback.
[in,out]id_pPoints to a callback identifier which indicates the callback to remove. If *id_p is not equal to UCS_CALLBACKQ_ID_NULL, the callback will be removed and *id_p will be reset to UCS_CALLBACKQ_ID_NULL. If *id_p is equal to UCS_CALLBACKQ_ID_NULL, no operation will be performed and *id_p will be left unchanged.
+
+
+
Note
This function is thread safe.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_config_get (void * config,
const char * name,
char * value,
size_t max 
)
+
+
Parameters
+ + + + + +
[in]configConfiguration to get from.
[in]nameConfiguration variable name.
[out]valuePointer to get value. Should be allocated/freed by caller.
[in]maxAvailable memory space at value pointer.
+
+
+
Returns
UCS_OK if found, otherwise UCS_ERR_INVALID_PARAM or UCS_ERR_NO_ELEM if error.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_config_modify (void * config,
const char * name,
const char * value 
)
+
+
Parameters
+ + + + +
[in]configConfiguration to modify.
[in]nameConfiguration variable name.
[in]valueValue to set.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + +
unsigned uct_worker_progress (uct_worker_h worker)
+
+

This routine explicitly progresses any outstanding communication operations and active message requests.

+
Note
    +
  • In the current implementation, users MUST call this routine to receive the active message requests.
  • +
+
+
Parameters
+ + +
[in]workerHandle to worker.
+
+
+
Returns
Nonzero if any communication was progressed, zero otherwise.
+
Examples:
uct_hello_world.c.
+
+
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___c_o_n_t_e_x_t.js b/api/v1.14/html/group___u_c_t___c_o_n_t_e_x_t.js new file mode 100644 index 00000000000..17b2ad94572 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___c_o_n_t_e_x_t.js @@ -0,0 +1,19 @@ +var group___u_c_t___c_o_n_t_e_x_t = +[ + [ "uct_alloc_method_t", "group___u_c_t___c_o_n_t_e_x_t.html#ga019362c62f98ff7935b05c512eb0ab09", [ + [ "UCT_ALLOC_METHOD_THP", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ae4e651614b0a020b351b94f4a589fd07", null ], + [ "UCT_ALLOC_METHOD_MD", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a2036e15fb7da79b6cb7af6e8bda700c7", null ], + [ "UCT_ALLOC_METHOD_HEAP", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ab026ce58725388c3dca9d1a5d152250c", null ], + [ "UCT_ALLOC_METHOD_MMAP", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a496187eba67f49a27e0017a4290505cc", null ], + [ "UCT_ALLOC_METHOD_HUGE", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ad542185f2c8f7a7ff89f3a1b0581439d", null ], + [ "UCT_ALLOC_METHOD_LAST", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a3b9f6f050e19d2d85425d2c87d4bdbb8", null ], + [ "UCT_ALLOC_METHOD_DEFAULT", "group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09aee732738d1b13520beeefda125e40665", null ] + ] ], + [ "uct_worker_create", "group___u_c_t___c_o_n_t_e_x_t.html#ga6f21b4dd1dc16d55f4a8e6bf65f8757f", null ], + [ "uct_worker_destroy", "group___u_c_t___c_o_n_t_e_x_t.html#ga22608452cb78bb1d3c9253860025c4fd", null ], + [ "uct_worker_progress_register_safe", "group___u_c_t___c_o_n_t_e_x_t.html#ga358ed4a23be49a3c1ace5d78a0b2ee9c", null ], + [ "uct_worker_progress_unregister_safe", "group___u_c_t___c_o_n_t_e_x_t.html#ga2dcbb085b3f94e5a2b6771c4cc7bcbbf", null ], + [ "uct_config_get", "group___u_c_t___c_o_n_t_e_x_t.html#ga711e3a72f282ad7d11d2945ea2dd7b4c", null ], + [ "uct_config_modify", "group___u_c_t___c_o_n_t_e_x_t.html#ga00b51bffb44b91b256dd6d6e6e99f98f", null ], + [ "uct_worker_progress", "group___u_c_t___c_o_n_t_e_x_t.html#ga4ec9fae48afd24d7fa7c5537e76b54e5", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d.html b/api/v1.14/html/group___u_c_t___m_d.html new file mode 100644 index 00000000000..f732bfab537 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d.html @@ -0,0 +1,1505 @@ + + + + + + +UCX: UCT Memory Domain + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  uct_md_attr
 Memory domain attributes. More...
 
struct  uct_md_attr.cap
 
struct  uct_md_mem_attr
 Memory domain attributes. More...
 
struct  uct_allocated_memory
 Describes a memory allocated by UCT. More...
 
struct  uct_rkey_bundle
 Remote key with its type. More...
 
struct  uct_mem_alloc_params_t
 Parameters for allocating memory using uct_mem_alloc. More...
 
struct  uct_mem_alloc_params_t.mds
 
+ + + + + + + + + + + + + +

+Typedefs

typedef enum uct_md_mem_attr_field uct_md_mem_attr_field_t
 UCT MD memory attributes field mask. More...
 
typedef struct uct_md_mem_attr uct_md_mem_attr_t
 Memory domain attributes. More...
 
typedef struct uct_allocated_memory uct_allocated_memory_t
 Describes a memory allocated by UCT. More...
 
typedef struct uct_rkey_bundle uct_rkey_bundle_t
 Remote key with its type. More...
 
+ + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  uct_sockaddr_accessibility_t { UCT_SOCKADDR_ACC_LOCAL, +UCT_SOCKADDR_ACC_REMOTE + }
 Socket address accessibility type. More...
 
enum  {
+  UCT_MD_FLAG_ALLOC = UCS_BIT(0), +UCT_MD_FLAG_REG = UCS_BIT(1), +UCT_MD_FLAG_NEED_MEMH = UCS_BIT(2), +UCT_MD_FLAG_NEED_RKEY = UCS_BIT(3), +
+  UCT_MD_FLAG_ADVISE = UCS_BIT(4), +UCT_MD_FLAG_FIXED = UCS_BIT(5), +UCT_MD_FLAG_RKEY_PTR = UCS_BIT(6), +UCT_MD_FLAG_SOCKADDR = UCS_BIT(7), +
+  UCT_MD_FLAG_INVALIDATE = UCS_BIT(8), +UCT_MD_FLAG_EXPORTED_MKEY = UCS_BIT(9), +UCT_MD_FLAG_REG_DMABUF = UCS_BIT(10) +
+ }
 Memory domain capability flags. More...
 
enum  uct_md_mem_flags {
+  UCT_MD_MEM_FLAG_NONBLOCK = UCS_BIT(0), +UCT_MD_MEM_FLAG_FIXED = UCS_BIT(1), +UCT_MD_MEM_FLAG_LOCK = UCS_BIT(2), +UCT_MD_MEM_FLAG_HIDE_ERRORS = UCS_BIT(3), +
+  UCT_MD_MEM_ACCESS_REMOTE_PUT = UCS_BIT(5), +UCT_MD_MEM_ACCESS_REMOTE_GET = UCS_BIT(6), +UCT_MD_MEM_ACCESS_REMOTE_ATOMIC = UCS_BIT(7), +UCT_MD_MEM_ACCESS_LOCAL_READ = UCS_BIT(8), +
+  UCT_MD_MEM_ACCESS_LOCAL_WRITE = UCS_BIT(9), +UCT_MD_MEM_ACCESS_ALL, +UCT_MD_MEM_ACCESS_RMA +
+ }
 Memory allocation/registration flags. More...
 
enum  uct_mem_advice_t { UCT_MADV_NORMAL = 0, +UCT_MADV_WILLNEED + }
 list of UCT memory use advice More...
 
enum  uct_md_mem_attr_field {
+  UCT_MD_MEM_ATTR_FIELD_MEM_TYPE = UCS_BIT(0), +UCT_MD_MEM_ATTR_FIELD_SYS_DEV = UCS_BIT(1), +UCT_MD_MEM_ATTR_FIELD_BASE_ADDRESS = UCS_BIT(2), +UCT_MD_MEM_ATTR_FIELD_ALLOC_LENGTH = UCS_BIT(3), +
+  UCT_MD_MEM_ATTR_FIELD_DMABUF_FD = UCS_BIT(4), +UCT_MD_MEM_ATTR_FIELD_DMABUF_OFFSET = UCS_BIT(5) +
+ }
 UCT MD memory attributes field mask. More...
 
enum  uct_mem_alloc_params_field_t {
+  UCT_MEM_ALLOC_PARAM_FIELD_FLAGS = UCS_BIT(0), +UCT_MEM_ALLOC_PARAM_FIELD_ADDRESS = UCS_BIT(1), +UCT_MEM_ALLOC_PARAM_FIELD_MEM_TYPE = UCS_BIT(2), +UCT_MEM_ALLOC_PARAM_FIELD_MDS = UCS_BIT(3), +
+  UCT_MEM_ALLOC_PARAM_FIELD_NAME = UCS_BIT(4) +
+ }
 UCT allocation parameters specification field mask. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_md_mem_query (uct_md_h md, const void *address, size_t length, uct_md_mem_attr_t *mem_attr)
 Query attributes of a given pointer. More...
 
ucs_status_t uct_md_query (uct_md_h md, uct_md_attr_t *md_attr)
 Query for memory domain attributes. More...
 
ucs_status_t uct_md_mem_advise (uct_md_h md, uct_mem_h memh, void *addr, size_t length, uct_mem_advice_t advice)
 Give advice about the use of memory. More...
 
ucs_status_t uct_md_mem_reg (uct_md_h md, void *address, size_t length, unsigned flags, uct_mem_h *memh_p)
 Register memory for zero-copy sends and remote access. More...
 
ucs_status_t uct_md_mem_dereg (uct_md_h md, uct_mem_h memh)
 Undo the operation of uct_md_mem_reg(). More...
 
ucs_status_t uct_md_detect_memory_type (uct_md_h md, const void *addr, size_t length, ucs_memory_type_t *mem_type_p)
 Detect memory type. More...
 
ucs_status_t uct_mem_alloc (size_t length, const uct_alloc_method_t *methods, unsigned num_methods, const uct_mem_alloc_params_t *params, uct_allocated_memory_t *mem)
 Allocate memory for zero-copy communications and remote access. More...
 
ucs_status_t uct_mem_free (const uct_allocated_memory_t *mem)
 Release allocated memory. More...
 
ucs_status_t uct_md_config_read (uct_component_h component, const char *env_prefix, const char *filename, uct_md_config_t **config_p)
 Read the configuration for a memory domain. More...
 
int uct_md_is_sockaddr_accessible (uct_md_h md, const ucs_sock_addr_t *sockaddr, uct_sockaddr_accessibility_t mode)
 Check if remote sock address is accessible from the memory domain. More...
 
ucs_status_t uct_md_mkey_pack (uct_md_h md, uct_mem_h memh, void *rkey_buffer)
 Pack a remote key. More...
 
ucs_status_t uct_rkey_unpack (uct_component_h component, const void *rkey_buffer, uct_rkey_bundle_t *rkey_ob)
 Unpack a remote key. More...
 
ucs_status_t uct_rkey_ptr (uct_component_h component, uct_rkey_bundle_t *rkey_ob, uint64_t remote_addr, void **addr_p)
 Get a local pointer to remote memory. More...
 
ucs_status_t uct_rkey_release (uct_component_h component, const uct_rkey_bundle_t *rkey_ob)
 Release a remote key. More...
 
+

Detailed Description

+

The Memory Domain abstracts resources required for network communication, which typically includes memory, transport mechanisms, compute and network resources. It is an isolation mechanism that can be employed by the applications for isolating resources between multiple programming models. The attributes of the Memory Domain are defined by the structure uct_md_attr(). The communication and memory operations are defined in the context of Memory Domain.

+

Data Structure Documentation

+ +
+
+ + + + +
struct uct_md_attr
+
+

This structure defines the attributes of a Memory Domain which includes maximum memory that can be allocated, credentials required for accessing the memory, CPU mask indicating the proximity of CPUs, and bitmaps indicating the types of memory (CPU/CUDA/ROCM) that can be detected, allocated and accessed.

+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + + + + +
Data Fields
+struct uct_md_attr +cap +
+ucs_linear_func_t +reg_cost +

Memory registration cost estimation (time,seconds) as a linear function of the buffer size.

+
+char +component_name[UCT_COMPONENT_NAME_MAX] +

Component name

+
+size_t +rkey_packed_size +

Size of buffer needed for packed rkey

+
+ucs_cpu_set_t +local_cpus +

Mask of CPUs near the resource

+
+ +
+
+ +
+
+ + + + +
struct uct_md_attr.cap
+
+
+ + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +max_alloc +

Maximal allocation size

+
+size_t +max_reg +

Maximal registration size

+
+uint64_t +flags +

UCT_MD_FLAG_xx

+
+uint64_t +reg_mem_types +

Bitmap of memory types that Memory Domain can be registered with

+
+uint64_t +detect_mem_types +

Bitmap of memory types that Memory Domain can detect if address belongs to it

+
+uint64_t +alloc_mem_types +

Bitmap of memory types that Memory Domain can allocate memory on

+
+uint64_t +access_mem_types +

Memory types that Memory Domain can access

+
+ +
+
+ +
+
+ + + + +
struct uct_md_mem_attr
+
+

This structure defines the attributes of a memory pointer which may include the memory type of the pointer, and the system device that backs the pointer depending on the bit fields populated in field_mask.

+
+ + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_md_mem_attr_field_t.

+
+ucs_memory_type_t +mem_type +

The type of memory. E.g. CPU/GPU memory or some other valid type. If the md does not support sys_dev query, then UCS_MEMORY_TYPE_UNKNOWN is returned.

+
+ucs_sys_device_t +sys_dev +

Index of the system device on which the buffer resides. eg: NUMA/GPU If the md does not support sys_dev query, then UCS_SYS_DEVICE_ID_UNKNOWN is returned.

+
+void * +base_address +

Base address of the allocation to which the provided buffer belongs to. If the md not support base address query, then the pointer passed to uct_md_mem_query is returned as is.

+
+size_t +alloc_length +

Length of the whole allocation to which the provided buffer belongs to. If the md not support querying allocation length, then the length passed to uct_md_mem_query is returned as is.

+
+int +dmabuf_fd +

Dmabuf file descriptor to expose memory regions across devices. Refer (https://01.org/linuxgraphics/gfx-docs/drm/driver-api/dma-buf.html). If the md does not support querying the fd object associated with the region, then dmabuf_fd is set to UCT_DMABUF_FD_INVALID by uct_md_mem_query(). It is the responsibility of the user to close the returned fd using close (2) when it's no longer needed.

+
+size_t +dmabuf_offset +

Offset of the given address from the start of the memory region (identified by dmabuf_fd) backing the memory region being queried.

+
+ +
+
+ +
+
+ + + + +
struct uct_allocated_memory
+
+

This structure describes the memory block which includes the address, size, and Memory Domain used for allocation. This structure is passed to interface and the memory is allocated by memory allocation functions uct_mem_alloc.

+
+ + + + + + + + + + + + + + + + + + + +
Data Fields
+void * +address +

Address of allocated memory

+
+size_t +length +

Real size of allocated memory

+
+uct_alloc_method_t +method +

Method used to allocate the memory

+
+ucs_memory_type_t +mem_type +

type of allocated memory

+
+uct_md_h +md +

if method==MD: MD used to allocate the memory

+
+uct_mem_h +memh +

if method==MD: MD memory handle

+
+ +
+
+ +
+
+ + + + +
struct uct_rkey_bundle
+
+

This structure describes the credentials (typically key) and information required to access the remote memory by the communication interfaces.

+
+ + + + + + + + + + +
Data Fields
+uct_rkey_t +rkey +

Remote key descriptor, passed to RMA functions

+
+void * +handle +

Handle, used internally for releasing the key

+
+void * +type +

Remote key type

+
+ +
+
+ +
+
+ + + + +
struct uct_mem_alloc_params_t
+
+
+ + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_mem_alloc_params_field_t. Fields not specified in this mask will be ignored.

+
+unsigned +flags +

Memory allocation flags, see uct_md_mem_flags If UCT_MEM_ALLOC_PARAM_FIELD_FLAGS is not specified in field_mask, then (UCT_MD_MEM_ACCESS_LOCAL_READ | UCT_MD_MEM_ACCESS_LOCAL_WRITE) is used by default.

+
+void * +address +

If address is NULL, the underlying allocation routine will choose the address at which to create the mapping. If address is non-NULL and UCT_MD_MEM_FLAG_FIXED is not set, the address will be interpreted as a hint as to where to establish the mapping. If address is non-NULL and UCT_MD_MEM_FLAG_FIXED is set, then the specified address is interpreted as a requirement. In this case, if the mapping to the exact address cannot be made, the allocation request fails.

+
+ucs_memory_type_t +mem_type +

Type of memory to be allocated.

+
+struct uct_mem_alloc_params_t +mds +
+const char * +name +

Name of the allocated region, used to track memory usage for debugging and profiling. If UCT_MEM_ALLOC_PARAM_FIELD_NAME is not specified in field_mask, then "anonymous-uct_mem_alloc" is used by default.

+
+ +
+
+ +
+
+ + + + +
struct uct_mem_alloc_params_t.mds
+
+
+ + + + + + + +
Data Fields
+const uct_md_h * +mds +

Array of memory domains to attempt to allocate the memory with, for MD allocation method.

+
+unsigned +count +

Length of 'mds' array. May be empty, in such case 'mds' may be NULL, and MD allocation method will be skipped.

+
+ +
+
+

Typedef Documentation

+ +
+
+

The enumeration allows specifying which fields in uct_md_mem_attr_t are present.

+ +
+
+ +
+
+ + + + +
typedef struct uct_md_mem_attr uct_md_mem_attr_t
+
+

This structure defines the attributes of a memory pointer which may include the memory type of the pointer, and the system device that backs the pointer depending on the bit fields populated in field_mask.

+ +
+
+ +
+
+ + + + +
typedef struct uct_allocated_memory uct_allocated_memory_t
+
+

This structure describes the memory block which includes the address, size, and Memory Domain used for allocation. This structure is passed to interface and the memory is allocated by memory allocation functions uct_mem_alloc.

+ +
+
+ +
+
+ + + + +
typedef struct uct_rkey_bundle uct_rkey_bundle_t
+
+

This structure describes the credentials (typically key) and information required to access the remote memory by the communication interfaces.

+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + +
Enumerator
UCT_SOCKADDR_ACC_LOCAL  +

Check if local address exists. Address should belong to a local network interface

+
UCT_SOCKADDR_ACC_REMOTE  +

Check if remote address can be reached. Address is routable from one of the local network interfaces

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+ + + + + + + + + + + + +
Enumerator
UCT_MD_FLAG_ALLOC  +

MD supports memory allocation

+
UCT_MD_FLAG_REG  +

MD supports memory registration

+
UCT_MD_FLAG_NEED_MEMH  +

The transport needs a valid local memory handle for zero-copy operations

+
UCT_MD_FLAG_NEED_RKEY  +

The transport needs a valid remote memory key for remote memory operations

+
UCT_MD_FLAG_ADVISE  +

MD supports memory advice

+
UCT_MD_FLAG_FIXED  +

MD supports memory allocation with fixed address

+
UCT_MD_FLAG_RKEY_PTR  +

MD supports direct access to remote memory via a pointer that is returned by uct_rkey_ptr.

Note
This flag is deprecated and replaced by UCT_COMPONENT_FLAG_RKEY_PTR.
+
UCT_MD_FLAG_SOCKADDR  +

MD support for client-server connection establishment via sockaddr

+
UCT_MD_FLAG_INVALIDATE  +

MD supports memory invalidation

+
UCT_MD_FLAG_EXPORTED_MKEY  +

MD supports exporting memory keys with another process using the same device or attaching to an exported memory key.

+
UCT_MD_FLAG_REG_DMABUF  +

MD supports registering a dmabuf file descriptor.

+
+ +
+
+ +
+
+ + + + +
enum uct_md_mem_flags
+
+ + + + + + + + + + + + +
Enumerator
UCT_MD_MEM_FLAG_NONBLOCK  +

Hint to perform non-blocking allocation/registration: page mapping may be deferred until it is accessed by the CPU or a transport.

+
UCT_MD_MEM_FLAG_FIXED  +

Place the mapping at exactly defined address.

+
UCT_MD_MEM_FLAG_LOCK  +

Registered memory should be locked. May incur extra cost for registration, but memory access is usually faster.

+
UCT_MD_MEM_FLAG_HIDE_ERRORS  +

Hide errors on memory registration. In some cases registration failure is not an error (e. g. for merged memory regions).

+
UCT_MD_MEM_ACCESS_REMOTE_PUT  +

Enable remote put access.

+
UCT_MD_MEM_ACCESS_REMOTE_GET  +

Enable remote get access.

+
UCT_MD_MEM_ACCESS_REMOTE_ATOMIC  +

Enable remote atomic access.

+
UCT_MD_MEM_ACCESS_LOCAL_READ  +

Enable local read access.

+
UCT_MD_MEM_ACCESS_LOCAL_WRITE  +

Enable local write access.

+
UCT_MD_MEM_ACCESS_ALL  +

Enable local and remote access for all operations.

+
UCT_MD_MEM_ACCESS_RMA  +

Enable local and remote access for put and get operations.

+
+ +
+
+ +
+
+ + + + +
enum uct_mem_advice_t
+
+ + + +
Enumerator
UCT_MADV_NORMAL  +

No special treatment

+
UCT_MADV_WILLNEED  +

can be used on the memory mapped with UCT_MD_MEM_FLAG_NONBLOCK to speed up memory mapping and to avoid page faults when the memory is accessed for the first time.

+
+ +
+
+ +
+
+ + + + +
enum uct_md_mem_attr_field
+
+

The enumeration allows specifying which fields in uct_md_mem_attr_t are present.

+ + + + + + + +
Enumerator
UCT_MD_MEM_ATTR_FIELD_MEM_TYPE  +

Indicate if memory type is populated. E.g. CPU/GPU

+
UCT_MD_MEM_ATTR_FIELD_SYS_DEV  +

Indicate if details of system device backing the pointer are populated. For example: GPU device, NUMA domain, etc.

+
UCT_MD_MEM_ATTR_FIELD_BASE_ADDRESS  +

Request base address of the allocation to which the buffer belongs.

+
UCT_MD_MEM_ATTR_FIELD_ALLOC_LENGTH  +

Request the whole length of the allocation to which the buffer belongs.

+
UCT_MD_MEM_ATTR_FIELD_DMABUF_FD  +

Request a cross-device dmabuf file descriptor that represents a memory region, and can be used to register the region with another memory domain.

+
UCT_MD_MEM_ATTR_FIELD_DMABUF_OFFSET  +

Request the offset of the provided virtual address relative to the beginning of its backing dmabuf region.

+
+ +
+
+ +
+
+

The enumeration allows specifying which fields in uct_mem_alloc_params_t are present.

+ + + + + + +
Enumerator
UCT_MEM_ALLOC_PARAM_FIELD_FLAGS  +

Enables uct_mem_alloc_params_t::flags

+
UCT_MEM_ALLOC_PARAM_FIELD_ADDRESS  +

Enables uct_mem_alloc_params_t::address

+
UCT_MEM_ALLOC_PARAM_FIELD_MEM_TYPE  +

Enables uct_mem_alloc_params_t::mem_type

+
UCT_MEM_ALLOC_PARAM_FIELD_MDS  +

Enables uct_mem_alloc_params_t::mds

+
UCT_MEM_ALLOC_PARAM_FIELD_NAME  +

Enables uct_mem_alloc_params_t::name

+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_mem_query (uct_md_h md,
const void * address,
size_t length,
uct_md_mem_attr_tmem_attr 
)
+
+

Return attributes such as memory type, base address, allocation length, and system device for the given pointer of specific length.

+
Parameters
+ + + + + +
[in]mdMemory domain to run the query on. This function returns an error if the md does not recognize the pointer.
[in]addressThe address of the pointer. Must be non-NULL else UCS_ERR_INVALID_PARAM error is returned.
[in]lengthLength of the memory region to examine. Must be nonzero else UCS_ERR_INVALID_PARAM error is returned.
[in,out]mem_attrIf successful, filled with ptr attributes.
+
+
+
Returns
UCS_OK if at least one attribute is successfully queried otherwise an error code as defined by ucs_status_t is returned.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_query (uct_md_h md,
uct_md_attr_tmd_attr 
)
+
+
Parameters
+ + + +
[in]mdMemory domain to query.
[out]md_attrFilled with memory domain attributes.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_mem_advise (uct_md_h md,
uct_mem_h memh,
void * addr,
size_t length,
uct_mem_advice_t advice 
)
+
+

This routine advises the UCT about how to handle memory range beginning at address and size of length bytes. This call does not influence the semantics of the application, but may influence its performance. The advice may be ignored.

+
Parameters
+ + + + + + +
[in]mdMemory domain memory was allocated or registered on.
[in]memhMemory handle, as returned from uct_mem_alloc
[in]addrMemory base address. Memory range must belong to the memh
[in]lengthLength of memory to advise. Must be >0.
[in]adviceMemory use advice as defined in the uct_mem_advice_t list
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_mem_reg (uct_md_h md,
void * address,
size_t length,
unsigned flags,
uct_mem_hmemh_p 
)
+
+

Register memory on the memory domain. In order to use this function, MD must support UCT_MD_FLAG_REG flag.

+
Parameters
+ + + + + + +
[in]mdMemory domain to register memory on.
[in]addressMemory to register.
[in]lengthSize of memory to register. Must be >0.
[in]flagsMemory allocation flags, see uct_md_mem_flags.
[out]memh_pFilled with handle for allocated region.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_mem_dereg (uct_md_h md,
uct_mem_h memh 
)
+
+
Parameters
+ + + +
[in]mdMemory domain which was used to register the memory.
[in]memhLocal access key to memory region.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_detect_memory_type (uct_md_h md,
const void * addr,
size_t length,
ucs_memory_type_tmem_type_p 
)
+
+
Parameters
+ + + + + +
[in]mdMemory domain to detect memory type
[in]addrMemory address to detect.
[in]lengthSize of memory
[out]mem_type_pFilled with memory type of the address range if function succeeds
+
+
+
Returns
UCS_OK If memory type is successfully detected UCS_ERR_INVALID_ADDR If failed to detect memory type
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_mem_alloc (size_t length,
const uct_alloc_method_tmethods,
unsigned num_methods,
const uct_mem_alloc_params_tparams,
uct_allocated_memory_tmem 
)
+
+

Allocate potentially registered memory.

+
Parameters
+ + + + + + +
[in]lengthThe minimal size to allocate. The actual size may be larger, for example because of alignment restrictions. Must be >0.
[in]methodsArray of memory allocation methods to attempt. Each of the provided allocation methods will be tried in array order, to perform the allocation, until one succeeds. Whenever the MD method is encountered, each of the provided MDs will be tried in array order, to allocate the memory, until one succeeds, or they are exhausted. In this case the next allocation method from the initial list will be attempted.
[in]num_methodsLength of 'methods' array.
[in]paramsMemory allocation characteristics, see uct_mem_alloc_params_t.
[out]memIn case of success, filled with information about the allocated memory. uct_allocated_memory_t
+
+
+ +
+
+ +
+
+ + + + + + + + +
ucs_status_t uct_mem_free (const uct_allocated_memory_tmem)
+
+

Release the memory allocated by uct_mem_alloc.

+
Parameters
+ + +
[in]memDescription of allocated memory, as returned from uct_mem_alloc.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_config_read (uct_component_h component,
const char * env_prefix,
const char * filename,
uct_md_config_t ** config_p 
)
+
+
Parameters
+ + + + + +
[in]componentRead the configuration of this component.
[in]env_prefixIf non-NULL, search for environment variables starting with this UCT_<prefix>_. Otherwise, search for environment variables starting with just UCT_.
[in]filenameIf non-NULL, read configuration from this file. If the file does not exist, it will be ignored.
[out]config_pFilled with a pointer to the configuration.
+
+
+
Returns
Error code.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int uct_md_is_sockaddr_accessible (uct_md_h md,
const ucs_sock_addr_tsockaddr,
uct_sockaddr_accessibility_t mode 
)
+
+

This function checks if a remote sock address can be accessed from a local memory domain. Accessibility can be checked in local or remote mode.

+
Parameters
+ + + + +
[in]mdMemory domain to check accessibility from. This memory domain must support the UCT_MD_FLAG_SOCKADDR flag.
[in]sockaddrSocket address to check accessibility to.
[in]modeMode for checking accessibility, as defined in uct_sockaddr_accessibility_t. Indicates if accessibility is tested on the server side - for binding to the given sockaddr, or on the client side - for connecting to the given remote peer's sockaddr.
+
+
+
Returns
Nonzero if accessible, 0 if inaccessible.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_mkey_pack (uct_md_h md,
uct_mem_h memh,
void * rkey_buffer 
)
+
+
Parameters
+ + + + +
[in]mdHandle to memory domain.
[in]memhLocal key, whose remote key should be packed.
[out]rkey_bufferFilled with packed remote key.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_rkey_unpack (uct_component_h component,
const void * rkey_buffer,
uct_rkey_bundle_trkey_ob 
)
+
+
Parameters
+ + + + +
[in]componentComponent on which to unpack the remote key.
[in]rkey_bufferPacked remote key buffer.
[out]rkey_obFilled with the unpacked remote key and its type.
+
+
+
Note
The remote key must be unpacked with the same component that was used to pack it. For example, if a remote device address on the remote memory domain which was used to pack the key is reachable by a transport on a local component, then that component is eligible to unpack the key. If the remote key buffer cannot be unpacked with the given component, UCS_ERR_INVALID_PARAM will be returned.
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_rkey_ptr (uct_component_h component,
uct_rkey_bundle_trkey_ob,
uint64_t remote_addr,
void ** addr_p 
)
+
+

This routine returns a local pointer to the remote memory described by the rkey bundle. The component must support UCT_COMPONENT_FLAG_RKEY_PTR flag.

+
Parameters
+ + + + + +
[in]componentComponent on which to obtain the pointer to the remote key.
[in]rkey_obA remote key bundle as returned by the uct_rkey_unpack function.
[in]remote_addrA remote address within the memory area described by the rkey_ob.
[out]addr_pA pointer that can be used for direct access to the remote memory.
+
+
+
Note
The component used to obtain a local pointer to the remote memory must be the same component that was used to pack the remote key. See notes section for uct_rkey_unpack.
+
Returns
Error code if the remote memory cannot be accessed directly or the remote address is not valid.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_rkey_release (uct_component_h component,
const uct_rkey_bundle_trkey_ob 
)
+
+
Parameters
+ + + +
[in]componentComponent which was used to unpack the remote key.
[in]rkey_obRemote key to release.
+
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___m_d.js b/api/v1.14/html/group___u_c_t___m_d.js new file mode 100644 index 00000000000..25a3b34f8c9 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d.js @@ -0,0 +1,118 @@ +var group___u_c_t___m_d = +[ + [ "uct_md_attr", "group___u_c_t___m_d.html#structuct__md__attr", [ + [ "cap", "group___u_c_t___m_d.html#a9f50173ce8d0a0303e7f480fb7e024e8", null ], + [ "reg_cost", "group___u_c_t___m_d.html#aa8e4e4f1f063347094ea721a0ccb8952", null ], + [ "component_name", "group___u_c_t___m_d.html#a1f337f217f10d019529e79d9fe60af5c", null ], + [ "rkey_packed_size", "group___u_c_t___m_d.html#a95f941f6d800ef57a183d1f9c75a221c", null ], + [ "local_cpus", "group___u_c_t___m_d.html#aade634758ea5ea9fc7f64b17d66507d7", null ] + ] ], + [ "uct_md_attr.cap", "group___u_c_t___m_d.html#structuct__md__attr_8cap", [ + [ "max_alloc", "group___u_c_t___m_d.html#aaa6e5e31be347b4d78f8b7b8da29df67", null ], + [ "max_reg", "group___u_c_t___m_d.html#a5bcc2b523f735533ff4a0d45cf0ece14", null ], + [ "flags", "group___u_c_t___m_d.html#a4e5868d676cb634aa75b125a0f741abf", null ], + [ "reg_mem_types", "group___u_c_t___m_d.html#aac6dbc8bc7d7c4da5fbec837d19b3424", null ], + [ "detect_mem_types", "group___u_c_t___m_d.html#a4920c15760d7c80d94f2458a8db35982", null ], + [ "alloc_mem_types", "group___u_c_t___m_d.html#ab86d86005547ec04bdee8312bce06410", null ], + [ "access_mem_types", "group___u_c_t___m_d.html#aa44843ffc1f73fe1e700622ad6bc4ab5", null ] + ] ], + [ "uct_md_mem_attr", "group___u_c_t___m_d.html#structuct__md__mem__attr", [ + [ "field_mask", "group___u_c_t___m_d.html#a95cf319a4733fed89f7b52b66f82f84a", null ], + [ "mem_type", "group___u_c_t___m_d.html#a9b20dd26a01412d61bea8f5cc4ee02a2", null ], + [ "sys_dev", "group___u_c_t___m_d.html#aacc6d26ea7f15b8cd19cb9b10eb4603c", null ], + [ "base_address", "group___u_c_t___m_d.html#a18678799e605b7caa7cca03e6a5ba368", null ], + [ "alloc_length", "group___u_c_t___m_d.html#aea0d8373ac6c6d4a17eb15627a10b33f", null ], + [ "dmabuf_fd", "group___u_c_t___m_d.html#a84fd9cd1ae1fcdbaa0bd6e5cf8ac32a5", null ], + [ "dmabuf_offset", "group___u_c_t___m_d.html#aa91e5831a71cbe0b19c274178cbb1353", null ] + ] ], + [ "uct_allocated_memory", "group___u_c_t___m_d.html#structuct__allocated__memory", [ + [ "address", "group___u_c_t___m_d.html#abd26b6aa42f6d176591f7028317bb887", null ], + [ "length", "group___u_c_t___m_d.html#ae867afdf079a09edbbb03134e9d32489", null ], + [ "method", "group___u_c_t___m_d.html#ac0c1c5a5cd287f176e81650816138a55", null ], + [ "mem_type", "group___u_c_t___m_d.html#ae6002ec224af4efa796246bfce7180fd", null ], + [ "md", "group___u_c_t___m_d.html#afdf7da800a504f0da8f59874d9b71823", null ], + [ "memh", "group___u_c_t___m_d.html#a4b9171caf237f0f2884d548c395e47ea", null ] + ] ], + [ "uct_rkey_bundle", "group___u_c_t___m_d.html#structuct__rkey__bundle", [ + [ "rkey", "group___u_c_t___m_d.html#a750c92c67b9203752b04894893b91bbc", null ], + [ "handle", "group___u_c_t___m_d.html#ab42e33b02da0cc7023495793fae7f569", null ], + [ "type", "group___u_c_t___m_d.html#ae9d6a73b93fa47d853ff2180fbd273b2", null ] + ] ], + [ "uct_mem_alloc_params_t", "group___u_c_t___m_d.html#structuct__mem__alloc__params__t", [ + [ "field_mask", "group___u_c_t___m_d.html#ab06683bb31a585ea60b85f6f0f3126c8", null ], + [ "flags", "group___u_c_t___m_d.html#a8180ccc5d99649919a9061c9ebb2504f", null ], + [ "address", "group___u_c_t___m_d.html#a5d1be32ed06a9f67bdf686d1c2ec71fc", null ], + [ "mem_type", "group___u_c_t___m_d.html#ac6a68b6fb669135688c594a58a6e3955", null ], + [ "mds", "group___u_c_t___m_d.html#a611c24b16eb6131e02ccffe37fbaaa97", null ], + [ "name", "group___u_c_t___m_d.html#ad67ee098d7dff61b637e20d67dc184ec", null ] + ] ], + [ "uct_mem_alloc_params_t.mds", "group___u_c_t___m_d.html#structuct__mem__alloc__params__t_8mds", [ + [ "mds", "group___u_c_t___m_d.html#a60a114c91c41983174b484e188856fb3", null ], + [ "count", "group___u_c_t___m_d.html#ae2942a04780e223b215eb8b663cf5353", null ] + ] ], + [ "uct_md_mem_attr_field_t", "group___u_c_t___m_d.html#ga64d71b571e62366b78dceadff144907e", null ], + [ "uct_md_mem_attr_t", "group___u_c_t___m_d.html#gaaa5db32507a7117f0b79185234844900", null ], + [ "uct_allocated_memory_t", "group___u_c_t___m_d.html#ga3664a14883bf6f6a16a66ec1e1646708", null ], + [ "uct_rkey_bundle_t", "group___u_c_t___m_d.html#gac09ce3a9f1ff378a803acdc13726089e", null ], + [ "uct_sockaddr_accessibility_t", "group___u_c_t___m_d.html#gacb560e35a1b169ca88792200817e219e", [ + [ "UCT_SOCKADDR_ACC_LOCAL", "group___u_c_t___m_d.html#ggacb560e35a1b169ca88792200817e219ea0f21e1dc1e98d3ee0291cc345bfe1fde", null ], + [ "UCT_SOCKADDR_ACC_REMOTE", "group___u_c_t___m_d.html#ggacb560e35a1b169ca88792200817e219ea4e0f66a27582dfec8698a77102fb368e", null ], + [ "UCT_MD_FLAG_ALLOC", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eace1638df732eb289b9dd6255101c6532", null ], + [ "UCT_MD_FLAG_REG", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eac2a33833ce3c103c3de54332c512eba7", null ], + [ "UCT_MD_FLAG_NEED_MEMH", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8badc53da14cdd45fa70178483091e55", null ], + [ "UCT_MD_FLAG_NEED_RKEY", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eafc6830135c641eecf0200f9990257e10", null ], + [ "UCT_MD_FLAG_ADVISE", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea489e86d8c4f7630c5b15ba37c11e8598", null ], + [ "UCT_MD_FLAG_FIXED", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eae948128d19128010bff52f39b2ea8528", null ], + [ "UCT_MD_FLAG_RKEY_PTR", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8e6750832a6a17fc5aff65c767d0e5b5", null ], + [ "UCT_MD_FLAG_SOCKADDR", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea1ef79afc094919112724f8eb82c2484b", null ], + [ "UCT_MD_FLAG_INVALIDATE", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea3b11ef8fb3fcf99c71ce1f91b03ecd2d", null ], + [ "UCT_MD_FLAG_EXPORTED_MKEY", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8aad09237d801dbd3a7636ebb18c40e4", null ], + [ "UCT_MD_FLAG_REG_DMABUF", "group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea88f4343ee73e7b4da46e98d07023b9f5", null ] + ] ], + [ "uct_md_mem_flags", "group___u_c_t___m_d.html#ga3b0345adc84e4b3224366502aca5e11a", [ + [ "UCT_MD_MEM_FLAG_NONBLOCK", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa156afde3449517fd4d518148df8e3e24", null ], + [ "UCT_MD_MEM_FLAG_FIXED", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aac91502fd80954a19287b56c82d8c15e8", null ], + [ "UCT_MD_MEM_FLAG_LOCK", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa177416f1bc52ecf58571f2320ea860f4", null ], + [ "UCT_MD_MEM_FLAG_HIDE_ERRORS", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aac9affab2e3fc8ce0237b8b7800731c49", null ], + [ "UCT_MD_MEM_ACCESS_REMOTE_PUT", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa107516b36500372eac7e05bdb71cf4a1", null ], + [ "UCT_MD_MEM_ACCESS_REMOTE_GET", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa4a699e49e99a57afab4fb7b4825e8a5e", null ], + [ "UCT_MD_MEM_ACCESS_REMOTE_ATOMIC", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa4478fefd476fe66f7a1721161e3773e1", null ], + [ "UCT_MD_MEM_ACCESS_LOCAL_READ", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aaec71b48ac78529034432e702ae2497af", null ], + [ "UCT_MD_MEM_ACCESS_LOCAL_WRITE", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa3da522cc5178d7330279de64c6d8a42d", null ], + [ "UCT_MD_MEM_ACCESS_ALL", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa8de9fc3e5e9a93abee846dbce6f51471", null ], + [ "UCT_MD_MEM_ACCESS_RMA", "group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa53c0d5770a5c69086d0aaa58e7398fa8", null ] + ] ], + [ "uct_mem_advice_t", "group___u_c_t___m_d.html#ga72172b231f5e9df777cb130b9f908397", [ + [ "UCT_MADV_NORMAL", "group___u_c_t___m_d.html#gga72172b231f5e9df777cb130b9f908397a44cc1f4e9d750610f872680ad83a5693", null ], + [ "UCT_MADV_WILLNEED", "group___u_c_t___m_d.html#gga72172b231f5e9df777cb130b9f908397af2f40857cea090977db8a5994b334594", null ] + ] ], + [ "uct_md_mem_attr_field", "group___u_c_t___m_d.html#gac4f1c9728c529e4f35eaf03bc14c6977", [ + [ "UCT_MD_MEM_ATTR_FIELD_MEM_TYPE", "group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a873fb4c4b884a7598873badb63a8caf9", null ], + [ "UCT_MD_MEM_ATTR_FIELD_SYS_DEV", "group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a1b869b2080c1ab765fa0b67a86dabb24", null ], + [ "UCT_MD_MEM_ATTR_FIELD_BASE_ADDRESS", "group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a132548201e6dba2fca6b03385eed2356", null ], + [ "UCT_MD_MEM_ATTR_FIELD_ALLOC_LENGTH", "group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a7f5f99bb05148218a1855f3f8344aabb", null ], + [ "UCT_MD_MEM_ATTR_FIELD_DMABUF_FD", "group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a1178afc62486924f953e18fbf1613754", null ], + [ "UCT_MD_MEM_ATTR_FIELD_DMABUF_OFFSET", "group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a7511ff87de4e1dcd4140acc9a6131df4", null ] + ] ], + [ "uct_mem_alloc_params_field_t", "group___u_c_t___m_d.html#ga3421ca55bc67f5752ca6164f678a7923", [ + [ "UCT_MEM_ALLOC_PARAM_FIELD_FLAGS", "group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923ae179d3ffed3e53b0e2cda2d6a62280d3", null ], + [ "UCT_MEM_ALLOC_PARAM_FIELD_ADDRESS", "group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923abcfd9def1c725531f11cbbcde9fedd6f", null ], + [ "UCT_MEM_ALLOC_PARAM_FIELD_MEM_TYPE", "group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a0f09a88dc239026aefa08e4597e0d9e6", null ], + [ "UCT_MEM_ALLOC_PARAM_FIELD_MDS", "group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a122274e877d32afcfafd10cde3c0b8e7", null ], + [ "UCT_MEM_ALLOC_PARAM_FIELD_NAME", "group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a97de3a2b66f4cd940a271df1b9632f83", null ] + ] ], + [ "uct_md_mem_query", "group___u_c_t___m_d.html#ga7d8cf921f8fd8fba4545c568d495bc8f", null ], + [ "uct_md_query", "group___u_c_t___m_d.html#gae7f6d3f902cff0370fe0f07f841898f1", null ], + [ "uct_md_mem_advise", "group___u_c_t___m_d.html#gaf5f8ef1c6302792c726b294c84ef06c6", null ], + [ "uct_md_mem_reg", "group___u_c_t___m_d.html#gadafbaee4d8462954361fd2a41c8069e0", null ], + [ "uct_md_mem_dereg", "group___u_c_t___m_d.html#gaf1e9ff0364ec4d2bb05c06a2fab67dd5", null ], + [ "uct_md_detect_memory_type", "group___u_c_t___m_d.html#gac69d1df8de5ff0b6422af01c3befe67f", null ], + [ "uct_mem_alloc", "group___u_c_t___m_d.html#ga3c91345959561cd033670a9ae527d52f", null ], + [ "uct_mem_free", "group___u_c_t___m_d.html#ga55be17fdb04dcf28373bef0ddf423e94", null ], + [ "uct_md_config_read", "group___u_c_t___m_d.html#ga8fd8d3ebc188c9016a179d5678c0a71f", null ], + [ "uct_md_is_sockaddr_accessible", "group___u_c_t___m_d.html#ga9d4cd6b6f3206610cbe83cab3eb1e90d", null ], + [ "uct_md_mkey_pack", "group___u_c_t___m_d.html#ga91cc404f53a9ef031c7bfbe886c0f414", null ], + [ "uct_rkey_unpack", "group___u_c_t___m_d.html#ga2927741255a1ab0efc82b965f4266efa", null ], + [ "uct_rkey_ptr", "group___u_c_t___m_d.html#ga0d9f92b5814f82afc67c9f4a7ba348e3", null ], + [ "uct_rkey_release", "group___u_c_t___m_d.html#gaea26840237c8c112e0c1505c1423cd30", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__allocated__memory.js b/api/v1.14/html/group___u_c_t___m_d_structuct__allocated__memory.js new file mode 100644 index 00000000000..9da55763ed8 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__allocated__memory.js @@ -0,0 +1,9 @@ +var group___u_c_t___m_d_structuct__allocated__memory = +[ + [ "address", "group___u_c_t___m_d.html#abd26b6aa42f6d176591f7028317bb887", null ], + [ "length", "group___u_c_t___m_d.html#ae867afdf079a09edbbb03134e9d32489", null ], + [ "method", "group___u_c_t___m_d.html#ac0c1c5a5cd287f176e81650816138a55", null ], + [ "mem_type", "group___u_c_t___m_d.html#ae6002ec224af4efa796246bfce7180fd", null ], + [ "md", "group___u_c_t___m_d.html#afdf7da800a504f0da8f59874d9b71823", null ], + [ "memh", "group___u_c_t___m_d.html#a4b9171caf237f0f2884d548c395e47ea", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__md__attr.js b/api/v1.14/html/group___u_c_t___m_d_structuct__md__attr.js new file mode 100644 index 00000000000..dc2e03858df --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__md__attr.js @@ -0,0 +1,8 @@ +var group___u_c_t___m_d_structuct__md__attr = +[ + [ "cap", "group___u_c_t___m_d.html#a9f50173ce8d0a0303e7f480fb7e024e8", null ], + [ "reg_cost", "group___u_c_t___m_d.html#aa8e4e4f1f063347094ea721a0ccb8952", null ], + [ "component_name", "group___u_c_t___m_d.html#a1f337f217f10d019529e79d9fe60af5c", null ], + [ "rkey_packed_size", "group___u_c_t___m_d.html#a95f941f6d800ef57a183d1f9c75a221c", null ], + [ "local_cpus", "group___u_c_t___m_d.html#aade634758ea5ea9fc7f64b17d66507d7", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__md__attr_8cap.js b/api/v1.14/html/group___u_c_t___m_d_structuct__md__attr_8cap.js new file mode 100644 index 00000000000..7d60643521c --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__md__attr_8cap.js @@ -0,0 +1,10 @@ +var group___u_c_t___m_d_structuct__md__attr_8cap = +[ + [ "max_alloc", "group___u_c_t___m_d.html#aaa6e5e31be347b4d78f8b7b8da29df67", null ], + [ "max_reg", "group___u_c_t___m_d.html#a5bcc2b523f735533ff4a0d45cf0ece14", null ], + [ "flags", "group___u_c_t___m_d.html#a4e5868d676cb634aa75b125a0f741abf", null ], + [ "reg_mem_types", "group___u_c_t___m_d.html#aac6dbc8bc7d7c4da5fbec837d19b3424", null ], + [ "detect_mem_types", "group___u_c_t___m_d.html#a4920c15760d7c80d94f2458a8db35982", null ], + [ "alloc_mem_types", "group___u_c_t___m_d.html#ab86d86005547ec04bdee8312bce06410", null ], + [ "access_mem_types", "group___u_c_t___m_d.html#aa44843ffc1f73fe1e700622ad6bc4ab5", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__md__mem__attr.js b/api/v1.14/html/group___u_c_t___m_d_structuct__md__mem__attr.js new file mode 100644 index 00000000000..d1365ce5402 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__md__mem__attr.js @@ -0,0 +1,10 @@ +var group___u_c_t___m_d_structuct__md__mem__attr = +[ + [ "field_mask", "group___u_c_t___m_d.html#a95cf319a4733fed89f7b52b66f82f84a", null ], + [ "mem_type", "group___u_c_t___m_d.html#a9b20dd26a01412d61bea8f5cc4ee02a2", null ], + [ "sys_dev", "group___u_c_t___m_d.html#aacc6d26ea7f15b8cd19cb9b10eb4603c", null ], + [ "base_address", "group___u_c_t___m_d.html#a18678799e605b7caa7cca03e6a5ba368", null ], + [ "alloc_length", "group___u_c_t___m_d.html#aea0d8373ac6c6d4a17eb15627a10b33f", null ], + [ "dmabuf_fd", "group___u_c_t___m_d.html#a84fd9cd1ae1fcdbaa0bd6e5cf8ac32a5", null ], + [ "dmabuf_offset", "group___u_c_t___m_d.html#aa91e5831a71cbe0b19c274178cbb1353", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__mem__alloc__params__t.js b/api/v1.14/html/group___u_c_t___m_d_structuct__mem__alloc__params__t.js new file mode 100644 index 00000000000..7d1ed5916fc --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__mem__alloc__params__t.js @@ -0,0 +1,9 @@ +var group___u_c_t___m_d_structuct__mem__alloc__params__t = +[ + [ "field_mask", "group___u_c_t___m_d.html#ab06683bb31a585ea60b85f6f0f3126c8", null ], + [ "flags", "group___u_c_t___m_d.html#a8180ccc5d99649919a9061c9ebb2504f", null ], + [ "address", "group___u_c_t___m_d.html#a5d1be32ed06a9f67bdf686d1c2ec71fc", null ], + [ "mem_type", "group___u_c_t___m_d.html#ac6a68b6fb669135688c594a58a6e3955", null ], + [ "mds", "group___u_c_t___m_d.html#a611c24b16eb6131e02ccffe37fbaaa97", null ], + [ "name", "group___u_c_t___m_d.html#ad67ee098d7dff61b637e20d67dc184ec", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__mem__alloc__params__t_8mds.js b/api/v1.14/html/group___u_c_t___m_d_structuct__mem__alloc__params__t_8mds.js new file mode 100644 index 00000000000..935770f00d5 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__mem__alloc__params__t_8mds.js @@ -0,0 +1,5 @@ +var group___u_c_t___m_d_structuct__mem__alloc__params__t_8mds = +[ + [ "mds", "group___u_c_t___m_d.html#a60a114c91c41983174b484e188856fb3", null ], + [ "count", "group___u_c_t___m_d.html#ae2942a04780e223b215eb8b663cf5353", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___m_d_structuct__rkey__bundle.js b/api/v1.14/html/group___u_c_t___m_d_structuct__rkey__bundle.js new file mode 100644 index 00000000000..2e938907b54 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___m_d_structuct__rkey__bundle.js @@ -0,0 +1,6 @@ +var group___u_c_t___m_d_structuct__rkey__bundle = +[ + [ "rkey", "group___u_c_t___m_d.html#a750c92c67b9203752b04894893b91bbc", null ], + [ "handle", "group___u_c_t___m_d.html#ab42e33b02da0cc7023495793fae7f569", null ], + [ "type", "group___u_c_t___m_d.html#ae9d6a73b93fa47d853ff2180fbd273b2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e.html b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e.html new file mode 100644 index 00000000000..537a33ef169 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e.html @@ -0,0 +1,4056 @@ + + + + + + +UCX: UCT Communication Resource + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + + + + +

+Modules

 UCT interface operations and capabilities
 List of capabilities supported by UCX API.
 
 UCT interface for asynchronous event capabilities
 List of capabilities supported by UCT iface event API.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  uct_md_resource_desc
 Memory domain resource descriptor. More...
 
struct  uct_component_attr
 UCT component attributes. More...
 
struct  uct_tl_resource_desc
 Communication resource descriptor. More...
 
struct  uct_iface_attr
 Interface attributes: capabilities and limitations. More...
 
struct  uct_iface_attr.cap
 
struct  uct_iface_attr.cap.put
 
struct  uct_iface_attr.cap.get
 
struct  uct_iface_attr.cap.am
 
struct  uct_iface_attr.cap.tag
 
struct  uct_iface_attr.cap.tag.recv
 
struct  uct_iface_attr.cap.tag.eager
 
struct  uct_iface_attr.cap.tag.rndv
 
struct  uct_iface_attr.cap.atomic32
 
struct  uct_iface_attr.cap.atomic64
 
struct  uct_iface_params
 Parameters used for interface creation. More...
 
union  uct_iface_params.mode
 
struct  uct_iface_params.mode.device
 
struct  uct_iface_params.mode.sockaddr
 
struct  uct_ep_params
 Parameters for creating a UCT endpoint by uct_ep_create. More...
 
struct  uct_completion
 Completion handle. More...
 
struct  uct_pending_req
 Pending request. More...
 
struct  uct_iov
 Structure for scatter-gather I/O. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef struct uct_md_resource_desc uct_md_resource_desc_t
 Memory domain resource descriptor. More...
 
typedef struct uct_component_attr uct_component_attr_t
 UCT component attributes. More...
 
typedef struct uct_tl_resource_desc uct_tl_resource_desc_t
 Communication resource descriptor. More...
 
typedef struct uct_component * uct_component_h
 
typedef struct uct_iface * uct_iface_h
 
typedef struct uct_iface_config uct_iface_config_t
 
typedef struct uct_md_config uct_md_config_t
 
typedef struct uct_cm_config uct_cm_config_t
 
typedef struct uct_ep * uct_ep_h
 
typedef void * uct_mem_h
 
typedef uintptr_t uct_rkey_t
 
typedef struct uct_md * uct_md_h
 Memory domain handler. More...
 
typedef struct uct_md_ops uct_md_ops_t
 
typedef void * uct_rkey_ctx_h
 
typedef struct uct_iface_attr uct_iface_attr_t
 
typedef struct uct_iface_params uct_iface_params_t
 
typedef struct uct_ep_attr uct_ep_attr_t
 
typedef struct uct_md_attr uct_md_attr_t
 
typedef struct uct_completion uct_completion_t
 
typedef struct uct_pending_req uct_pending_req_t
 
typedef struct uct_worker * uct_worker_h
 
typedef struct uct_md uct_md_t
 
typedef enum uct_am_trace_type uct_am_trace_type_t
 
typedef struct uct_device_addr uct_device_addr_t
 
typedef struct uct_iface_addr uct_iface_addr_t
 
typedef struct uct_ep_addr uct_ep_addr_t
 
typedef struct uct_ep_params uct_ep_params_t
 
typedef struct uct_ep_connect_params uct_ep_connect_params_t
 
typedef struct uct_cm_attr uct_cm_attr_t
 
typedef struct uct_cm uct_cm_t
 
typedef uct_cm_tuct_cm_h
 
typedef struct uct_listener_attr uct_listener_attr_t
 
typedef struct uct_listener * uct_listener_h
 
typedef struct uct_listener_params uct_listener_params_t
 
typedef struct uct_tag_context uct_tag_context_t
 
typedef uint64_t uct_tag_t
 
typedef int uct_worker_cb_id_t
 
typedef void * uct_conn_request_h
 
typedef struct uct_iov uct_iov_t
 Structure for scatter-gather I/O. More...
 
typedef void(* uct_completion_callback_t) (uct_completion_t *self)
 Callback to process send completion. More...
 
typedef ucs_status_t(* uct_pending_callback_t) (uct_pending_req_t *self)
 Callback to process pending requests. More...
 
typedef ucs_status_t(* uct_error_handler_t) (void *arg, uct_ep_h ep, ucs_status_t status)
 Callback to process peer failure. More...
 
typedef void(* uct_pending_purge_callback_t) (uct_pending_req_t *self, void *arg)
 Callback to purge pending requests. More...
 
typedef size_t(* uct_pack_callback_t) (void *dest, void *arg)
 Callback for producing data. More...
 
typedef void(* uct_unpack_callback_t) (void *arg, const void *data, size_t length)
 Callback for consuming data. More...
 
typedef void(* uct_async_event_cb_t) (void *arg, unsigned flags)
 Callback to process asynchronous events. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Enumerations

enum  uct_component_attr_field { UCT_COMPONENT_ATTR_FIELD_NAME = UCS_BIT(0), +UCT_COMPONENT_ATTR_FIELD_MD_RESOURCE_COUNT = UCS_BIT(1), +UCT_COMPONENT_ATTR_FIELD_MD_RESOURCES = UCS_BIT(2), +UCT_COMPONENT_ATTR_FIELD_FLAGS = UCS_BIT(3) + }
 UCT component attributes field mask. More...
 
enum  { UCT_COMPONENT_FLAG_CM = UCS_BIT(0), +UCT_COMPONENT_FLAG_RKEY_PTR = UCS_BIT(1) + }
 Capability flags of uct_component_h. More...
 
enum  uct_device_type_t {
+  UCT_DEVICE_TYPE_NET, +UCT_DEVICE_TYPE_SHM, +UCT_DEVICE_TYPE_ACC, +UCT_DEVICE_TYPE_SELF, +
+  UCT_DEVICE_TYPE_LAST +
+ }
 List of UCX device types. More...
 
enum  uct_iface_event_types { UCT_EVENT_SEND_COMP = UCS_BIT(0), +UCT_EVENT_RECV = UCS_BIT(1), +UCT_EVENT_RECV_SIG = UCS_BIT(2) + }
 Asynchronous event types. More...
 
enum  uct_flush_flags { UCT_FLUSH_FLAG_LOCAL = 0, +UCT_FLUSH_FLAG_CANCEL = UCS_BIT(0), +UCT_FLUSH_FLAG_REMOTE = UCS_BIT(1) + }
 Flush modifiers. More...
 
enum  uct_progress_types { UCT_PROGRESS_SEND = UCS_BIT(0), +UCT_PROGRESS_RECV = UCS_BIT(1), +UCT_PROGRESS_THREAD_SAFE = UCS_BIT(7) + }
 UCT progress types. More...
 
enum  uct_cb_flags { UCT_CB_FLAG_RESERVED = UCS_BIT(1), +UCT_CB_FLAG_ASYNC = UCS_BIT(2) + }
 Callback flags. More...
 
enum  uct_iface_open_mode { UCT_IFACE_OPEN_MODE_DEVICE = UCS_BIT(0), +UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER = UCS_BIT(1), +UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT = UCS_BIT(2) + }
 Mode in which to open the interface. More...
 
enum  uct_iface_params_field {
+  UCT_IFACE_PARAM_FIELD_CPU_MASK = UCS_BIT(0), +UCT_IFACE_PARAM_FIELD_OPEN_MODE = UCS_BIT(1), +UCT_IFACE_PARAM_FIELD_DEVICE = UCS_BIT(2), +UCT_IFACE_PARAM_FIELD_SOCKADDR = UCS_BIT(3), +
+  UCT_IFACE_PARAM_FIELD_STATS_ROOT = UCS_BIT(4), +UCT_IFACE_PARAM_FIELD_RX_HEADROOM = UCS_BIT(5), +UCT_IFACE_PARAM_FIELD_ERR_HANDLER_ARG = UCS_BIT(6), +UCT_IFACE_PARAM_FIELD_ERR_HANDLER = UCS_BIT(7), +
+  UCT_IFACE_PARAM_FIELD_ERR_HANDLER_FLAGS = UCS_BIT(8), +UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_ARG = UCS_BIT(9), +UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_CB = UCS_BIT(10), +UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_ARG = UCS_BIT(11), +
+  UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_CB = UCS_BIT(12), +UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_ARG = UCS_BIT(13), +UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_CB = UCS_BIT(14), +UCT_IFACE_PARAM_FIELD_KEEPALIVE_INTERVAL = UCS_BIT(15), +
+  UCT_IFACE_PARAM_FIELD_AM_ALIGNMENT = UCS_BIT(16), +UCT_IFACE_PARAM_FIELD_AM_ALIGN_OFFSET = UCS_BIT(17), +UCT_IFACE_PARAM_FIELD_FEATURES = UCS_BIT(18) +
+ }
 UCT interface created by uct_iface_open parameters field mask. More...
 
enum  uct_ep_params_field {
+  UCT_EP_PARAM_FIELD_IFACE = UCS_BIT(0), +UCT_EP_PARAM_FIELD_USER_DATA = UCS_BIT(1), +UCT_EP_PARAM_FIELD_DEV_ADDR = UCS_BIT(2), +UCT_EP_PARAM_FIELD_IFACE_ADDR = UCS_BIT(3), +
+  UCT_EP_PARAM_FIELD_SOCKADDR = UCS_BIT(4), +UCT_EP_PARAM_FIELD_SOCKADDR_CB_FLAGS = UCS_BIT(5), +UCT_EP_PARAM_FIELD_SOCKADDR_PACK_CB = UCS_BIT(6), +UCT_EP_PARAM_FIELD_CM = UCS_BIT(7), +
+  UCT_EP_PARAM_FIELD_CONN_REQUEST = UCS_BIT(8), +UCT_EP_PARAM_FIELD_SOCKADDR_CONNECT_CB_CLIENT = UCS_BIT(9), +UCT_EP_PARAM_FIELD_SOCKADDR_NOTIFY_CB_SERVER = UCS_BIT(10), +UCT_EP_PARAM_FIELD_SOCKADDR_DISCONNECT_CB = UCS_BIT(11), +
+  UCT_EP_PARAM_FIELD_PATH_INDEX = UCS_BIT(12), +UCT_EP_PARAM_FIELD_CM_RESOLVE_CB = UCS_BIT(13), +UCT_EP_PARAM_FIELD_PRIV_DATA = UCS_BIT(14), +UCT_EP_PARAM_FIELD_PRIV_DATA_LENGTH = UCS_BIT(15), +
+  UCT_EP_PARAM_FIELD_LOCAL_SOCKADDR = UCS_BIT(16) +
+ }
 UCT endpoint created by uct_ep_create parameters field mask. More...
 
enum  uct_iface_feature {
+  UCT_IFACE_FEATURE_AM = UCS_BIT(0), +UCT_IFACE_FEATURE_PUT = UCS_BIT(1), +UCT_IFACE_FEATURE_GET = UCS_BIT(2), +UCT_IFACE_FEATURE_AMO32 = UCS_BIT(3), +
+  UCT_IFACE_FEATURE_AMO64 = UCS_BIT(4), +UCT_IFACE_FEATURE_TAG = UCS_BIT(5), +UCT_IFACE_FEATURE_FLUSH_REMOTE = UCS_BIT(6), +UCT_IFACE_FEATURE_LAST = UCS_BIT(7) +
+ }
 UCT interface configuration features. More...
 
enum  { UCT_TAG_RECV_CB_INLINE_DATA = UCS_BIT(0) + }
 flags of uct_tag_context. More...
 
enum  uct_cb_param_flags { UCT_CB_PARAM_FLAG_DESC = UCS_BIT(0), +UCT_CB_PARAM_FLAG_FIRST = UCS_BIT(1), +UCT_CB_PARAM_FLAG_MORE = UCS_BIT(2) + }
 Flags for active message and tag-matching offload callbacks (callback's parameters). More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_query_components (uct_component_h **components_p, unsigned *num_components_p)
 Query for list of components. More...
 
void uct_release_component_list (uct_component_h *components)
 Release the list of components returned from uct_query_components. More...
 
ucs_status_t uct_component_query (uct_component_h component, uct_component_attr_t *component_attr)
 Get component attributes. More...
 
ucs_status_t uct_md_open (uct_component_h component, const char *md_name, const uct_md_config_t *config, uct_md_h *md_p)
 Open a memory domain. More...
 
void uct_md_close (uct_md_h md)
 Close a memory domain. More...
 
ucs_status_t uct_md_query_tl_resources (uct_md_h md, uct_tl_resource_desc_t **resources_p, unsigned *num_resources_p)
 Query for transport resources. More...
 
void uct_release_tl_resource_list (uct_tl_resource_desc_t *resources)
 Release the list of resources returned from uct_md_query_tl_resources. More...
 
ucs_status_t uct_md_iface_config_read (uct_md_h md, const char *tl_name, const char *env_prefix, const char *filename, uct_iface_config_t **config_p)
 Read transport-specific interface configuration. More...
 
void uct_config_release (void *config)
 Release configuration memory returned from uct_md_iface_config_read(), uct_md_config_read(), or from uct_cm_config_read(). More...
 
ucs_status_t uct_iface_open (uct_md_h md, uct_worker_h worker, const uct_iface_params_t *params, const uct_iface_config_t *config, uct_iface_h *iface_p)
 Open a communication interface. More...
 
void uct_iface_close (uct_iface_h iface)
 Close and destroy an interface. More...
 
ucs_status_t uct_iface_query (uct_iface_h iface, uct_iface_attr_t *iface_attr)
 Get interface attributes. More...
 
ucs_status_t uct_iface_get_device_address (uct_iface_h iface, uct_device_addr_t *addr)
 Get address of the device the interface is using. More...
 
ucs_status_t uct_iface_get_address (uct_iface_h iface, uct_iface_addr_t *addr)
 Get interface address. More...
 
int uct_iface_is_reachable (const uct_iface_h iface, const uct_device_addr_t *dev_addr, const uct_iface_addr_t *iface_addr)
 Check if remote iface address is reachable. More...
 
ucs_status_t uct_ep_check (const uct_ep_h ep, unsigned flags, uct_completion_t *comp)
 check if the destination endpoint is alive in respect to UCT library More...
 
ucs_status_t uct_iface_event_fd_get (uct_iface_h iface, int *fd_p)
 Obtain a notification file descriptor for polling. More...
 
ucs_status_t uct_iface_event_arm (uct_iface_h iface, unsigned events)
 Turn on event notification for the next event. More...
 
ucs_status_t uct_iface_mem_alloc (uct_iface_h iface, size_t length, unsigned flags, const char *name, uct_allocated_memory_t *mem)
 Allocate memory which can be used for zero-copy communications. More...
 
void uct_iface_mem_free (const uct_allocated_memory_t *mem)
 Release memory allocated with uct_iface_mem_alloc(). More...
 
ucs_status_t uct_ep_create (const uct_ep_params_t *params, uct_ep_h *ep_p)
 Create new endpoint. More...
 
void uct_ep_destroy (uct_ep_h ep)
 Destroy an endpoint. More...
 
ucs_status_t uct_ep_get_address (uct_ep_h ep, uct_ep_addr_t *addr)
 Get endpoint address. More...
 
ucs_status_t uct_ep_connect_to_ep (uct_ep_h ep, const uct_device_addr_t *dev_addr, const uct_ep_addr_t *ep_addr)
 Connect endpoint to a remote endpoint. More...
 
ucs_status_t uct_iface_flush (uct_iface_h iface, unsigned flags, uct_completion_t *comp)
 Flush outstanding communication operations on an interface. More...
 
ucs_status_t uct_iface_fence (uct_iface_h iface, unsigned flags)
 Ensures ordering of outstanding communications on the interface. Operations issued on the interface prior to this call are guaranteed to be completed before any subsequent communication operations to the same interface which follow the call to fence. More...
 
ucs_status_t uct_ep_pending_add (uct_ep_h ep, uct_pending_req_t *req, unsigned flags)
 Add a pending request to an endpoint. More...
 
void uct_ep_pending_purge (uct_ep_h ep, uct_pending_purge_callback_t cb, void *arg)
 Remove all pending requests from an endpoint. More...
 
ucs_status_t uct_ep_flush (uct_ep_h ep, unsigned flags, uct_completion_t *comp)
 Flush outstanding communication operations on an endpoint. More...
 
ucs_status_t uct_ep_fence (uct_ep_h ep, unsigned flags)
 Ensures ordering of outstanding communications on the endpoint. Operations issued on the endpoint prior to this call are guaranteed to be completed before any subsequent communication operations to the same endpoint which follow the call to fence. More...
 
void uct_iface_progress_enable (uct_iface_h iface, unsigned flags)
 Enable synchronous progress for the interface. More...
 
void uct_iface_progress_disable (uct_iface_h iface, unsigned flags)
 Disable synchronous progress for the interface. More...
 
unsigned uct_iface_progress (uct_iface_h iface)
 Perform a progress on an interface. More...
 
static UCS_F_ALWAYS_INLINE void uct_completion_update_status (uct_completion_t *comp, ucs_status_t status)
 Update status of UCT completion handle. More...
 
+

Detailed Description

+

This section describes a concept of the Communication Resource and routines associated with the concept.

+

Data Structure Documentation

+ +
+
+ + + + +
struct uct_md_resource_desc
+
+

This structure describes a memory domain resource.

+
+ + + + +
Data Fields
+char +md_name[UCT_MD_NAME_MAX] +

Memory domain name

+
+ +
+
+ +
+
+ + + + +
struct uct_component_attr
+
+

This structure defines the attributes for UCT component. It is used for uct_component_query

+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_component_attr_field. Fields not specified in this mask will be ignored. Provides ABI compatibility with respect to adding new fields.

+
+char +name[UCT_COMPONENT_NAME_MAX] +

Component name

+
+unsigned +md_resource_count +

Number of memory-domain resources

+
+uct_md_resource_desc_t * +md_resources +

Array of memory domain resources. When used, it should be initialized prior to calling uct_component_query with a pointer to an array, which is large enough to hold all memory domain resource entries. After the call, this array will be filled with information about existing memory domain resources. In order to allocate this array, you can call uct_component_query twice: The first time would only obtain the amount of entries required, by specifying UCT_COMPONENT_ATTR_FIELD_MD_RESOURCE_COUNT in field_mask. Then the array could be allocated with the returned number of entries, and passed to a second call to uct_component_query, this time setting field_mask to UCT_COMPONENT_ATTR_FIELD_MD_RESOURCES.

+
+uint64_t +flags +

Flags as defined by UCT_COMPONENT_FLAG_xx.

+
+ +
+
+ +
+
+ + + + +
struct uct_tl_resource_desc
+
+

Resource descriptor is an object representing the network resource. Resource descriptor could represent a stand-alone communication resource such as an HCA port, network interface, or multiple resources such as multiple network interfaces or communication ports. It could also represent virtual communication resources that are defined over a single physical network interface.

+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + +
Data Fields
+char +tl_name[UCT_TL_NAME_MAX] +

Transport name

+
+char +dev_name[UCT_DEVICE_NAME_MAX] +

Hardware device name

+
+uct_device_type_t +dev_type +

The device represented by this resource (e.g. UCT_DEVICE_TYPE_NET for a network interface)

+
+ucs_sys_device_t +sys_device +

The identifier associated with the device bus_id as captured in ucs_sys_bus_id_t struct

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr
+
+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+struct uct_iface_attr +cap +

Interface capabilities

+
+size_t +device_addr_len +

Size of device address

+
+size_t +iface_addr_len +

Size of interface address

+
+size_t +ep_addr_len +

Size of endpoint address

+
+size_t +max_conn_priv +

Max size of the iface's private data. used for connection establishment with sockaddr

+
+struct sockaddr_storage +listen_sockaddr +

Sockaddr on which this iface is listening.

+
+double +overhead +

Message overhead, seconds

+
+uct_ppn_bandwidth_t +bandwidth +

Bandwidth model

+
+ucs_linear_func_t +latency +

Latency as function of number of active endpoints

+
+uint8_t +priority +

Priority of device

+
+size_t +max_num_eps +

Maximum number of endpoints

+
+unsigned +dev_num_paths +

How many network paths can be utilized on the device used by this interface for optimal performance. Endpoints that connect to the same remote address but use different paths can potentially achieve higher total bandwidth compared to using only a single endpoint.

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+cap +put +

Attributes for PUT operations

+
+cap +get +

Attributes for GET operations

+
+cap +am +

Attributes for AM operations

+
+cap +tag +

Attributes for TAG operations

+
+cap +atomic32 +
+cap +atomic64 +

Attributes for atomic operations

+
+uint64_t +flags +

Flags from UCT interface operations and capabilities

+
+uint64_t +event_flags +

Flags from UCT interface for asynchronous event capabilities

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.put
+
+
+ + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+size_t +max_short +

Maximal size for put_short

+
+size_t +max_bcopy +

Maximal size for put_bcopy

+
+size_t +min_zcopy +

Minimal size for put_zcopy (total of uct_iov_t::length of the iov parameter)

+
+size_t +max_zcopy +

Maximal size for put_zcopy (total of uct_iov_t::length of the iov parameter)

+
+size_t +opt_zcopy_align +

Optimal alignment for zero-copy buffer address

+
+size_t +align_mtu +

MTU used for alignment

+
+size_t +max_iov +

Maximal iovcnt parameter in uct_ep_put_zcopy

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.get
+
+
+ + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+size_t +max_short +

Maximal size for get_short

+
+size_t +max_bcopy +

Maximal size for get_bcopy

+
+size_t +min_zcopy +

Minimal size for get_zcopy (total of uct_iov_t::length of the iov parameter)

+
+size_t +max_zcopy +

Maximal size for get_zcopy (total of uct_iov_t::length of the iov parameter)

+
+size_t +opt_zcopy_align +

Optimal alignment for zero-copy buffer address

+
+size_t +align_mtu +

MTU used for alignment

+
+size_t +max_iov +

Maximal iovcnt parameter in uct_ep_get_zcopy

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.am
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+size_t +max_short +

Total maximum size (incl. the header)

+
+size_t +max_bcopy +

Total maximum size (incl. the header)

+
+size_t +min_zcopy +

Minimal size for am_zcopy (incl. the header and total of uct_iov_t::length of the iov parameter)

+
+size_t +max_zcopy +

Total max. size (incl. the header and total of uct_iov_t::length of the iov parameter)

+
+size_t +opt_zcopy_align +

Optimal alignment for zero-copy buffer address

+
+size_t +align_mtu +

MTU used for alignment

+
+size_t +max_hdr +

Max. header size for zcopy

+
+size_t +max_iov +

Maximal iovcnt parameter in uct_ep_am_zcopy

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.tag
+
+
+ + + + + + + + + + +
Data Fields
+tag +recv +
+tag +eager +

Attributes related to eager protocol

+
+tag +rndv +

Attributes related to rendezvous protocol

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.tag.recv
+
+
+ + + + + + + + + + + + + +
Data Fields
+size_t +min_recv +

Minimal allowed length of posted receive buffer

+
+size_t +max_zcopy +

Maximal allowed data length in uct_iface_tag_recv_zcopy

+
+size_t +max_iov +

Maximal iovcnt parameter in uct_iface_tag_recv_zcopy

+
+size_t +max_outstanding +

Maximal number of simultaneous receive operations

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.tag.eager
+
+
+ + + + + + + + + + + + + +
Data Fields
+size_t +max_short +

Maximal allowed data length in uct_ep_tag_eager_short

+
+size_t +max_bcopy +

Maximal allowed data length in uct_ep_tag_eager_bcopy

+
+size_t +max_zcopy +

Maximal allowed data length in uct_ep_tag_eager_zcopy

+
+size_t +max_iov +

Maximal iovcnt parameter in uct_ep_tag_eager_zcopy

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.tag.rndv
+
+
+ + + + + + + + + + +
Data Fields
+size_t +max_zcopy +

Maximal allowed data length in uct_ep_tag_rndv_zcopy

+
+size_t +max_hdr +

Maximal allowed header length in uct_ep_tag_rndv_zcopy and uct_ep_tag_rndv_request

+
+size_t +max_iov +

Maximal iovcnt parameter in uct_ep_tag_rndv_zcopy

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.atomic32
+
+
+ + + + + + + +
Data Fields
+uint64_t +op_flags +

Attributes for atomic-post operations

+
+uint64_t +fop_flags +

Attributes for atomic-fetch operations

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_attr.cap.atomic64
+
+
+ + + + + + + +
Data Fields
+uint64_t +op_flags +

Attributes for atomic-post operations

+
+uint64_t +fop_flags +

Attributes for atomic-fetch operations

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_params
+
+

This structure should be allocated by the user and should be passed to uct_iface_open. User has to initialize all fields of this structure.

+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_iface_params_field. Fields not specified in this mask will be ignored.

+
+ucs_cpu_set_t +cpu_mask +

Mask of CPUs to use for resources

+
+uint64_t +open_mode +

Interface open mode bitmap. uct_iface_open_mode

+
+union uct_iface_params +mode +

Mode-specific parameters

+
+ucs_stats_node_t * +stats_root +

Root in the statistics tree. Can be NULL. If non NULL, it will be a root of uct_iface object in the statistics tree.

+
+size_t +rx_headroom +

How much bytes to reserve before the receive segment.

+
+void * +err_handler_arg +

Custom argument of err_handler.

+
+uct_error_handler_t +err_handler +

The callback to handle transport level error.

+
+uint32_t +err_handler_flags +

Callback flags to indicate where the err_handler callback can be invoked from. uct_cb_flags

+
+void * +eager_arg +

These callbacks are only relevant for HW Tag Matching

+
+uct_tag_unexp_eager_cb_t +eager_cb +

Callback for tag matching unexpected eager messages

+
+void * +rndv_arg +
+uct_tag_unexp_rndv_cb_t +rndv_cb +

Callback for tag matching unexpected rndv messages

+
+void * +async_event_arg +
+uct_async_event_cb_t +async_event_cb +

Callback for asynchronous event handling. The callback will be invoked from UCT transport when there are new events to be read by user if the iface has UCT_IFACE_FLAG_EVENT_ASYNC_CB capability

+
+ucs_time_t +keepalive_interval +
+size_t +am_alignment +

Desired alignment for Active Messages on the receiver. Note that only data received in the UCT descriptor can be aligned (i.e. UCT_CB_PARAM_FLAG_DESC flag is provided in the Active Message handler callback). The provided value must be power of 2. The default value is 1.

+
+size_t +am_align_offset +

Offset in the Active Message receive buffer, which should be aligned to the am_alignment boundary. Note this parameter has no effect without setting am_alignment parameter. The provided value must be less than the given am_alignment value. The default value is 0.

+

+-+ pointer to data in uct_am_callback_t | | + alignment boundary | | v v +----------------—+ | align | | | offset | | +----------------—+

+
+uint64_t +features +

UCT features that are used for interface initialization.

+
+ +
+
+ +
+
+ + + + +
union uct_iface_params.mode
+
+

Mode-specific parameters

+
+ + + + + + + +
Data Fields
+mode +device +

The fields in this structure (tl_name and dev_name) need to be set only when the UCT_IFACE_OPEN_MODE_DEVICE bit is set in uct_iface_params_t::open_mode This will make uct_iface_open open the interface on the specified device.

+
+mode +sockaddr +

These callbacks and address are only relevant for client-server connection establishment with sockaddr and are needed on the server side. The callbacks and address need to be set when the UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER bit is set in uct_iface_params_t::open_mode. This will make uct_iface_open open the interface on the specified address as a server.

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_params.mode.device
+
+

The fields in this structure (tl_name and dev_name) need to be set only when the UCT_IFACE_OPEN_MODE_DEVICE bit is set in uct_iface_params_t::open_mode This will make uct_iface_open open the interface on the specified device.

+
+ + + + + + + +
Data Fields
+const char * +tl_name +

Transport name

+
+const char * +dev_name +

Device Name

+
+ +
+
+ +
+
+ + + + +
struct uct_iface_params.mode.sockaddr
+
+

These callbacks and address are only relevant for client-server connection establishment with sockaddr and are needed on the server side. The callbacks and address need to be set when the UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER bit is set in uct_iface_params_t::open_mode. This will make uct_iface_open open the interface on the specified address as a server.

+
+ + + + + + + + + + + + + +
Data Fields
+ucs_sock_addr_t +listen_sockaddr +
+void * +conn_request_arg +

Argument for connection request callback

+
+uct_sockaddr_conn_request_callback_t +conn_request_cb +

Callback for an incoming connection request on the server

+
+uint32_t +cb_flags +

Callback flags to indicate where the callback can be invoked from. uct_cb_flags

+
+ +
+
+ +
+
+ + + + +
struct uct_ep_params
+
+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Data Fields
+uint64_t +field_mask +

Mask of valid fields in this structure, using bits from uct_ep_params_field. Fields not specified by this mask will be ignored.

+
+uct_iface_h +iface +

Interface to create the endpoint on. Either iface or cm field must be initialized but not both.

+
+void * +user_data +

User data associated with the endpoint.

+
+const uct_device_addr_t * +dev_addr +

The device address to connect to on the remote peer. This must be defined together with uct_ep_params_t::iface_addr to create an endpoint connected to a remote interface.

+
+const uct_iface_addr_t * +iface_addr +

This specifies the remote address to use when creating an endpoint that is connected to a remote interface.

Note
This requires UCT_IFACE_FLAG_CONNECT_TO_IFACE capability.
+
+const ucs_sock_addr_t * +sockaddr +

The sockaddr to connect to on the remote peer. If set, uct_ep_create will create an endpoint for a connection to the remote peer, specified by its socket address.

Note
The interface in this routine requires the UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR capability.
+
+uint32_t +sockaddr_cb_flags +

uct_cb_flags to indicate uct_ep_params_t::sockaddr_pack_cb, uct_ep_params_t::sockaddr_cb_client, uct_ep_params_t::sockaddr_cb_server, uct_ep_params_t::disconnect_cb and uct_ep_params_t::cm_resolve_cb behavior. If none from these are not set, this field will be ignored.

+
+uct_cm_ep_priv_data_pack_callback_t +sockaddr_pack_cb +

Callback that will be used for filling the user's private data to be delivered to the remote peer by the callback on the server or client side. This field is only valid if uct_ep_params_t::sockaddr is set.

Note
It is never guaranteed that the callback will be called. If, for example, the endpoint goes into error state before issuing the connection request, the callback will not be invoked.
+
+Can not be set together with uct_ep_params_t::private_data or uct_ep_params_t::cm_resolve_cb.
+
+uct_cm_h +cm +

The connection manager object as created by uct_cm_open. Either cm or iface field must be initialized but not both.

+
+uct_conn_request_h +conn_request +

Connection request that was passed to uct_cm_listener_conn_request_args_t::conn_request.

Note
After a call to uct_ep_create, params.conn_request is consumed and should not be used anymore, even if the call returns with an error.
+
+uct_cm_ep_client_connect_callback_t +sockaddr_cb_client +

Callback that will be invoked when the endpoint on the client side is being connected to the server by a connection manager uct_cm_h .

+
+uct_cm_ep_server_conn_notify_callback_t +sockaddr_cb_server +

Callback that will be invoked when the endpoint on the server side is being connected to a client by a connection manager uct_cm_h .

+
+uct_ep_disconnect_cb_t +disconnect_cb +

Callback that will be invoked when the endpoint is disconnected.

+
+unsigned +path_index +

Index of the path which the endpoint should use, must be in the range 0..(uct_iface_attr_t::dev_num_paths - 1).

+
+uct_cm_ep_resolve_callback_t +cm_resolve_cb +

This callback is invoked when the remote server address provided in field uct_ep_params_t::sockaddr is resolved to the local device to be used for connection establishment.

Note
This field is mutually exclusive with uct_ep_params::sockaddr_pack_cb.
+
+const void * +private_data +

Private data to be passed from server to client. Can be used only along with uct_ep_params::conn_request.

Note
This field is mutually exclusive with uct_ep_params::sockaddr_pack_cb.
+
+size_t +private_data_length +

Length of uct_ep_params::private_data, the maximal allowed value is indicated by the uct_cm_attr::max_conn_priv.

+
+const ucs_sock_addr_t * +local_sockaddr +

The sockaddr to bind locally. If set, uct_ep_create will create an endpoint binding to this local sockaddr.

Note
The interface in this routine requires the UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR capability.
+
+ +
+
+ +
+
+ + + + +
struct uct_completion
+
+

This structure should be allocated by the user and can be passed to communication primitives. The user must initialize all fields of the structure. If the operation returns UCS_INPROGRESS, this structure will be in use by the transport until the operation completes. When the operation completes, "count" field is decremented by 1, and whenever it reaches 0 - the callback is called.

+

Notes:

    +
  • The same structure can be passed multiple times to communication functions without the need to wait for completion.
  • +
  • If the number of operations is smaller than the initial value of the counter, the callback will not be called at all, so it may be left undefined.
  • +
  • status field is required to track the first time the error occurred, and report it via a callback when count reaches 0.
  • +
+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + +
Data Fields
+uct_completion_callback_t +func +

User callback function

+
+int +count +

Completion counter

+
+ucs_status_t +status +

Completion status, this field must be initialized with UCS_OK before first operation is started.

+
+ +
+
+ +
+
+ + + + +
struct uct_pending_req
+
+

This structure should be passed to uct_ep_pending_add() and is used to signal new available resources back to user.

+
+ + + + + + + +
Data Fields
+uct_pending_callback_t +func +

User callback function

+
+char +priv[UCT_PENDING_REQ_PRIV_LEN] +

Used internally by UCT

+
+ +
+
+ +
+
+ + + + +
struct uct_iov
+
+

Specifies a list of buffers which can be used within a single data transfer function call.

+
 buffer
+ |
+ +-----------+-------+-----------+-------+-----------+
+ |  payload  | empty |  payload  | empty |  payload  |
+ +-----------+-------+-----------+-------+-----------+
+ |<-length-->|       |<-length-->|       |<-length-->|
+ |<---- stride ----->|<---- stride ----->|
+
Note
The sum of lengths in all iov list must be less or equal to max_zcopy of the respective communication operation.
+
+If length or count are zero, the memory pointed to by buffer will not be accessed. Otherwise, buffer must point to valid memory.
+
+If count is one, every iov entry specifies a single contiguous data block
+
+If count > 1, each iov entry specifies a strided block of count elements and distance of stride byte between consecutive elements
+
Examples:
uct_hello_world.c.
+
+ + + + + + + + + + + + + + + + +
Data Fields
+void * +buffer +

Data buffer

+
+size_t +length +

Length of the payload in bytes

+
+uct_mem_h +memh +

Local memory key descriptor for the data

+
+size_t +stride +

Stride between beginnings of payload elements in the buffer in bytes

+
+unsigned +count +

Number of payload elements in the buffer

+
+ +
+
+

Typedef Documentation

+ +
+
+ + + + +
typedef struct uct_md_resource_desc uct_md_resource_desc_t
+
+

This structure describes a memory domain resource.

+ +
+
+ +
+
+ + + + +
typedef struct uct_component_attr uct_component_attr_t
+
+

This structure defines the attributes for UCT component. It is used for uct_component_query

+ +
+
+ +
+
+ + + + +
typedef struct uct_tl_resource_desc uct_tl_resource_desc_t
+
+

Resource descriptor is an object representing the network resource. Resource descriptor could represent a stand-alone communication resource such as an HCA port, network interface, or multiple resources such as multiple network interfaces or communication ports. It could also represent virtual communication resources that are defined over a single physical network interface.

+ +
+
+ +
+
+ + + + +
typedef struct uct_component* uct_component_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_iface* uct_iface_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_iface_config uct_iface_config_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_md_config uct_md_config_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_cm_config uct_cm_config_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_ep* uct_ep_h
+
+ +
+
+ +
+
+ + + + +
typedef void* uct_mem_h
+
+ +
+
+ +
+
+ + + + +
typedef uintptr_t uct_rkey_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_md* uct_md_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_md_ops uct_md_ops_t
+
+ +
+
+ +
+
+ + + + +
typedef void* uct_rkey_ctx_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_iface_attr uct_iface_attr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_iface_params uct_iface_params_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_ep_attr uct_ep_attr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_md_attr uct_md_attr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_completion uct_completion_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_pending_req uct_pending_req_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_worker* uct_worker_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_md uct_md_t
+
+ +
+
+ +
+
+ + + + +
typedef enum uct_am_trace_type uct_am_trace_type_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_device_addr uct_device_addr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_iface_addr uct_iface_addr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_ep_addr uct_ep_addr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_ep_params uct_ep_params_t
+
+ +
+
+ +
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_cm_attr uct_cm_attr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_cm uct_cm_t
+
+ +
+
+ +
+
+ + + + +
typedef uct_cm_t* uct_cm_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_listener_attr uct_listener_attr_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_listener* uct_listener_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_listener_params uct_listener_params_t
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_tag_context uct_tag_context_t
+
+ +
+
+ +
+
+ + + + +
typedef uint64_t uct_tag_t
+
+ +
+
+ +
+
+ + + + +
typedef int uct_worker_cb_id_t
+
+ +
+
+ +
+
+ + + + +
typedef void* uct_conn_request_h
+
+ +
+
+ +
+
+ + + + +
typedef struct uct_iov uct_iov_t
+
+

Specifies a list of buffers which can be used within a single data transfer function call.

+
 buffer
+ |
+ +-----------+-------+-----------+-------+-----------+
+ |  payload  | empty |  payload  | empty |  payload  |
+ +-----------+-------+-----------+-------+-----------+
+ |<-length-->|       |<-length-->|       |<-length-->|
+ |<---- stride ----->|<---- stride ----->|
+
Note
The sum of lengths in all iov list must be less or equal to max_zcopy of the respective communication operation.
+
+If length or count are zero, the memory pointed to by buffer will not be accessed. Otherwise, buffer must point to valid memory.
+
+If count is one, every iov entry specifies a single contiguous data block
+
+If count > 1, each iov entry specifies a strided block of count elements and distance of stride byte between consecutive elements
+ +
+
+ +
+
+ + + + +
typedef void(* uct_completion_callback_t) (uct_completion_t *self)
+
+
Parameters
+ + +
[in]selfPointer to relevant completion structure, which was initially passed to the operation.
+
+
+ +
+
+ +
+
+ + + + +
typedef ucs_status_t(* uct_pending_callback_t) (uct_pending_req_t *self)
+
+
Parameters
+ + +
[in]selfPointer to relevant pending structure, which was initially passed to the operation.
+
+
+
Returns
UCS_OK - This pending request has completed and should be removed. UCS_INPROGRESS - Some progress was made, but not completed. Keep this request and keep processing the queue. Otherwise - Could not make any progress. Keep this pending request on the queue, and stop processing the queue.
+ +
+
+ +
+
+ + + + +
typedef ucs_status_t(* uct_error_handler_t) (void *arg, uct_ep_h ep, ucs_status_t status)
+
+
Note
User should purge a pending queue and do not post any TX operations and cancel all possible outstanding operations prior closing a UCT endpoint.
+
Parameters
+ + + + +
[in]argUser argument to be passed to the callback.
[in]epEndpoint which has failed. Upon return from the callback, this ep is no longer usable and all subsequent operations on this ep will fail with the error code passed in status.
[in]statusStatus indicating error.
+
+
+
Returns
UCS_OK - The error was handled successfully. Otherwise - The error was not handled and is returned back to the transport.
+ +
+
+ +
+
+ + + + +
typedef void(* uct_pending_purge_callback_t) (uct_pending_req_t *self, void *arg)
+
+
Parameters
+ + + +
[in]selfPointer to relevant pending structure, which was initially passed to the operation.
[in]argUser argument to be passed to the callback.
+
+
+ +
+
+ +
+
+ + + + +
typedef size_t(* uct_pack_callback_t) (void *dest, void *arg)
+
+
Parameters
+ + + +
[in]destMemory buffer to pack the data to.
[in]argCustom user-argument.
+
+
+
Returns
Size of the data was actually produced.
+ +
+
+ +
+
+ + + + +
typedef void(* uct_unpack_callback_t) (void *arg, const void *data, size_t length)
+
+
Parameters
+ + + + +
[in]argCustom user-argument.
[in]dataMemory buffer to unpack the data from.
[in]lengthHow much data to consume (size of "data")
+
+
+
Note
The arguments for this callback are in the same order as libc's memcpy().
+ +
+
+ +
+
+ + + + +
typedef void(* uct_async_event_cb_t) (void *arg, unsigned flags)
+
+
Parameters
+ + + +
[in]argUser argument to be passed to the callback.
[in]flagsFlags to be passed to the callback (reserved for future use).
+
+
+ +
+
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum uct_component_attr_field
+
+

The enumeration allows specifying which fields in uct_component_attr_t are present. It is used for backward compatibility support.

+ + + + + +
Enumerator
UCT_COMPONENT_ATTR_FIELD_NAME  +

Component name

+
UCT_COMPONENT_ATTR_FIELD_MD_RESOURCE_COUNT  +

MD resource count

+
UCT_COMPONENT_ATTR_FIELD_MD_RESOURCES  +

MD resources array

+
UCT_COMPONENT_ATTR_FIELD_FLAGS  +

Capability flags

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+

The enumeration defines bit mask of uct_component_h capabilities in uct_component_attr_t::flags which is set by uct_component_query.

+ + + +
Enumerator
UCT_COMPONENT_FLAG_CM  +

If set, the component supports uct_cm_h functionality. See uct_cm_open for details.

+
UCT_COMPONENT_FLAG_RKEY_PTR  +

If set, the component supports direct access to remote memory using a local pointer returned from uct_rkey_ptr function.

+
+ +
+
+ +
+
+ + + + +
enum uct_device_type_t
+
+ + + + + + +
Enumerator
UCT_DEVICE_TYPE_NET  +

Network devices

+
UCT_DEVICE_TYPE_SHM  +

Shared memory devices

+
UCT_DEVICE_TYPE_ACC  +

Acceleration devices

+
UCT_DEVICE_TYPE_SELF  +

Loop-back device

+
UCT_DEVICE_TYPE_LAST  +
+ +
+
+ +
+
+ + + + +
enum uct_iface_event_types
+
+
Note
The UCT_EVENT_RECV and UCT_EVENT_RECV_SIG event types are used to indicate receive-side completions for both tag matching and active messages. If the interface supports signaled receives (UCT_IFACE_FLAG_EVENT_RECV_SIG), then for the messages sent with UCT_SEND_FLAG_SIGNALED flag, UCT_EVENT_RECV_SIG should be triggered on the receiver. Otherwise, UCT_EVENT_RECV should be triggered.
+ + + + +
Enumerator
UCT_EVENT_SEND_COMP  +

Send completion event

+
UCT_EVENT_RECV  +

Tag or active message received

+
UCT_EVENT_RECV_SIG  +

Signaled tag or active message received

+
+ +
+
+ +
+
+ + + + +
enum uct_flush_flags
+
+ + + + +
Enumerator
UCT_FLUSH_FLAG_LOCAL  +

Guarantees that the data transfer is completed but the target buffer may not be updated yet.

+
UCT_FLUSH_FLAG_CANCEL  +

The library will make a best effort attempt to cancel all uncompleted operations. However, there is a chance that some operations will not be canceled in which case the user will need to handle their completions through the relevant callbacks. After uct_ep_flush with this flag is completed, the endpoint will be set to error state, and it becomes unusable for send operations and should be destroyed.

+
UCT_FLUSH_FLAG_REMOTE  +

Guarantees that all previous UCP memory update operations (put, atomics, etc.) are completed, the target memory of these operation was updated, and the updated memory is globally visible for all processing elements in the system.

+
+ +
+
+ +
+
+ + + + +
enum uct_progress_types
+
+ + + + +
Enumerator
UCT_PROGRESS_SEND  +

Progress send operations

+
UCT_PROGRESS_RECV  +

Progress receive operations

+
UCT_PROGRESS_THREAD_SAFE  +

Enable/disable progress while another thread may be calling ucp_worker_progress().

+
+ +
+
+ +
+
+ + + + +
enum uct_cb_flags
+
+

List of flags for a callback.

+ + + +
Enumerator
UCT_CB_FLAG_RESERVED  +

Reserved for future use.

+
UCT_CB_FLAG_ASYNC  +

Callback is allowed to be called from any thread in the process, and therefore should be thread-safe. For example, it may be called from a transport async progress thread. To guarantee async invocation, the interface must have the UCT_IFACE_FLAG_CB_ASYNC flag set. If async callback is requested on an interface which only supports sync callback (i.e., only the UCT_IFACE_FLAG_CB_SYNC flag is set), the callback will be invoked only from the context that called uct_iface_progress).

+
+ +
+
+ +
+
+ + + + +
enum uct_iface_open_mode
+
+ + + + +
Enumerator
UCT_IFACE_OPEN_MODE_DEVICE  +

Interface is opened on a specific device

+
UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER  +

Interface is opened on a specific address on the server side. This mode will be deprecated in the near future for a better API.

+
UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT  +

Interface is opened on a specific address on the client side This mode will be deprecated in the near future for a better API.

+
+ +
+
+ +
+
+ + + + +
enum uct_iface_params_field
+
+

The enumeration allows specifying which fields in uct_iface_params_t are present, for backward compatibility support.

+ + + + + + + + + + + + + + + + + + + + +
Enumerator
UCT_IFACE_PARAM_FIELD_CPU_MASK  +

Enables uct_iface_params_t::cpu_mask

+
UCT_IFACE_PARAM_FIELD_OPEN_MODE  +

Enables uct_iface_params_t::open_mode

+
UCT_IFACE_PARAM_FIELD_DEVICE  +

Enables uct_iface_params_t::mode::device

+
UCT_IFACE_PARAM_FIELD_SOCKADDR  +

Enables uct_iface_params_t::mode::sockaddr

+
UCT_IFACE_PARAM_FIELD_STATS_ROOT  +

Enables uct_iface_params_t::stats_root

+
UCT_IFACE_PARAM_FIELD_RX_HEADROOM  +

Enables uct_iface_params_t::rx_headroom

+
UCT_IFACE_PARAM_FIELD_ERR_HANDLER_ARG  +

Enables uct_iface_params_t::err_handler_arg

+
UCT_IFACE_PARAM_FIELD_ERR_HANDLER  +

Enables uct_iface_params_t::err_handler

+
UCT_IFACE_PARAM_FIELD_ERR_HANDLER_FLAGS  +

Enables uct_iface_params_t::err_handler_flags

+
UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_ARG  +

Enables uct_iface_params_t::eager_arg

+
UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_CB  +

Enables uct_iface_params_t::eager_cb

+
UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_ARG  +

Enables uct_iface_params_t::rndv_arg

+
UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_CB  +

Enables uct_iface_params_t::rndv_cb

+
UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_ARG  +

Enables uct_iface_params_t::async_event_arg

+
UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_CB  +

Enables uct_iface_params_t::async_event_cb

+
UCT_IFACE_PARAM_FIELD_KEEPALIVE_INTERVAL  +

Enables uct_iface_params_t::keepalive_interval

+
UCT_IFACE_PARAM_FIELD_AM_ALIGNMENT  +

Enables uct_iface_params_t::am_alignment

+
UCT_IFACE_PARAM_FIELD_AM_ALIGN_OFFSET  +

Enables uct_iface_params_t::am_align_offset

+
UCT_IFACE_PARAM_FIELD_FEATURES  +

Enables uct_iface_params_t::features

+
+ +
+
+ +
+
+ + + + +
enum uct_ep_params_field
+
+

The enumeration allows specifying which fields in uct_ep_params_t are present, for backward compatibility support.

+ + + + + + + + + + + + + + + + + + +
Enumerator
UCT_EP_PARAM_FIELD_IFACE  +

Enables uct_ep_params::iface

+
UCT_EP_PARAM_FIELD_USER_DATA  +

Enables uct_ep_params::user_data

+
UCT_EP_PARAM_FIELD_DEV_ADDR  +

Enables uct_ep_params::dev_addr

+
UCT_EP_PARAM_FIELD_IFACE_ADDR  +

Enables uct_ep_params::iface_addr

+
UCT_EP_PARAM_FIELD_SOCKADDR  +

Enables uct_ep_params::sockaddr

+
UCT_EP_PARAM_FIELD_SOCKADDR_CB_FLAGS  +

Enables uct_ep_params::sockaddr_cb_flags

+
UCT_EP_PARAM_FIELD_SOCKADDR_PACK_CB  +

Enables uct_ep_params::sockaddr_pack_cb

+
UCT_EP_PARAM_FIELD_CM  +

Enables uct_ep_params::cm

+
UCT_EP_PARAM_FIELD_CONN_REQUEST  +

Enables uct_ep_params::conn_request

+
UCT_EP_PARAM_FIELD_SOCKADDR_CONNECT_CB_CLIENT  +

Enables uct_ep_params::sockaddr_cb_client

+
UCT_EP_PARAM_FIELD_SOCKADDR_NOTIFY_CB_SERVER  +

Enables uct_ep_params::sockaddr_cb_server

+
UCT_EP_PARAM_FIELD_SOCKADDR_DISCONNECT_CB  +

Enables uct_ep_params::disconnect_cb

+
UCT_EP_PARAM_FIELD_PATH_INDEX  +

Enables uct_ep_params::path_index

+
UCT_EP_PARAM_FIELD_CM_RESOLVE_CB  +

Enables uct_ep_params::cm_resolve_cb

+
UCT_EP_PARAM_FIELD_PRIV_DATA  +

Enables uct_ep_params::private_data

+
UCT_EP_PARAM_FIELD_PRIV_DATA_LENGTH  +

Enables uct_ep_params::private_data_length

+
UCT_EP_PARAM_FIELD_LOCAL_SOCKADDR  +

Enables uct_ep_params::local_sockaddr

+
+ +
+
+ +
+
+ + + + +
enum uct_iface_feature
+
+

The enumeration list describes the features supported by UCT. An application can request the features using UCT parameters during UCT iface initialization process.

+ + + + + + + + + +
Enumerator
UCT_IFACE_FEATURE_AM  +

Request Active Message support

+
UCT_IFACE_FEATURE_PUT  +

Request PUT support

+
UCT_IFACE_FEATURE_GET  +

Request GET support

+
UCT_IFACE_FEATURE_AMO32  +

Request 32-bit atomic operations support

+
UCT_IFACE_FEATURE_AMO64  +

Request 64-bit atomic operations support

+
UCT_IFACE_FEATURE_TAG  +

Request tag matching offload support

+
UCT_IFACE_FEATURE_FLUSH_REMOTE  +

Request remote flush support

+
UCT_IFACE_FEATURE_LAST  +

Used to determine the number of features

+
+ +
+
+ +
+
+ + + + +
anonymous enum
+
+ + +
Enumerator
UCT_TAG_RECV_CB_INLINE_DATA  +
+ +
+
+ +
+
+ + + + +
enum uct_cb_param_flags
+
+

If UCT_CB_PARAM_FLAG_DESC flag is enabled, then data is part of a descriptor which includes the user-defined rx_headroom, and the callback may return UCS_INPROGRESS and hold on to that descriptor. Otherwise, the data can't be used outside the callback. If needed, the data must be copied-out.

+
 descriptor    data
+ |             |
+ +-------------+-------------------------+
+ | rx_headroom | payload                 |
+ +-------------+-------------------------+
+

UCT_CB_PARAM_FLAG_FIRST and UCT_CB_PARAM_FLAG_MORE flags are relevant for uct_tag_unexp_eager_cb_t callback only. The former value indicates that the data is the first fragment of the message. The latter value means that more fragments of the message yet to be delivered.

+ + + + +
Enumerator
UCT_CB_PARAM_FLAG_DESC  +
UCT_CB_PARAM_FLAG_FIRST  +
UCT_CB_PARAM_FLAG_MORE  +
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_query_components (uct_component_h ** components_p,
unsigned * num_components_p 
)
+
+

Obtain the list of transport components available on the current system.

+
Parameters
+ + + +
[out]components_pFilled with a pointer to an array of component handles.
[out]num_components_pFilled with the number of elements in the array.
+
+
+
Returns
UCS_OK if successful, or UCS_ERR_NO_MEMORY if failed to allocate the array of component handles.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_release_component_list (uct_component_hcomponents)
+
+

This routine releases the memory associated with the list of components allocated by uct_query_components.

+
Parameters
+ + +
[in]componentsArray of component handles to release.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_component_query (uct_component_h component,
uct_component_attr_tcomponent_attr 
)
+
+

Query various attributes of a component.

+
Parameters
+ + + +
[in]componentComponent handle to query attributes for. The handle can be obtained from uct_query_components.
[in,out]component_attrFilled with component attributes.
+
+
+
Returns
UCS_OK if successful, or nonzero error code in case of failure.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_open (uct_component_h component,
const char * md_name,
const uct_md_config_tconfig,
uct_md_hmd_p 
)
+
+

Open a specific memory domain. All communications and memory operations are performed in the context of a specific memory domain. Therefore it must be created before communication resources.

+
Parameters
+ + + + + +
[in]componentComponent on which to open the memory domain, as returned from uct_query_components.
[in]md_nameMemory domain name, as returned from uct_component_query.
[in]configMD configuration options. Should be obtained from uct_md_config_read() function, or point to MD-specific structure which extends uct_md_config_t.
[out]md_pFilled with a handle to the memory domain.
+
+
+
Returns
Error code.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_md_close (uct_md_h md)
+
+
Parameters
+ + +
[in]mdMemory domain to close.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_query_tl_resources (uct_md_h md,
uct_tl_resource_desc_t ** resources_p,
unsigned * num_resources_p 
)
+
+

This routine queries the memory domain for communication resources that are available for it.

+
Parameters
+ + + + +
[in]mdHandle to memory domain.
[out]resources_pFilled with a pointer to an array of resource descriptors.
[out]num_resources_pFilled with the number of resources in the array.
+
+
+
Returns
Error code.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_release_tl_resource_list (uct_tl_resource_desc_tresources)
+
+

This routine releases the memory associated with the list of resources allocated by uct_md_query_tl_resources.

+
Parameters
+ + +
[in]resourcesArray of resource descriptors to release.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_md_iface_config_read (uct_md_h md,
const char * tl_name,
const char * env_prefix,
const char * filename,
uct_iface_config_t ** config_p 
)
+
+
Parameters
+ + + + + + +
[in]mdMemory domain on which the transport's interface was registered.
[in]tl_nameTransport name. If md supports UCT_MD_FLAG_SOCKADDR, the transport name is allowed to be NULL. In this case, the configuration returned from this routine should be passed to uct_iface_open with UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER or UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT set in uct_iface_params_t::open_mode. In addition, if tl_name is not NULL, the configuration returned from this routine should be passed to uct_iface_open with UCT_IFACE_OPEN_MODE_DEVICE set in uct_iface_params_t::open_mode.
[in]env_prefixIf non-NULL, search for environment variables starting with this UCT_<prefix>_. Otherwise, search for environment variables starting with just UCT_.
[in]filenameIf non-NULL, read configuration from this file. If the file does not exist, it will be ignored.
[out]config_pFilled with a pointer to configuration.
+
+
+
Returns
Error code.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_config_release (void * config)
+
+
Parameters
+ + +
[in]configConfiguration to release.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_open (uct_md_h md,
uct_worker_h worker,
const uct_iface_params_tparams,
const uct_iface_config_tconfig,
uct_iface_hiface_p 
)
+
+
Parameters
+ + + + + + +
[in]mdMemory domain to create the interface on.
[in]workerHandle to worker which will be used to progress communications on this interface.
[in]paramsUser defined uct_iface_params_t parameters.
[in]configInterface configuration options. Should be obtained from uct_md_iface_config_read() function, or point to transport-specific structure which extends uct_iface_config_t.
[out]iface_pFilled with a handle to opened communication interface.
+
+
+
Returns
Error code.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_iface_close (uct_iface_h iface)
+
+
Parameters
+ + +
[in]ifaceInterface to close.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_query (uct_iface_h iface,
uct_iface_attr_tiface_attr 
)
+
+
Parameters
+ + + +
[in]ifaceInterface to query.
[out]iface_attrFilled with interface attributes.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_get_device_address (uct_iface_h iface,
uct_device_addr_taddr 
)
+
+

Get underlying device address of the interface. All interfaces using the same device would return the same address.

+
Parameters
+ + + +
[in]ifaceInterface to query.
[out]addrFilled with device address. The size of the buffer provided must be at least uct_iface_attr_t::device_addr_len.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_get_address (uct_iface_h iface,
uct_iface_addr_taddr 
)
+
+

requires UCT_IFACE_FLAG_CONNECT_TO_IFACE.

+
Parameters
+ + + +
[in]ifaceInterface to query.
[out]addrFilled with interface address. The size of the buffer provided must be at least uct_iface_attr_t::iface_addr_len.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int uct_iface_is_reachable (const uct_iface_h iface,
const uct_device_addr_tdev_addr,
const uct_iface_addr_tiface_addr 
)
+
+

This function checks if a remote address can be reached from a local interface. If the function returns true, it does not necessarily mean a connection and/or data transfer would succeed, since the reachability check is a local operation it does not detect issues such as network mis-configuration or lack of connectivity.

+
Parameters
+ + + + +
[in]ifaceInterface to check reachability from.
[in]dev_addrDevice address to check reachability to. It is NULL if iface_attr.dev_addr_len == 0, and must be non-NULL otherwise.
[in]iface_addrInterface address to check reachability to. It is NULL if iface_attr.iface_addr_len == 0, and must be non-NULL otherwise.
+
+
+
Returns
Nonzero if reachable, 0 if not.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_check (const uct_ep_h ep,
unsigned flags,
uct_completion_tcomp 
)
+
+

This function checks if the destination endpoint is alive with respect to the UCT library. If the status of ep is known, either UCS_OK or an error is returned immediately. Otherwise, UCS_INPROGRESS is returned, indicating that synchronization on the status is needed. In this case, the status will be be propagated by comp callback.

+
Parameters
+ + + + +
[in]epEndpoint to check
[in]flagsFlags that define level of check (currently unsupported - set to 0).
[in]compHandler to process status of ep
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_event_fd_get (uct_iface_h iface,
int * fd_p 
)
+
+

Only interfaces that support at least one of the UCT_IFACE_FLAG_EVENT* flags will implement this function.

+
Parameters
+ + + +
[in]ifaceInterface to get the notification descriptor.
[out]fd_pLocation to write the notification file descriptor.
+
+
+
Returns
Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_event_arm (uct_iface_h iface,
unsigned events 
)
+
+

This routine needs to be called before waiting on each notification on this interface, so will typically be called once the processing of the previous event is over.

+
Parameters
+ + + +
[in]ifaceInterface to arm.
[in]eventsEvents to wakeup on. See uct_iface_event_types
+
+
+
Returns
UCS_OK The operation completed successfully. File descriptor will be signaled by new events.
+
+UCS_ERR_BUSY There are unprocessed events which prevent the file descriptor from being armed. The operation is not completed. File descriptor will not be signaled by new events.
+
+Other different error codes in case of issues.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_mem_alloc (uct_iface_h iface,
size_t length,
unsigned flags,
const char * name,
uct_allocated_memory_tmem 
)
+
+

Allocate a region of memory which can be used for zero-copy data transfer or remote access on a particular transport interface.

+
Parameters
+ + + + + + +
[in]ifaceInterface to allocate memory on.
[in]lengthSize of memory region to allocate.
[in]flagsMemory allocation flags, see uct_md_mem_flags.
[in]nameAllocation name, for debug purposes.
[out]memDescriptor of allocated memory.
+
+
+
Returns
UCS_OK if allocation was successful, error code otherwise.
+ +
+
+ +
+
+ + + + + + + + +
void uct_iface_mem_free (const uct_allocated_memory_tmem)
+
+
Parameters
+ + +
[in]memDescriptor of memory to release.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_create (const uct_ep_params_tparams,
uct_ep_hep_p 
)
+
+

Create a UCT endpoint in one of the available modes:

    +
  1. Unconnected endpoint: If no any address is present in uct_ep_params, this creates an unconnected endpoint. To establish a connection to a remote endpoint, uct_ep_connect_to_ep will need to be called. Use of this mode requires uct_ep_params_t::iface has the UCT_IFACE_FLAG_CONNECT_TO_EP capability flag. It may be obtained by uct_iface_query .
  2. +
  3. Connect to a remote interface: If uct_ep_params_t::dev_addr and uct_ep_params_t::iface_addr are set, this will establish an endpoint that is connected to a remote interface. This requires that uct_ep_params_t::iface has the UCT_IFACE_FLAG_CONNECT_TO_IFACE capability flag. It may be obtained by uct_iface_query.
  4. +
  5. Connect to a remote socket address: If uct_ep_params_t::sockaddr is set, this will create an endpoint that is connected to a remote socket. This requires that either uct_ep_params::cm, or uct_ep_params::iface will be set. In the latter case, the interface has to support UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR flag, which can be checked by calling uct_iface_query.
    Parameters
    + + + +
    [in]paramsUser defined uct_ep_params_t configuration for the ep_p.
    [out]ep_pFilled with handle to the new endpoint.
    +
    +
    +
    Returns
    UCS_OK The endpoint is created successfully. This does not guarantee that the endpoint has been connected to the destination defined in params; in case of failure, the error will be reported to the interface error handler callback provided to uct_iface_open via uct_iface_params_t::err_handler.
    +
    +Error code as defined by ucs_status_t
    +
  6. +
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + +
void uct_ep_destroy (uct_ep_h ep)
+
+
Parameters
+ + +
[in]epEndpoint to destroy.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_get_address (uct_ep_h ep,
uct_ep_addr_taddr 
)
+
+
Parameters
+ + + +
[in]epEndpoint to query.
[out]addrFilled with endpoint address. The size of the buffer provided must be at least uct_iface_attr_t::ep_addr_len.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_connect_to_ep (uct_ep_h ep,
const uct_device_addr_tdev_addr,
const uct_ep_addr_tep_addr 
)
+
+

requires UCT_IFACE_FLAG_CONNECT_TO_EP capability.

+
Parameters
+ + + + +
[in]epEndpoint to connect.
[in]dev_addrRemote device address.
[in]ep_addrRemote endpoint address.
+
+
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_flush (uct_iface_h iface,
unsigned flags,
uct_completion_tcomp 
)
+
+

Flushes all outstanding communications issued on the interface prior to this call. The operations are completed at the origin or at the target as well. The exact completion semantic depends on flags parameter.

+
Note
Currently only one completion type is supported. It guarantees that the data transfer is completed but the target buffer may not be updated yet.
+
Parameters
+ + + + +
[in]ifaceInterface to flush communications from.
[in]flagsFlags that control completion semantic (currently only UCT_FLUSH_FLAG_LOCAL is supported).
[in,out]compCompletion handle as defined by uct_completion_t. Can be NULL, which means that the call will return the current state of the interface and no completion will be generated in case of outstanding communications. If it is not NULL completion counter is decremented by 1 when the call completes. Completion callback is called when the counter reaches 0.
+
+
+
Returns
UCS_OK - No outstanding communications left. UCS_INPROGRESS - Some communication operations are still in progress. If non-NULL 'comp' is provided, it will be updated upon completion of these operations.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_fence (uct_iface_h iface,
unsigned flags 
)
+
+
Parameters
+ + + +
[in]ifaceInterface to issue communications from.
[in]flagsFlags that control ordering semantic (currently unsupported - set to 0).
+
+
+
Returns
UCS_OK - Ordering is inserted.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_pending_add (uct_ep_h ep,
uct_pending_req_treq,
unsigned flags 
)
+
+

Add a pending request to the endpoint pending queue. The request will be dispatched when the endpoint could potentially have additional send resources.

+
Parameters
+ + + + +
[in]epEndpoint to add the pending request to.
[in]reqPending request, which would be dispatched when more resources become available. The user is expected to initialize the "func" field. After being passed to the function, the request is owned by UCT, until the callback is called and returns UCS_OK.
[in]flagsFlags that control pending request processing (see uct_cb_flags)
+
+
+
Returns
UCS_OK - request added to pending queue UCS_ERR_BUSY - request was not added to pending queue, because send resources are available now. The user is advised to retry.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void uct_ep_pending_purge (uct_ep_h ep,
uct_pending_purge_callback_t cb,
void * arg 
)
+
+

Remove pending requests from the given endpoint and pass them to the provided callback function. The callback return value is ignored.

+
Parameters
+ + + + +
[in]epEndpoint to remove pending requests from.
[in]cbCallback to pass the removed requests to.
[in]argArgument to pass to the cb callback.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_flush (uct_ep_h ep,
unsigned flags,
uct_completion_tcomp 
)
+
+

Flushes all outstanding communications issued on the endpoint prior to this call. The operations are completed at the origin or at the target as well. The exact completion semantic depends on flags parameter.

+
Parameters
+ + + + +
[in]epEndpoint to flush communications from.
[in]flagsFlags uct_flush_flags that control completion semantic.
[in,out]compCompletion handle as defined by uct_completion_t. Can be NULL, which means that the call will return the current state of the endpoint and no completion will be generated in case of outstanding communications. If it is not NULL completion counter is decremented by 1 when the call completes. Completion callback is called when the counter reaches 0.
+
+
+
Returns
UCS_OK - No outstanding communications left. UCS_ERR_NO_RESOURCE - Flush operation could not be initiated. A subsequent call to uct_ep_pending_add would add a pending operation, which provides an opportunity to retry the flush. UCS_INPROGRESS - Some communication operations are still in progress. If non-NULL 'comp' is provided, it will be updated upon completion of these operations.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_fence (uct_ep_h ep,
unsigned flags 
)
+
+
Parameters
+ + + +
[in]epEndpoint to issue communications from.
[in]flagsFlags that control ordering semantic (currently unsupported - set to 0).
+
+
+
Returns
UCS_OK - Ordering is inserted.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void uct_iface_progress_enable (uct_iface_h iface,
unsigned flags 
)
+
+

Notify the transport that it should actively progress communications during uct_worker_progress().

+

When the interface is created, its progress is initially disabled.

+
Parameters
+ + + +
[in]ifaceThe interface to enable progress.
[in]flagsThe type of progress to enable as defined by uct_progress_types
+
+
+
Note
This function is not thread safe with respect to ucp_worker_progress(), unless the flag UCT_PROGRESS_THREAD_SAFE is specified.
+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void uct_iface_progress_disable (uct_iface_h iface,
unsigned flags 
)
+
+

Notify the transport that it should not progress its communications during uct_worker_progress(). Thus the latency of other transports may be improved.

+

By default, progress is disabled when the interface is created.

+
Parameters
+ + + +
[in]ifaceThe interface to disable progress.
[in]flagsThe type of progress to disable as defined by uct_progress_types.
+
+
+
Note
This function is not thread safe with respect to ucp_worker_progress(), unless the flag UCT_PROGRESS_THREAD_SAFE is specified.
+ +
+
+ +
+
+ + + + + + + + +
unsigned uct_iface_progress (uct_iface_h iface)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static UCS_F_ALWAYS_INLINE void uct_completion_update_status (uct_completion_tcomp,
ucs_status_t status 
)
+
+static
+
+
Parameters
+ + + +
comp[in] Completion handle to update.
status[in] Status to update comp handle.
+
+
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e.js new file mode 100644 index 00000000000..f38fb964d70 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e.js @@ -0,0 +1,349 @@ +var group___u_c_t___r_e_s_o_u_r_c_e = +[ + [ "UCT interface operations and capabilities", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p" ], + [ "UCT interface for asynchronous event capabilities", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p" ], + [ "uct_md_resource_desc", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__md__resource__desc", [ + [ "md_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a44245b18bf7151a4bde8cb4c0112f8cb", null ] + ] ], + [ "uct_component_attr", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__component__attr", [ + [ "field_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad95df67b474d3f51629e0a6d0ee2537e", null ], + [ "name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4d186d55814dbe82c4403564d38d084e", null ], + [ "md_resource_count", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4add45e93acd44e434624726caaf9efb", null ], + [ "md_resources", "group___u_c_t___r_e_s_o_u_r_c_e.html#a75c51f7e16d827cc4c848016f5365404", null ], + [ "flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad2800e9666be0be84926f768eac792a2", null ] + ] ], + [ "uct_tl_resource_desc", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__tl__resource__desc", [ + [ "tl_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a97eefc21494ace8e0ca2598eb8085001", null ], + [ "dev_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a19260a4faff281f45363008cbcaa0f41", null ], + [ "dev_type", "group___u_c_t___r_e_s_o_u_r_c_e.html#a83b6513b96f2a97a82dcd3ab751c996a", null ], + [ "sys_device", "group___u_c_t___r_e_s_o_u_r_c_e.html#a1e3ce2607f86f8faf1eacf0b91636e27", null ] + ] ], + [ "uct_iface_attr", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr", [ + [ "cap", "group___u_c_t___r_e_s_o_u_r_c_e.html#aff010f596f41cdceae41e6c46652e1ca", null ], + [ "device_addr_len", "group___u_c_t___r_e_s_o_u_r_c_e.html#a150fb2fb81e47e2a97571147cdc1647e", null ], + [ "iface_addr_len", "group___u_c_t___r_e_s_o_u_r_c_e.html#adaeded4e728f80628ff6d29eeae7a5b0", null ], + [ "ep_addr_len", "group___u_c_t___r_e_s_o_u_r_c_e.html#a70955f4d39111b0a48c85e0ff65768a0", null ], + [ "max_conn_priv", "group___u_c_t___r_e_s_o_u_r_c_e.html#a5612c3ad1e7a46dd6add669e32364424", null ], + [ "listen_sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3a5bb921af4157bc96d39aa580ff978f", null ], + [ "overhead", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab802bc3cc95cc67e176efeb2fe1c14c4", null ], + [ "bandwidth", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6a9bab4b671c0d0da959c98a4b3ab7ac", null ], + [ "latency", "group___u_c_t___r_e_s_o_u_r_c_e.html#ace9cf2c31674223b000dff0e72c5d533", null ], + [ "priority", "group___u_c_t___r_e_s_o_u_r_c_e.html#a97534f4af50032a82c02b76bdb47a96d", null ], + [ "max_num_eps", "group___u_c_t___r_e_s_o_u_r_c_e.html#af6baead12f87707af1b3e56024b2b2e5", null ], + [ "dev_num_paths", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac9c279de0e13a96a683baf04d3c40c46", null ] + ] ], + [ "uct_iface_attr.cap", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap", [ + [ "put", "group___u_c_t___r_e_s_o_u_r_c_e.html#a8e13ffc9fd9d6a6761231a764bdf106b", null ], + [ "get", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab5eda0a74558a342cf659187f06f746f", null ], + [ "am", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac04cd38aeb30f3ad1f8ab4e64a0ded7b", null ], + [ "tag", "group___u_c_t___r_e_s_o_u_r_c_e.html#ae4d23e841d8e8804190027bce3180fa5", null ], + [ "atomic32", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab6ef684feef10177fc3c31b012c575a2", null ], + [ "atomic64", "group___u_c_t___r_e_s_o_u_r_c_e.html#a1dd9655cfd97613a0a996060a998b0d4", null ], + [ "flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4e5868d676cb634aa75b125a0f741abf", null ], + [ "event_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#af1b7cb88db5bf93bba7cbcaa503cbd6c", null ] + ] ], + [ "uct_iface_attr.cap.put", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8put", [ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "min_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a57d02deb57ae536cf84940eff69270c0", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "opt_zcopy_align", "group___u_c_t___r_e_s_o_u_r_c_e.html#a130833876f7297c8711797fa51471539", null ], + [ "align_mtu", "group___u_c_t___r_e_s_o_u_r_c_e.html#a46a9c80802ec1ec433bbc251f69a8fdf", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] + ] ], + [ "uct_iface_attr.cap.get", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8get", [ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "min_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a57d02deb57ae536cf84940eff69270c0", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "opt_zcopy_align", "group___u_c_t___r_e_s_o_u_r_c_e.html#a130833876f7297c8711797fa51471539", null ], + [ "align_mtu", "group___u_c_t___r_e_s_o_u_r_c_e.html#a46a9c80802ec1ec433bbc251f69a8fdf", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] + ] ], + [ "uct_iface_attr.cap.am", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8am", [ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "min_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a57d02deb57ae536cf84940eff69270c0", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "opt_zcopy_align", "group___u_c_t___r_e_s_o_u_r_c_e.html#a130833876f7297c8711797fa51471539", null ], + [ "align_mtu", "group___u_c_t___r_e_s_o_u_r_c_e.html#a46a9c80802ec1ec433bbc251f69a8fdf", null ], + [ "max_hdr", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa84fcfd6201c2b55787abdea4b1e6f34", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] + ] ], + [ "uct_iface_attr.cap.tag", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag", [ + [ "recv", "group___u_c_t___r_e_s_o_u_r_c_e.html#af701fee85540b78d08cb276d14953d58", null ], + [ "eager", "group___u_c_t___r_e_s_o_u_r_c_e.html#a5b154520a22cb4ca5f8505fb0525abe6", null ], + [ "rndv", "group___u_c_t___r_e_s_o_u_r_c_e.html#acdccd5548d60bc2d32ec34d59ecce438", null ] + ] ], + [ "uct_iface_attr.cap.tag.recv", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8recv", [ + [ "min_recv", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac973fbf126e5918d28ed7f81ad886553", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ], + [ "max_outstanding", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab96937da3ef792334de90211006268f7", null ] + ] ], + [ "uct_iface_attr.cap.tag.eager", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8eager", [ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] + ] ], + [ "uct_iface_attr.cap.tag.rndv", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8rndv", [ + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "max_hdr", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa84fcfd6201c2b55787abdea4b1e6f34", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] + ] ], + [ "uct_iface_attr.cap.atomic32", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic32", [ + [ "op_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9ac9ba98d74fd850d331d3298212833e", null ], + [ "fop_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a564c7d941f5f339c0ed63712bdf96b29", null ] + ] ], + [ "uct_iface_attr.cap.atomic64", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic64", [ + [ "op_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9ac9ba98d74fd850d331d3298212833e", null ], + [ "fop_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a564c7d941f5f339c0ed63712bdf96b29", null ] + ] ], + [ "uct_iface_params", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params", [ + [ "field_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9e1d45a55b7e9629eb548f27bea940a0", null ], + [ "cpu_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7093f64ec5efe2f1c3833dbe90b9099a", null ], + [ "open_mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7db3b0fb2bbde6b4625ad5a6c5e1a043", null ], + [ "mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7fa862d179a7605eef34de73e11869fe", null ], + [ "stats_root", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6d87dd22dc349557a706bb25d49975f0", null ], + [ "rx_headroom", "group___u_c_t___r_e_s_o_u_r_c_e.html#aea4ca94171e8dfe3e80abb74a06fe333", null ], + [ "err_handler_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#abd1425d7ce0507acc97361abc56ea66d", null ], + [ "err_handler", "group___u_c_t___r_e_s_o_u_r_c_e.html#afc90f76dc754aa478af524ac7c9d3f51", null ], + [ "err_handler_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a01b7ef6558dbe6f91ac5c59b63d5e0dd", null ], + [ "eager_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7c6b1ea224405a00438306212d30a172", null ], + [ "eager_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3e70569e1bf8a8d62fbc686dd147fd56", null ], + [ "rndv_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#afbeb49c7a773e6d61eaba872535809e8", null ], + [ "rndv_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#aee589d588ff4207d4fcf0d147479facd", null ], + [ "async_event_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#a678662e17ae32ca245a45d449ea497f0", null ], + [ "async_event_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab15b293126224a46cd25af411f75d39b", null ], + [ "keepalive_interval", "group___u_c_t___r_e_s_o_u_r_c_e.html#afbbbea17089ee8ff5ef0ef6ef3199cfe", null ], + [ "am_alignment", "group___u_c_t___r_e_s_o_u_r_c_e.html#a578571513991a26e7d0331b439968948", null ], + [ "am_align_offset", "group___u_c_t___r_e_s_o_u_r_c_e.html#a119e07151f7cfc215fdf86724cccf1f9", null ], + [ "features", "group___u_c_t___r_e_s_o_u_r_c_e.html#a967dbb2a49191e0b028f7058938293c6", null ] + ] ], + [ "uct_iface_params.mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#unionuct__iface__params_8mode", [ + [ "device", "group___u_c_t___r_e_s_o_u_r_c_e.html#a913f9c49dcb544e2087cee284f4a00b7", null ], + [ "sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a48bf0900b6d58aadfcae19eef1faccf2", null ] + ] ], + [ "uct_iface_params.mode.device", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8device", [ + [ "tl_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a014d3b92d61614fb65175a049548627c", null ], + [ "dev_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a2fc9141c264d49c58c0377dd85b43744", null ] + ] ], + [ "uct_iface_params.mode.sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8sockaddr", [ + [ "listen_sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a5bc951a80626f79c6da054b5a09990cd", null ], + [ "conn_request_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad80d0ef2043347df663b059b9f103bcd", null ], + [ "conn_request_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a191b74a436fbf612740a10737cc930c2", null ], + [ "cb_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a8a9d798e64e80303680078082cf16dbb", null ] + ] ], + [ "uct_ep_params", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__ep__params", [ + [ "field_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9c1ea4678d33fd3f741856135ad61d23", null ], + [ "iface", "group___u_c_t___r_e_s_o_u_r_c_e.html#a21e3628c5ffcafcdeb732f4f9687aa30", null ], + [ "user_data", "group___u_c_t___r_e_s_o_u_r_c_e.html#a107bb6eec86e0f877d2f256378ea0df8", null ], + [ "dev_addr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a273d48d73a6813f2fe097026d739e9d9", null ], + [ "iface_addr", "group___u_c_t___r_e_s_o_u_r_c_e.html#ae8c9ada98be19a83ab9cd2af30203d5f", null ], + [ "sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3eeadaece922904cae592889db563977", null ], + [ "sockaddr_cb_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a1471e0cef36287e0b37645beba2d792c", null ], + [ "sockaddr_pack_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7d44f52031c50abc0b6636421c82bbf1", null ], + [ "cm", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa8133488ec45605b0c825e66d12ba1a8", null ], + [ "conn_request", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad852c3138b06acb342e7f9c78ade8e41", null ], + [ "sockaddr_cb_client", "group___u_c_t___r_e_s_o_u_r_c_e.html#a375c999b7326f631877deae2bf24ccf6", null ], + [ "sockaddr_cb_server", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa290e652d57da6ee3bc5d1efff43a2fe", null ], + [ "disconnect_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac270000f4e5a1bbcba955098ea7e8e6a", null ], + [ "path_index", "group___u_c_t___r_e_s_o_u_r_c_e.html#af271b2f02d31b2a1fcbf34076b83a796", null ], + [ "cm_resolve_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a84e49366f4967ac76fad12d27295ec87", null ], + [ "private_data", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4ad36475338e8aee2577fa4535c01dfc", null ], + [ "private_data_length", "group___u_c_t___r_e_s_o_u_r_c_e.html#a287105cfd0e1922f7975efa4bba08ead", null ], + [ "local_sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#acd106a47629c2dffb844fbdb15a050f6", null ] + ] ], + [ "uct_completion", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__completion", [ + [ "func", "group___u_c_t___r_e_s_o_u_r_c_e.html#a34d9a5e03c0d9199a2d540f1a2cee5a2", null ], + [ "count", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac80f9b64f46a8a3a9de6cb0b121667ab", null ], + [ "status", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa3b099f011e78bd23c8768264576314d", null ] + ] ], + [ "uct_pending_req", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__pending__req", [ + [ "func", "group___u_c_t___r_e_s_o_u_r_c_e.html#a638accaa60c4c3f373c6d12c2ea74c6c", null ], + [ "priv", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3541a702c8158a6d557ce30cec1863b1", null ] + ] ], + [ "uct_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iov", [ + [ "buffer", "group___u_c_t___r_e_s_o_u_r_c_e.html#a315a759f0ec81b26fcba7530e43d9149", null ], + [ "length", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad00b6e55c209c6abc87b091f4c776cd5", null ], + [ "memh", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9a24e4be8303ebd6906bcaff37ab31f7", null ], + [ "stride", "group___u_c_t___r_e_s_o_u_r_c_e.html#a21ea5b278cab407db05eaa3dce3b2824", null ], + [ "count", "group___u_c_t___r_e_s_o_u_r_c_e.html#addb247a8d80907156df00159bbafcda5", null ] + ] ], + [ "uct_md_resource_desc_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga2ebcaffd02c6aec8e3c8a4df237169c9", null ], + [ "uct_component_attr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga9a4bd39175a7d0777a76529eeae4b860", null ], + [ "uct_tl_resource_desc_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga42b500c6ec481992e4edd739bb598d27", null ], + [ "uct_component_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga970f9dcfebb42f0209c2c7e23eca99f6", null ], + [ "uct_iface_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#gab6decd0363732ac4187bf7aa37883c35", null ], + [ "uct_iface_config_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga9769f5a67e7c711eb95abe993f794207", null ], + [ "uct_md_config_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gabfb351862f43010ab8d5bbdb2495d0ee", null ], + [ "uct_cm_config_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga98237d6d7f9a212449f6469d0d0eefd9", null ], + [ "uct_ep_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#gae7298a2b6fdb0e7771868459b10d6b20", null ], + [ "uct_mem_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga2af4d7f2a70d4ac5eaef079dc68506b8", null ], + [ "uct_rkey_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga2ccb9c7b57d14f25db9d2e850c348180", null ], + [ "uct_md_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga80ea2d5570f0cef850d315ce72ea8307", null ], + [ "uct_md_ops_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac8dbb0c7c104ee4eb86cb299e56a535e", null ], + [ "uct_rkey_ctx_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#gab9a50bee74dc6d4674fb3800aab19da7", null ], + [ "uct_iface_attr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga64b102833286ad65e2802002e0f403be", null ], + [ "uct_iface_params_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaff593598b5296991d8081a289f7a7d40", null ], + [ "uct_ep_attr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaad8747fe0969320a445f7b9cba53d50c", null ], + [ "uct_md_attr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga9e9485d79fdf2f153e05cc5282ab57fd", null ], + [ "uct_completion_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga1c5e511c1cbe1734b317f7688a5cdb90", null ], + [ "uct_pending_req_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaacadb8cfd53f7cafd39fd7f1ae12ec02", null ], + [ "uct_worker_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga2c776904a7202aa95ec1ceecfe74f2f9", null ], + [ "uct_md_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gad8a3d325a68dfb193354ac884f6ddd1d", null ], + [ "uct_am_trace_type_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga8d195c0008dbf59eb931504c3b2590fc", null ], + [ "uct_device_addr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac88423ede47b1ecaf895996971cfdf53", null ], + [ "uct_iface_addr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga96d01980a33064e85158b9028073e96c", null ], + [ "uct_ep_addr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga808816ad1373f05b9ed7f3432d9f78c6", null ], + [ "uct_ep_params_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaff904a2be18f709176eaec75e4a93251", null ], + [ "uct_ep_connect_params_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaddad06e96eb39d96239d984bfbbbb5c0", null ], + [ "uct_cm_attr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac97ab5f8fc69893d70fd3dc374687a71", null ], + [ "uct_cm_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaf0ad3383e80500c7b5f1ac9a93ca1525", null ], + [ "uct_cm_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#gab88b0c85922e6c157fae605a42647dd7", null ], + [ "uct_listener_attr_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gad9c5692c9af9e043f6ee4ad3a15dced6", null ], + [ "uct_listener_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaf88468443532bb4b677b18f038b6f60e", null ], + [ "uct_listener_params_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga8d8a6ca0e12e5f1bc54f8c85bda14d59", null ], + [ "uct_tag_context_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga65b6470372d51789a3a96cc5ea317f9d", null ], + [ "uct_tag_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga162e00587cfb6506fe1c038c0f63e2ca", null ], + [ "uct_worker_cb_id_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga9ec2e5d2c228f55751038dad0691c67b", null ], + [ "uct_conn_request_h", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga71c5cb66cb921d62e609d02ca628c90f", null ], + [ "uct_iov_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac4f8a4a4065c3fa4b5a8d125d0ff3a4e", null ], + [ "uct_completion_callback_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gafe8643ddb601908eab1d92ee2f012f8c", null ], + [ "uct_pending_callback_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gad282a6c6faf7911791c3978bcfbb3c93", null ], + [ "uct_error_handler_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga119fc03d8825b540252406cfeb280897", null ], + [ "uct_pending_purge_callback_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga35d6acc042923019e0d5819b72a465f5", null ], + [ "uct_pack_callback_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga75c4600da362988f9d4f4d53a294f36b", null ], + [ "uct_unpack_callback_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga58d033b0b2eacc05af41af8c07fde4da", null ], + [ "uct_async_event_cb_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gafb7251839b08fac157af1c9b85430e16", null ], + [ "uct_component_attr_field", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga246ded5e20aa09c590673c771c74b68b", [ + [ "UCT_COMPONENT_ATTR_FIELD_NAME", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba45f30f9f196f5f75309882d48c435a26", null ], + [ "UCT_COMPONENT_ATTR_FIELD_MD_RESOURCE_COUNT", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba25d44baf92c5c7673dbbf44de35fdc84", null ], + [ "UCT_COMPONENT_ATTR_FIELD_MD_RESOURCES", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba4ffc9f65e0b3d7cb07db745e7e61ba47", null ], + [ "UCT_COMPONENT_ATTR_FIELD_FLAGS", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68baf29cd3b384fbddeccc937d42abbd6b41", null ], + [ "UCT_COMPONENT_FLAG_CM", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggadc29c2ff13d900c2f185ee95427fb06cac3f00c23358624b53732e413433f1d8d", null ], + [ "UCT_COMPONENT_FLAG_RKEY_PTR", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggadc29c2ff13d900c2f185ee95427fb06cab20fb035dcd4f2aa6eee77dd501880c3", null ] + ] ], + [ "uct_device_type_t", "group___u_c_t___r_e_s_o_u_r_c_e.html#gae0c25b8c160e49fbb9cc122c9807f20d", [ + [ "UCT_DEVICE_TYPE_NET", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da5996d835fc60fcdca9c03539b99a0a2d", null ], + [ "UCT_DEVICE_TYPE_SHM", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da3d586e5bccd77cfe8bb3c87ce3fcce06", null ], + [ "UCT_DEVICE_TYPE_ACC", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da4830aee82331272d4acfc027d733613f", null ], + [ "UCT_DEVICE_TYPE_SELF", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da86a97f09cfba66ff7170f77faaa2d89b", null ], + [ "UCT_DEVICE_TYPE_LAST", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20dacd8f593dedbce6ce4d40115b593451e1", null ] + ] ], + [ "uct_iface_event_types", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaef09139f303b0a3d28a1cea524dc3bd2", [ + [ "UCT_EVENT_SEND_COMP", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2aba611824db8eb31b9eb07111f987e011", null ], + [ "UCT_EVENT_RECV", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2a1381e135252b79646cdb3a6f3d15431e", null ], + [ "UCT_EVENT_RECV_SIG", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2ab5b97562ce555a0979a56bd1d9810eaf", null ] + ] ], + [ "uct_flush_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga84ba23c28fda1c96f5018bbafb7ffed6", [ + [ "UCT_FLUSH_FLAG_LOCAL", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6ad0b221329684853b22a60d88e0dd8bac", null ], + [ "UCT_FLUSH_FLAG_CANCEL", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6a556a8cb417f5b6e21b0be93297eb2f45", null ], + [ "UCT_FLUSH_FLAG_REMOTE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6a0c1b82dd17faf5ece84a69702168afe7", null ] + ] ], + [ "uct_progress_types", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga71bfe6e07ebbcc036f883b31db1e9e51", [ + [ "UCT_PROGRESS_SEND", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a5a00ade1aed7157a0662d8a4ae9cc2f5", null ], + [ "UCT_PROGRESS_RECV", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a13a7d7c06d204f61b5de0cdf3ede1957", null ], + [ "UCT_PROGRESS_THREAD_SAFE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a8cba06626715c4be748d16a7baf90b77", null ] + ] ], + [ "uct_cb_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaca1e07b69024fec26746e3a19b4de9d0", [ + [ "UCT_CB_FLAG_RESERVED", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggaca1e07b69024fec26746e3a19b4de9d0a93c65c155511b258449363ea8cad8f7f", null ], + [ "UCT_CB_FLAG_ASYNC", "group___u_c_t___r_e_s_o_u_r_c_e.html#ggaca1e07b69024fec26746e3a19b4de9d0a2de3b7622afcabd645878e0540f062aa", null ] + ] ], + [ "uct_iface_open_mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga8bc9c95ee7fbd76321940e2853d08bb5", [ + [ "UCT_IFACE_OPEN_MODE_DEVICE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5a504bef9a8574445a0dfdcf517160fef0", null ], + [ "UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5a9b2655b644fae2cf20d5b673854c9ad0", null ], + [ "UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5ab596bc437bc4e84500039aafcf5adfeb", null ] + ] ], + [ "uct_iface_params_field", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga896baeefc7933d925202c32b0d09f596", [ + [ "UCT_IFACE_PARAM_FIELD_CPU_MASK", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a80cd3b1a8f9de031df8aa12e7a0eb08b", null ], + [ "UCT_IFACE_PARAM_FIELD_OPEN_MODE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a436751cf65204ec8d37e649b0913eff7", null ], + [ "UCT_IFACE_PARAM_FIELD_DEVICE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a0f56ae54f7fcd7a002588a75e207f8a2", null ], + [ "UCT_IFACE_PARAM_FIELD_SOCKADDR", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596af01913e91929ae3c52c465e5df97bec3", null ], + [ "UCT_IFACE_PARAM_FIELD_STATS_ROOT", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a7af1c01a0aa6c8d7ddc167cd516f3272", null ], + [ "UCT_IFACE_PARAM_FIELD_RX_HEADROOM", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596aabb0425ec3c58345ba973683b72dc255", null ], + [ "UCT_IFACE_PARAM_FIELD_ERR_HANDLER_ARG", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ab0a406683b45f265eaf9edc794e72e7e", null ], + [ "UCT_IFACE_PARAM_FIELD_ERR_HANDLER", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a57771259693749559910cbf8256ef7a1", null ], + [ "UCT_IFACE_PARAM_FIELD_ERR_HANDLER_FLAGS", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a2f97be5b7ef0e542fc39fe778c85097e", null ], + [ "UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_ARG", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ad4afd13a4a6e36adb6e5576de666ab64", null ], + [ "UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_CB", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a9dcb103f9b93d5c37d5b1ff401fda324", null ], + [ "UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_ARG", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a5b7da96e1cd28639f489bcf08194ecd7", null ], + [ "UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_CB", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a2c2b16ef1c537d1596ceb7b72fbf3145", null ], + [ "UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_ARG", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a8d6361b77aae50f66b88b13826375aed", null ], + [ "UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_CB", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a83e8eb07f6d7e357001a0ac826857ebd", null ], + [ "UCT_IFACE_PARAM_FIELD_KEEPALIVE_INTERVAL", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a3b05690f0c5ae7cf346a1e7a00186953", null ], + [ "UCT_IFACE_PARAM_FIELD_AM_ALIGNMENT", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a8d676d1b40253cacf1abb4302d448d3a", null ], + [ "UCT_IFACE_PARAM_FIELD_AM_ALIGN_OFFSET", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a22a9554ccdc8209f81d7d5b5a8e39780", null ], + [ "UCT_IFACE_PARAM_FIELD_FEATURES", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ad5efe451d0f04d6929f39b66cdc8d889", null ] + ] ], + [ "uct_ep_params_field", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga8e76f363d8805669fb5371b404c5658b", [ + [ "UCT_EP_PARAM_FIELD_IFACE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba082065ffa8866740ca6418a9c38b503d", null ], + [ "UCT_EP_PARAM_FIELD_USER_DATA", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658babbff9b7d6a5114860d6b40f3b0c445dc", null ], + [ "UCT_EP_PARAM_FIELD_DEV_ADDR", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba14fb24fafcf9fdd0418a5dd348ab828c", null ], + [ "UCT_EP_PARAM_FIELD_IFACE_ADDR", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658baef938215a002d0b59812c737db0a965d", null ], + [ "UCT_EP_PARAM_FIELD_SOCKADDR", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bae4c4f4f2110b170ed4920529821387e6", null ], + [ "UCT_EP_PARAM_FIELD_SOCKADDR_CB_FLAGS", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba6489f1bcbdd0de8e2aee80661aa37ec1", null ], + [ "UCT_EP_PARAM_FIELD_SOCKADDR_PACK_CB", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba61e749dca15775eb4cbc492c020027ca", null ], + [ "UCT_EP_PARAM_FIELD_CM", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bab089df3f421f6fc0ccdda8b36ecd4e42", null ], + [ "UCT_EP_PARAM_FIELD_CONN_REQUEST", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba313aa3f8e5e089fc57a0c53fa48ee72d", null ], + [ "UCT_EP_PARAM_FIELD_SOCKADDR_CONNECT_CB_CLIENT", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bad59d4bae36d22a6d5da01512d9861256", null ], + [ "UCT_EP_PARAM_FIELD_SOCKADDR_NOTIFY_CB_SERVER", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bad86327449165ad945e6ae8a7c36c1c8c", null ], + [ "UCT_EP_PARAM_FIELD_SOCKADDR_DISCONNECT_CB", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba148d1e23de6d640612457216ad81da29", null ], + [ "UCT_EP_PARAM_FIELD_PATH_INDEX", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658baf1b7df888b75b42a627b327003bffdb6", null ], + [ "UCT_EP_PARAM_FIELD_CM_RESOLVE_CB", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bab8af49c5286ab9f6b6f6f62743960f8f", null ], + [ "UCT_EP_PARAM_FIELD_PRIV_DATA", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba43b2ccfee5e1811447b1902e6d9962c4", null ], + [ "UCT_EP_PARAM_FIELD_PRIV_DATA_LENGTH", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bac5bd575d5dddf9dd99e90251bb56faea", null ], + [ "UCT_EP_PARAM_FIELD_LOCAL_SOCKADDR", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bafdb48e56bfcdd0b9439329568885f8df", null ] + ] ], + [ "uct_iface_feature", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga078dd84cff9d6b1cda5692fbf6b1e7c7", [ + [ "UCT_IFACE_FEATURE_AM", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a4bce30860f36cee1a7b74f6cd2c061ad", null ], + [ "UCT_IFACE_FEATURE_PUT", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a59d0a64607692e3ff39fa61a899c7633", null ], + [ "UCT_IFACE_FEATURE_GET", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ae80cd4ab8043e2df41d2d81854686415", null ], + [ "UCT_IFACE_FEATURE_AMO32", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a06a813eb45714bc70e154691d82e5e81", null ], + [ "UCT_IFACE_FEATURE_AMO64", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7af6bebc50b5e4169f38cddaacc7ba7a7a", null ], + [ "UCT_IFACE_FEATURE_TAG", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a08d34bf9a962d1b27b0c92865c773854", null ], + [ "UCT_IFACE_FEATURE_FLUSH_REMOTE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ac161e1b9f69409f4e2238af1c6d4d155", null ], + [ "UCT_IFACE_FEATURE_LAST", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ab317c0279d872516f011df628d67dd9f", null ], + [ "UCT_TAG_RECV_CB_INLINE_DATA", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga726ca809ffd3d67ab4b8476646f26635a5dcb013c4470abbabc764c473898df3e", null ] + ] ], + [ "uct_cb_param_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga36bfc11c722b01a11e1949e8329262c9", [ + [ "UCT_CB_PARAM_FLAG_DESC", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9a741f6a62c34d5484fa6999b1e097e42a", null ], + [ "UCT_CB_PARAM_FLAG_FIRST", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9aef5b11372c919dfcdc55602d48e67135", null ], + [ "UCT_CB_PARAM_FLAG_MORE", "group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9a2d9bb153789aeae6d1ecf0173cf483e9", null ] + ] ], + [ "uct_query_components", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac11a18f80ae695355914c32095e5c75d", null ], + [ "uct_release_component_list", "group___u_c_t___r_e_s_o_u_r_c_e.html#gadd4eea4cf8e757f5ddd2e9edb1942dd0", null ], + [ "uct_component_query", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga437597d034328ce061df61647add1891", null ], + [ "uct_md_open", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga6254b927d3bfcb9699dbf82f0987b9ce", null ], + [ "uct_md_close", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac9ab18f8a48b07429c9987b584fe5574", null ], + [ "uct_md_query_tl_resources", "group___u_c_t___r_e_s_o_u_r_c_e.html#gae4572e36e60bf2665e59cc7ef04bb011", null ], + [ "uct_release_tl_resource_list", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga1edfeac896c9ca285ab11580c904b558", null ], + [ "uct_md_iface_config_read", "group___u_c_t___r_e_s_o_u_r_c_e.html#gace64468ec8d46cbcbcfa6efd74e1148c", null ], + [ "uct_config_release", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga951ea184730bc0b9cf659b1038e999a4", null ], + [ "uct_iface_open", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga031e2c99f03585c0f4c7356c71f0fbb1", null ], + [ "uct_iface_close", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga748bd92ba4e62fd86c6b002f9198e2aa", null ], + [ "uct_iface_query", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac2ec7cdee76fa075cc65185d7c134bc2", null ], + [ "uct_iface_get_device_address", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga67f64f9b1971622ab8e7c8410cc5ab44", null ], + [ "uct_iface_get_address", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga7da50f02f6cfaaf16f11c620fba9f3b8", null ], + [ "uct_iface_is_reachable", "group___u_c_t___r_e_s_o_u_r_c_e.html#gadf8829d8c85620cbc1ddfc0f3e8ec9a8", null ], + [ "uct_ep_check", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga45924a1e90cc4747fd23b36a21fc07af", null ], + [ "uct_iface_event_fd_get", "group___u_c_t___r_e_s_o_u_r_c_e.html#gae3aa273c042171bee7292da0d7f774d1", null ], + [ "uct_iface_event_arm", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaf15e9f37d3ce5273153861522a443acf", null ], + [ "uct_iface_mem_alloc", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaa29727b03b244839f0c068d0785f0050", null ], + [ "uct_iface_mem_free", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga198359eccf0ae85f1c13d4d8509f5532", null ], + [ "uct_ep_create", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga0b2d38bde2651977c2b476e6e8866acc", null ], + [ "uct_ep_destroy", "group___u_c_t___r_e_s_o_u_r_c_e.html#gac7d6537c7cdacdf24afeafe9c0085163", null ], + [ "uct_ep_get_address", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga23773d9d87524cfa6dc6c2d1e094d487", null ], + [ "uct_ep_connect_to_ep", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga371685403748eb72784fdcb17f9e4bdf", null ], + [ "uct_iface_flush", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga6cda14e7c03e4f400be46fe97aa23bed", null ], + [ "uct_iface_fence", "group___u_c_t___r_e_s_o_u_r_c_e.html#gaa8d42856661922581a683030dd9c8990", null ], + [ "uct_ep_pending_add", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga40f4b92dd4af8da92e138816d57dfece", null ], + [ "uct_ep_pending_purge", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga11196076031e7c8601241a3adbe1e561", null ], + [ "uct_ep_flush", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga2a7a12705b1f4af41792282b59fbc8c2", null ], + [ "uct_ep_fence", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga34719e12b68f8ac890f261018aa6ddb3", null ], + [ "uct_iface_progress_enable", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga9f14d2694a06d5ea9e6434a52f8d3ff0", null ], + [ "uct_iface_progress_disable", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga7acfd29e7d7bb8566cfbbf02916bc466", null ], + [ "uct_iface_progress", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga56dd7c8b9f4b02ae5da179a3055bcb81", null ], + [ "uct_completion_update_status", "group___u_c_t___r_e_s_o_u_r_c_e.html#ga6d517ca850e8bb367939139b6b24cc87", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html new file mode 100644 index 00000000000..06febbfe100 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html @@ -0,0 +1,601 @@ + + + + + + +UCX: UCT interface operations and capabilities + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
UCT interface operations and capabilities
+
+
+ +

List of capabilities supported by UCX API. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define UCT_IFACE_FLAG_AM_SHORT   UCS_BIT(0)
 
#define UCT_IFACE_FLAG_AM_BCOPY   UCS_BIT(1)
 
#define UCT_IFACE_FLAG_AM_ZCOPY   UCS_BIT(2)
 
#define UCT_IFACE_FLAG_PENDING   UCS_BIT(3)
 
#define UCT_IFACE_FLAG_PUT_SHORT   UCS_BIT(4)
 
#define UCT_IFACE_FLAG_PUT_BCOPY   UCS_BIT(5)
 
#define UCT_IFACE_FLAG_PUT_ZCOPY   UCS_BIT(6)
 
#define UCT_IFACE_FLAG_GET_SHORT   UCS_BIT(8)
 
#define UCT_IFACE_FLAG_GET_BCOPY   UCS_BIT(9)
 
#define UCT_IFACE_FLAG_GET_ZCOPY   UCS_BIT(10)
 
#define UCT_IFACE_FLAG_ATOMIC_CPU   UCS_BIT(30)
 
#define UCT_IFACE_FLAG_ATOMIC_DEVICE   UCS_BIT(31)
 
#define UCT_IFACE_FLAG_ERRHANDLE_SHORT_BUF   UCS_BIT(32)
 
#define UCT_IFACE_FLAG_ERRHANDLE_BCOPY_BUF   UCS_BIT(33)
 
#define UCT_IFACE_FLAG_ERRHANDLE_ZCOPY_BUF   UCS_BIT(34)
 
#define UCT_IFACE_FLAG_ERRHANDLE_AM_ID   UCS_BIT(35)
 
#define UCT_IFACE_FLAG_ERRHANDLE_REMOTE_MEM   UCS_BIT(36)
 
#define UCT_IFACE_FLAG_ERRHANDLE_BCOPY_LEN   UCS_BIT(37)
 
#define UCT_IFACE_FLAG_ERRHANDLE_PEER_FAILURE   UCS_BIT(38)
 
#define UCT_IFACE_FLAG_EP_CHECK   UCS_BIT(39)
 
#define UCT_IFACE_FLAG_CONNECT_TO_IFACE   UCS_BIT(40)
 
#define UCT_IFACE_FLAG_CONNECT_TO_EP   UCS_BIT(41)
 
#define UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR   UCS_BIT(42)
 
#define UCT_IFACE_FLAG_AM_DUP   UCS_BIT(43)
 
#define UCT_IFACE_FLAG_CB_SYNC   UCS_BIT(44)
 
#define UCT_IFACE_FLAG_CB_ASYNC   UCS_BIT(45)
 
#define UCT_IFACE_FLAG_EP_KEEPALIVE   UCS_BIT(46)
 
#define UCT_IFACE_FLAG_TAG_EAGER_SHORT   UCS_BIT(50)
 
#define UCT_IFACE_FLAG_TAG_EAGER_BCOPY   UCS_BIT(51)
 
#define UCT_IFACE_FLAG_TAG_EAGER_ZCOPY   UCS_BIT(52)
 
#define UCT_IFACE_FLAG_TAG_RNDV_ZCOPY   UCS_BIT(53)
 
+

Detailed Description

+

The definition list presents a full list of operations and capabilities exposed by UCX API.

+

Macro Definition Documentation

+ +
+
+ + + + +
#define UCT_IFACE_FLAG_AM_SHORT   UCS_BIT(0)
+
+

Short active message

+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_AM_BCOPY   UCS_BIT(1)
+
+

Buffered active message

+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_AM_ZCOPY   UCS_BIT(2)
+
+

Zero-copy active message

+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_PENDING   UCS_BIT(3)
+
+

Pending operations

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_PUT_SHORT   UCS_BIT(4)
+
+

Short put

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_PUT_BCOPY   UCS_BIT(5)
+
+

Buffered put

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_PUT_ZCOPY   UCS_BIT(6)
+
+

Zero-copy put

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_GET_SHORT   UCS_BIT(8)
+
+

Short get

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_GET_BCOPY   UCS_BIT(9)
+
+

Buffered get

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_GET_ZCOPY   UCS_BIT(10)
+
+

Zero-copy get

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ATOMIC_CPU   UCS_BIT(30)
+
+

Atomic communications are consistent with respect to CPU operations.

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ATOMIC_DEVICE   UCS_BIT(31)
+
+

Atomic communications are consistent only with respect to other atomics on the same device.

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_SHORT_BUF   UCS_BIT(32)
+
+

Invalid buffer for short operation

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_BCOPY_BUF   UCS_BIT(33)
+
+

Invalid buffer for buffered operation

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_ZCOPY_BUF   UCS_BIT(34)
+
+

Invalid buffer for zero copy operation

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_AM_ID   UCS_BIT(35)
+
+

Invalid AM id on remote

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_REMOTE_MEM   UCS_BIT(36)
+
+

Remote memory access

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_BCOPY_LEN   UCS_BIT(37)
+
+

Invalid length for buffered operation

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_ERRHANDLE_PEER_FAILURE   UCS_BIT(38)
+
+

Remote peer failures/outage

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EP_CHECK   UCS_BIT(39)
+
+

Endpoint check

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_CONNECT_TO_IFACE   UCS_BIT(40)
+
+

Supports connecting to interface

+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_CONNECT_TO_EP   UCS_BIT(41)
+
+

Supports connecting to specific endpoint

+
Examples:
uct_hello_world.c.
+
+
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR   UCS_BIT(42)
+
+

Supports connecting to sockaddr

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_AM_DUP   UCS_BIT(43)
+
+

Active messages may be received with duplicates This happens if the transport does not keep enough information to detect retransmissions

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_CB_SYNC   UCS_BIT(44)
+
+

Interface supports setting a callback which is invoked only from the calling context of uct_worker_progress()

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_CB_ASYNC   UCS_BIT(45)
+
+

Interface supports setting a callback which will be invoked within a reasonable amount of time if uct_worker_progress() is not being called. The callback can be invoked from any progress context and it may also be invoked when uct_worker_progress() is called.

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EP_KEEPALIVE   UCS_BIT(46)
+
+

Transport endpoint has built-in keepalive feature, which guarantees the error callback on the transport interface will be called if the communication channel with remote peer is broken, even if there are no outstanding send operations

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_TAG_EAGER_SHORT   UCS_BIT(50)
+
+

Hardware tag matching short eager support

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_TAG_EAGER_BCOPY   UCS_BIT(51)
+
+

Hardware tag matching bcopy eager support

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_TAG_EAGER_ZCOPY   UCS_BIT(52)
+
+

Hardware tag matching zcopy eager support

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_TAG_RNDV_ZCOPY   UCS_BIT(53)
+
+

Hardware tag matching rendezvous zcopy support

+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.js new file mode 100644 index 00000000000..06fdd863e44 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.js @@ -0,0 +1,34 @@ +var group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p = +[ + [ "UCT_IFACE_FLAG_AM_SHORT", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gaa58cb476c781afcc74ce00849cc1884c", null ], + [ "UCT_IFACE_FLAG_AM_BCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga157f699933110d47857b84d06de36c21", null ], + [ "UCT_IFACE_FLAG_AM_ZCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga480d42a7324a6944049f5f2ded5da783", null ], + [ "UCT_IFACE_FLAG_PENDING", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gaeaaca09dbcf32488f508327b00d6f386", null ], + [ "UCT_IFACE_FLAG_PUT_SHORT", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga505de892b063f532d31e4903ad9c1126", null ], + [ "UCT_IFACE_FLAG_PUT_BCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga8370f7eb1b51d788b28a7b9391818b5a", null ], + [ "UCT_IFACE_FLAG_PUT_ZCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gabb6ace47f4fac09f529b21e1e0b3aef8", null ], + [ "UCT_IFACE_FLAG_GET_SHORT", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga71df9bc5c060b753e50ddeabf05464f8", null ], + [ "UCT_IFACE_FLAG_GET_BCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2bd7e6c6fb89b6f6922e4cd5b22976d1", null ], + [ "UCT_IFACE_FLAG_GET_ZCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2b06fb927355693fd2887a237521238a", null ], + [ "UCT_IFACE_FLAG_ATOMIC_CPU", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gad3c9946b758176b203769c4257751e05", null ], + [ "UCT_IFACE_FLAG_ATOMIC_DEVICE", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga264f4b6d97d47bba154940db2d39108f", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_SHORT_BUF", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga8c2b68ef2471f41887923d60d7e7bc30", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_BCOPY_BUF", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gac0767646add241453d8835c81a370ad4", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_ZCOPY_BUF", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga58d7b4bd4ce94d95f91f95cbfacc3687", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_AM_ID", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga645a61b3a77a69abd3263b4c8cff162c", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_REMOTE_MEM", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga72ea5a02a74d3badb058dcb27c28d33f", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_BCOPY_LEN", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga4fc39074e1a50d6fd8e5b009634090a8", null ], + [ "UCT_IFACE_FLAG_ERRHANDLE_PEER_FAILURE", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2dd3b3fa9d757d3835a5cfe33778e51c", null ], + [ "UCT_IFACE_FLAG_EP_CHECK", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga0faa7a7889f57ccdc40fcb4c949d177c", null ], + [ "UCT_IFACE_FLAG_CONNECT_TO_IFACE", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gac56a560766f8c50bef684e0e6b4efd18", null ], + [ "UCT_IFACE_FLAG_CONNECT_TO_EP", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga598f1ae11f9ed8cfed2f6c04bbb0bfe8", null ], + [ "UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gadd27aab0e67faf844b0ec9011b5ff7dc", null ], + [ "UCT_IFACE_FLAG_AM_DUP", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga57467dcc8d7be9b69caa2c886e2bf05a", null ], + [ "UCT_IFACE_FLAG_CB_SYNC", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2e3c98ee6cfe8abe7769a3442fbaffaf", null ], + [ "UCT_IFACE_FLAG_CB_ASYNC", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga0d11615d226392d79f547669968b4b90", null ], + [ "UCT_IFACE_FLAG_EP_KEEPALIVE", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gafd21d995c6a98421676ff9881c3fd30d", null ], + [ "UCT_IFACE_FLAG_TAG_EAGER_SHORT", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga3d034538bcf657f976ae500d8143ed64", null ], + [ "UCT_IFACE_FLAG_TAG_EAGER_BCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gaa31a85814a4c1f1d2b650ed962697c24", null ], + [ "UCT_IFACE_FLAG_TAG_EAGER_ZCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga8bdcd3907a6cf4f5cb951994ae9da7bb", null ], + [ "UCT_IFACE_FLAG_TAG_RNDV_ZCOPY", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gac7f2200f52db88d3634089d8cdf2100c", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html new file mode 100644 index 00000000000..049938ffb46 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html @@ -0,0 +1,206 @@ + + + + + + +UCX: UCT interface for asynchronous event capabilities + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
UCT interface for asynchronous event capabilities
+
+
+ +

List of capabilities supported by UCT iface event API. +More...

+ + + + + + + + + + + + +

+Macros

#define UCT_IFACE_FLAG_EVENT_SEND_COMP   UCS_BIT(0)
 
#define UCT_IFACE_FLAG_EVENT_RECV   UCS_BIT(1)
 
#define UCT_IFACE_FLAG_EVENT_RECV_SIG   UCS_BIT(2)
 
#define UCT_IFACE_FLAG_EVENT_FD   UCS_BIT(3)
 
#define UCT_IFACE_FLAG_EVENT_ASYNC_CB   UCS_BIT(4)
 
+

Detailed Description

+

The definition list presents a full list of operations and capabilities supported by UCT iface event.

+

Macro Definition Documentation

+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EVENT_SEND_COMP   UCS_BIT(0)
+
+

Event notification of send completion is supported

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EVENT_RECV   UCS_BIT(1)
+
+

Event notification of tag and active message receive is supported

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EVENT_RECV_SIG   UCS_BIT(2)
+
+

Event notification of signaled tag and active message is supported

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EVENT_FD   UCS_BIT(3)
+
+

Event notification through File Descriptor is supported

+ +
+
+ +
+
+ + + + +
#define UCT_IFACE_FLAG_EVENT_ASYNC_CB   UCS_BIT(4)
+
+

Event notification through asynchronous callback invocation is supported

+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.js new file mode 100644 index 00000000000..fc3a15fa5d0 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.js @@ -0,0 +1,8 @@ +var group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p = +[ + [ "UCT_IFACE_FLAG_EVENT_SEND_COMP", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#ga4070a894b32d49061c07d5e636d2c7ae", null ], + [ "UCT_IFACE_FLAG_EVENT_RECV", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#ga8f30d238efddb2735f400a93d84741ec", null ], + [ "UCT_IFACE_FLAG_EVENT_RECV_SIG", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#ga92e91487e2c27a69934f84e3331012da", null ], + [ "UCT_IFACE_FLAG_EVENT_FD", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#gab3643d171600157693ecbc8b8a57ddb8", null ], + [ "UCT_IFACE_FLAG_EVENT_ASYNC_CB", "group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#gae0199c5efa567b5906fb4119c84eeb90", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__completion.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__completion.js new file mode 100644 index 00000000000..53e5b26f0b0 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__completion.js @@ -0,0 +1,6 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__completion = +[ + [ "func", "group___u_c_t___r_e_s_o_u_r_c_e.html#a34d9a5e03c0d9199a2d540f1a2cee5a2", null ], + [ "count", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac80f9b64f46a8a3a9de6cb0b121667ab", null ], + [ "status", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa3b099f011e78bd23c8768264576314d", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__component__attr.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__component__attr.js new file mode 100644 index 00000000000..d82ba77c983 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__component__attr.js @@ -0,0 +1,8 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__component__attr = +[ + [ "field_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad95df67b474d3f51629e0a6d0ee2537e", null ], + [ "name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4d186d55814dbe82c4403564d38d084e", null ], + [ "md_resource_count", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4add45e93acd44e434624726caaf9efb", null ], + [ "md_resources", "group___u_c_t___r_e_s_o_u_r_c_e.html#a75c51f7e16d827cc4c848016f5365404", null ], + [ "flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad2800e9666be0be84926f768eac792a2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__ep__params.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__ep__params.js new file mode 100644 index 00000000000..13669b9046c --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__ep__params.js @@ -0,0 +1,21 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__ep__params = +[ + [ "field_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9c1ea4678d33fd3f741856135ad61d23", null ], + [ "iface", "group___u_c_t___r_e_s_o_u_r_c_e.html#a21e3628c5ffcafcdeb732f4f9687aa30", null ], + [ "user_data", "group___u_c_t___r_e_s_o_u_r_c_e.html#a107bb6eec86e0f877d2f256378ea0df8", null ], + [ "dev_addr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a273d48d73a6813f2fe097026d739e9d9", null ], + [ "iface_addr", "group___u_c_t___r_e_s_o_u_r_c_e.html#ae8c9ada98be19a83ab9cd2af30203d5f", null ], + [ "sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3eeadaece922904cae592889db563977", null ], + [ "sockaddr_cb_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a1471e0cef36287e0b37645beba2d792c", null ], + [ "sockaddr_pack_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7d44f52031c50abc0b6636421c82bbf1", null ], + [ "cm", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa8133488ec45605b0c825e66d12ba1a8", null ], + [ "conn_request", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad852c3138b06acb342e7f9c78ade8e41", null ], + [ "sockaddr_cb_client", "group___u_c_t___r_e_s_o_u_r_c_e.html#a375c999b7326f631877deae2bf24ccf6", null ], + [ "sockaddr_cb_server", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa290e652d57da6ee3bc5d1efff43a2fe", null ], + [ "disconnect_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac270000f4e5a1bbcba955098ea7e8e6a", null ], + [ "path_index", "group___u_c_t___r_e_s_o_u_r_c_e.html#af271b2f02d31b2a1fcbf34076b83a796", null ], + [ "cm_resolve_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a84e49366f4967ac76fad12d27295ec87", null ], + [ "private_data", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4ad36475338e8aee2577fa4535c01dfc", null ], + [ "private_data_length", "group___u_c_t___r_e_s_o_u_r_c_e.html#a287105cfd0e1922f7975efa4bba08ead", null ], + [ "local_sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#acd106a47629c2dffb844fbdb15a050f6", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr.js new file mode 100644 index 00000000000..c924cf7ded7 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr.js @@ -0,0 +1,15 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr = +[ + [ "cap", "group___u_c_t___r_e_s_o_u_r_c_e.html#aff010f596f41cdceae41e6c46652e1ca", null ], + [ "device_addr_len", "group___u_c_t___r_e_s_o_u_r_c_e.html#a150fb2fb81e47e2a97571147cdc1647e", null ], + [ "iface_addr_len", "group___u_c_t___r_e_s_o_u_r_c_e.html#adaeded4e728f80628ff6d29eeae7a5b0", null ], + [ "ep_addr_len", "group___u_c_t___r_e_s_o_u_r_c_e.html#a70955f4d39111b0a48c85e0ff65768a0", null ], + [ "max_conn_priv", "group___u_c_t___r_e_s_o_u_r_c_e.html#a5612c3ad1e7a46dd6add669e32364424", null ], + [ "listen_sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3a5bb921af4157bc96d39aa580ff978f", null ], + [ "overhead", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab802bc3cc95cc67e176efeb2fe1c14c4", null ], + [ "bandwidth", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6a9bab4b671c0d0da959c98a4b3ab7ac", null ], + [ "latency", "group___u_c_t___r_e_s_o_u_r_c_e.html#ace9cf2c31674223b000dff0e72c5d533", null ], + [ "priority", "group___u_c_t___r_e_s_o_u_r_c_e.html#a97534f4af50032a82c02b76bdb47a96d", null ], + [ "max_num_eps", "group___u_c_t___r_e_s_o_u_r_c_e.html#af6baead12f87707af1b3e56024b2b2e5", null ], + [ "dev_num_paths", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac9c279de0e13a96a683baf04d3c40c46", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap.js new file mode 100644 index 00000000000..d9cee78e196 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap.js @@ -0,0 +1,11 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap = +[ + [ "put", "group___u_c_t___r_e_s_o_u_r_c_e.html#a8e13ffc9fd9d6a6761231a764bdf106b", null ], + [ "get", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab5eda0a74558a342cf659187f06f746f", null ], + [ "am", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac04cd38aeb30f3ad1f8ab4e64a0ded7b", null ], + [ "tag", "group___u_c_t___r_e_s_o_u_r_c_e.html#ae4d23e841d8e8804190027bce3180fa5", null ], + [ "atomic32", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab6ef684feef10177fc3c31b012c575a2", null ], + [ "atomic64", "group___u_c_t___r_e_s_o_u_r_c_e.html#a1dd9655cfd97613a0a996060a998b0d4", null ], + [ "flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a4e5868d676cb634aa75b125a0f741abf", null ], + [ "event_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#af1b7cb88db5bf93bba7cbcaa503cbd6c", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8am.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8am.js new file mode 100644 index 00000000000..be1aee5e833 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8am.js @@ -0,0 +1,11 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8am = +[ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "min_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a57d02deb57ae536cf84940eff69270c0", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "opt_zcopy_align", "group___u_c_t___r_e_s_o_u_r_c_e.html#a130833876f7297c8711797fa51471539", null ], + [ "align_mtu", "group___u_c_t___r_e_s_o_u_r_c_e.html#a46a9c80802ec1ec433bbc251f69a8fdf", null ], + [ "max_hdr", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa84fcfd6201c2b55787abdea4b1e6f34", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic32.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic32.js new file mode 100644 index 00000000000..03454b05e09 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic32.js @@ -0,0 +1,5 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic32 = +[ + [ "op_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9ac9ba98d74fd850d331d3298212833e", null ], + [ "fop_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a564c7d941f5f339c0ed63712bdf96b29", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic64.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic64.js new file mode 100644 index 00000000000..6f6877cdd2a --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic64.js @@ -0,0 +1,5 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8atomic64 = +[ + [ "op_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9ac9ba98d74fd850d331d3298212833e", null ], + [ "fop_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a564c7d941f5f339c0ed63712bdf96b29", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8get.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8get.js new file mode 100644 index 00000000000..1133e1f6675 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8get.js @@ -0,0 +1,10 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8get = +[ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "min_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a57d02deb57ae536cf84940eff69270c0", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "opt_zcopy_align", "group___u_c_t___r_e_s_o_u_r_c_e.html#a130833876f7297c8711797fa51471539", null ], + [ "align_mtu", "group___u_c_t___r_e_s_o_u_r_c_e.html#a46a9c80802ec1ec433bbc251f69a8fdf", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8put.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8put.js new file mode 100644 index 00000000000..ef7778993d6 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8put.js @@ -0,0 +1,10 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8put = +[ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "min_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a57d02deb57ae536cf84940eff69270c0", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "opt_zcopy_align", "group___u_c_t___r_e_s_o_u_r_c_e.html#a130833876f7297c8711797fa51471539", null ], + [ "align_mtu", "group___u_c_t___r_e_s_o_u_r_c_e.html#a46a9c80802ec1ec433bbc251f69a8fdf", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag.js new file mode 100644 index 00000000000..50c75a11374 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag.js @@ -0,0 +1,6 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag = +[ + [ "recv", "group___u_c_t___r_e_s_o_u_r_c_e.html#af701fee85540b78d08cb276d14953d58", null ], + [ "eager", "group___u_c_t___r_e_s_o_u_r_c_e.html#a5b154520a22cb4ca5f8505fb0525abe6", null ], + [ "rndv", "group___u_c_t___r_e_s_o_u_r_c_e.html#acdccd5548d60bc2d32ec34d59ecce438", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8eager.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8eager.js new file mode 100644 index 00000000000..9a105711e80 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8eager.js @@ -0,0 +1,7 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8eager = +[ + [ "max_short", "group___u_c_t___r_e_s_o_u_r_c_e.html#a003a57a3795b6dc103dd4b2425a3b117", null ], + [ "max_bcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6208b0725f6589002067bcdcef09118f", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8recv.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8recv.js new file mode 100644 index 00000000000..7494f95cc2c --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8recv.js @@ -0,0 +1,7 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8recv = +[ + [ "min_recv", "group___u_c_t___r_e_s_o_u_r_c_e.html#ac973fbf126e5918d28ed7f81ad886553", null ], + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ], + [ "max_outstanding", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab96937da3ef792334de90211006268f7", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8rndv.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8rndv.js new file mode 100644 index 00000000000..db8949041fa --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8rndv.js @@ -0,0 +1,6 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__attr_8cap_8tag_8rndv = +[ + [ "max_zcopy", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6bab79a6aa78d3f8113e01f4687e58b3", null ], + [ "max_hdr", "group___u_c_t___r_e_s_o_u_r_c_e.html#aa84fcfd6201c2b55787abdea4b1e6f34", null ], + [ "max_iov", "group___u_c_t___r_e_s_o_u_r_c_e.html#a0a46d1ac3838667aa1ab96b278ed8b51", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params.js new file mode 100644 index 00000000000..0b4b4af5a17 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params.js @@ -0,0 +1,22 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params = +[ + [ "field_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9e1d45a55b7e9629eb548f27bea940a0", null ], + [ "cpu_mask", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7093f64ec5efe2f1c3833dbe90b9099a", null ], + [ "open_mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7db3b0fb2bbde6b4625ad5a6c5e1a043", null ], + [ "mode", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7fa862d179a7605eef34de73e11869fe", null ], + [ "stats_root", "group___u_c_t___r_e_s_o_u_r_c_e.html#a6d87dd22dc349557a706bb25d49975f0", null ], + [ "rx_headroom", "group___u_c_t___r_e_s_o_u_r_c_e.html#aea4ca94171e8dfe3e80abb74a06fe333", null ], + [ "err_handler_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#abd1425d7ce0507acc97361abc56ea66d", null ], + [ "err_handler", "group___u_c_t___r_e_s_o_u_r_c_e.html#afc90f76dc754aa478af524ac7c9d3f51", null ], + [ "err_handler_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a01b7ef6558dbe6f91ac5c59b63d5e0dd", null ], + [ "eager_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#a7c6b1ea224405a00438306212d30a172", null ], + [ "eager_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3e70569e1bf8a8d62fbc686dd147fd56", null ], + [ "rndv_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#afbeb49c7a773e6d61eaba872535809e8", null ], + [ "rndv_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#aee589d588ff4207d4fcf0d147479facd", null ], + [ "async_event_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#a678662e17ae32ca245a45d449ea497f0", null ], + [ "async_event_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#ab15b293126224a46cd25af411f75d39b", null ], + [ "keepalive_interval", "group___u_c_t___r_e_s_o_u_r_c_e.html#afbbbea17089ee8ff5ef0ef6ef3199cfe", null ], + [ "am_alignment", "group___u_c_t___r_e_s_o_u_r_c_e.html#a578571513991a26e7d0331b439968948", null ], + [ "am_align_offset", "group___u_c_t___r_e_s_o_u_r_c_e.html#a119e07151f7cfc215fdf86724cccf1f9", null ], + [ "features", "group___u_c_t___r_e_s_o_u_r_c_e.html#a967dbb2a49191e0b028f7058938293c6", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8device.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8device.js new file mode 100644 index 00000000000..2015e27c5fa --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8device.js @@ -0,0 +1,5 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8device = +[ + [ "tl_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a014d3b92d61614fb65175a049548627c", null ], + [ "dev_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a2fc9141c264d49c58c0377dd85b43744", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8sockaddr.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8sockaddr.js new file mode 100644 index 00000000000..6f592ebfc05 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8sockaddr.js @@ -0,0 +1,7 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iface__params_8mode_8sockaddr = +[ + [ "listen_sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a5bc951a80626f79c6da054b5a09990cd", null ], + [ "conn_request_arg", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad80d0ef2043347df663b059b9f103bcd", null ], + [ "conn_request_cb", "group___u_c_t___r_e_s_o_u_r_c_e.html#a191b74a436fbf612740a10737cc930c2", null ], + [ "cb_flags", "group___u_c_t___r_e_s_o_u_r_c_e.html#a8a9d798e64e80303680078082cf16dbb", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iov.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iov.js new file mode 100644 index 00000000000..878b3dc981f --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__iov.js @@ -0,0 +1,8 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__iov = +[ + [ "buffer", "group___u_c_t___r_e_s_o_u_r_c_e.html#a315a759f0ec81b26fcba7530e43d9149", null ], + [ "length", "group___u_c_t___r_e_s_o_u_r_c_e.html#ad00b6e55c209c6abc87b091f4c776cd5", null ], + [ "memh", "group___u_c_t___r_e_s_o_u_r_c_e.html#a9a24e4be8303ebd6906bcaff37ab31f7", null ], + [ "stride", "group___u_c_t___r_e_s_o_u_r_c_e.html#a21ea5b278cab407db05eaa3dce3b2824", null ], + [ "count", "group___u_c_t___r_e_s_o_u_r_c_e.html#addb247a8d80907156df00159bbafcda5", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__md__resource__desc.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__md__resource__desc.js new file mode 100644 index 00000000000..3f4c62f67ea --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__md__resource__desc.js @@ -0,0 +1,4 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__md__resource__desc = +[ + [ "md_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a44245b18bf7151a4bde8cb4c0112f8cb", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__pending__req.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__pending__req.js new file mode 100644 index 00000000000..f52aad8dc36 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__pending__req.js @@ -0,0 +1,5 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__pending__req = +[ + [ "func", "group___u_c_t___r_e_s_o_u_r_c_e.html#a638accaa60c4c3f373c6d12c2ea74c6c", null ], + [ "priv", "group___u_c_t___r_e_s_o_u_r_c_e.html#a3541a702c8158a6d557ce30cec1863b1", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__tl__resource__desc.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__tl__resource__desc.js new file mode 100644 index 00000000000..be33c9eead1 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_structuct__tl__resource__desc.js @@ -0,0 +1,7 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_structuct__tl__resource__desc = +[ + [ "tl_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a97eefc21494ace8e0ca2598eb8085001", null ], + [ "dev_name", "group___u_c_t___r_e_s_o_u_r_c_e.html#a19260a4faff281f45363008cbcaa0f41", null ], + [ "dev_type", "group___u_c_t___r_e_s_o_u_r_c_e.html#a83b6513b96f2a97a82dcd3ab751c996a", null ], + [ "sys_device", "group___u_c_t___r_e_s_o_u_r_c_e.html#a1e3ce2607f86f8faf1eacf0b91636e27", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_unionuct__iface__params_8mode.js b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_unionuct__iface__params_8mode.js new file mode 100644 index 00000000000..ce35dee3846 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_e_s_o_u_r_c_e_unionuct__iface__params_8mode.js @@ -0,0 +1,5 @@ +var group___u_c_t___r_e_s_o_u_r_c_e_unionuct__iface__params_8mode = +[ + [ "device", "group___u_c_t___r_e_s_o_u_r_c_e.html#a913f9c49dcb544e2087cee284f4a00b7", null ], + [ "sockaddr", "group___u_c_t___r_e_s_o_u_r_c_e.html#a48bf0900b6d58aadfcae19eef1faccf2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___r_m_a.html b/api/v1.14/html/group___u_c_t___r_m_a.html new file mode 100644 index 00000000000..242718185df --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_m_a.html @@ -0,0 +1,456 @@ + + + + + + +UCX: UCT Remote memory access operations + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
UCT Remote memory access operations
+
+
+ + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_ep_put_short (uct_ep_h ep, const void *buffer, unsigned length, uint64_t remote_addr, uct_rkey_t rkey)
 
ssize_t uct_ep_put_bcopy (uct_ep_h ep, uct_pack_callback_t pack_cb, void *arg, uint64_t remote_addr, uct_rkey_t rkey)
 
ucs_status_t uct_ep_put_zcopy (uct_ep_h ep, const uct_iov_t *iov, size_t iovcnt, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
 Write data to remote memory while avoiding local memory copy. More...
 
ucs_status_t uct_ep_get_short (uct_ep_h ep, void *buffer, unsigned length, uint64_t remote_addr, uct_rkey_t rkey)
 
ucs_status_t uct_ep_get_bcopy (uct_ep_h ep, uct_unpack_callback_t unpack_cb, void *arg, size_t length, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
 
ucs_status_t uct_ep_get_zcopy (uct_ep_h ep, const uct_iov_t *iov, size_t iovcnt, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
 Read data from remote memory while avoiding local memory copy. More...
 
+

Detailed Description

+

Defines remote memory access operations.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_put_short (uct_ep_h ep,
const void * buffer,
unsigned length,
uint64_t remote_addr,
uct_rkey_t rkey 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ssize_t uct_ep_put_bcopy (uct_ep_h ep,
uct_pack_callback_t pack_cb,
void * arg,
uint64_t remote_addr,
uct_rkey_t rkey 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_put_zcopy (uct_ep_h ep,
const uct_iov_tiov,
size_t iovcnt,
uint64_t remote_addr,
uct_rkey_t rkey,
uct_completion_tcomp 
)
+
+

The input data in iov array of uct_iov_t structures sent to remote address ("gather output"). Buffers in iov are processed in array order. This means that the function complete iov[0] before proceeding to iov[1], and so on.

+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]iovPoints to an array of uct_iov_t structures. The iov pointer must be a valid address of an array of uct_iov_t structures. A particular structure pointer must be a valid address. A NULL terminated array is not required.
[in]iovcntSize of the iov data uct_iov_t structures array. If iovcnt is zero, the data is considered empty. iovcnt is limited by uct_iface_attr::cap::put::max_iov.
[in]remote_addrRemote address to place the iov data.
[in]rkeyRemote key descriptor provided by uct_rkey_unpack
[in]compCompletion handle as defined by uct_completion_t.
+
+
+
Returns
UCS_INPROGRESS Some communication operations are still in progress. If non-NULL comp is provided, it will be updated upon completion of these operations.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_get_short (uct_ep_h ep,
void * buffer,
unsigned length,
uint64_t remote_addr,
uct_rkey_t rkey 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_get_bcopy (uct_ep_h ep,
uct_unpack_callback_t unpack_cb,
void * arg,
size_t length,
uint64_t remote_addr,
uct_rkey_t rkey,
uct_completion_tcomp 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_get_zcopy (uct_ep_h ep,
const uct_iov_tiov,
size_t iovcnt,
uint64_t remote_addr,
uct_rkey_t rkey,
uct_completion_tcomp 
)
+
+

The output data in iov array of uct_iov_t structures received from remote address ("scatter input"). Buffers in iov are processed in array order. This means that the function complete iov[0] before proceeding to iov[1], and so on.

+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]iovPoints to an array of uct_iov_t structures. The iov pointer must be a valid address of an array of uct_iov_t structures. A particular structure pointer must be a valid address. A NULL terminated array is not required.
[in]iovcntSize of the iov data uct_iov_t structures array. If iovcnt is zero, the data is considered empty. iovcnt is limited by uct_iface_attr::cap::get::max_iov.
[in]remote_addrRemote address of the data placed to the iov.
[in]rkeyRemote key descriptor provided by uct_rkey_unpack
[in]compCompletion handle as defined by uct_completion_t.
+
+
+
Returns
UCS_INPROGRESS Some communication operations are still in progress. If non-NULL comp is provided, it will be updated upon completion of these operations.
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___r_m_a.js b/api/v1.14/html/group___u_c_t___r_m_a.js new file mode 100644 index 00000000000..525b0af6e92 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___r_m_a.js @@ -0,0 +1,9 @@ +var group___u_c_t___r_m_a = +[ + [ "uct_ep_put_short", "group___u_c_t___r_m_a.html#ga2dfc08ad6547e081cddd7457c19417b1", null ], + [ "uct_ep_put_bcopy", "group___u_c_t___r_m_a.html#gad0b6f7d4ad48f672e20ff70c8e0faadc", null ], + [ "uct_ep_put_zcopy", "group___u_c_t___r_m_a.html#gaed8c42bab761c97bc0a1516fbf552583", null ], + [ "uct_ep_get_short", "group___u_c_t___r_m_a.html#gaed5201516e35d10605e5db1fd0dea674", null ], + [ "uct_ep_get_bcopy", "group___u_c_t___r_m_a.html#ga82b06eb1ca3be490d39c70a664f12742", null ], + [ "uct_ep_get_zcopy", "group___u_c_t___r_m_a.html#ga535095dfcb356cfab17c319f7993d53a", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/group___u_c_t___t_a_g.html b/api/v1.14/html/group___u_c_t___t_a_g.html new file mode 100644 index 00000000000..2983271f005 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___t_a_g.html @@ -0,0 +1,718 @@ + + + + + + +UCX: UCT Tag matching operations + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ + + + + +

+Data Structures

struct  uct_tag_context
 Posted tag context. More...
 
+ + + + + + + +

+Typedefs

typedef ucs_status_t(* uct_tag_unexp_eager_cb_t) (void *arg, void *data, size_t length, unsigned flags, uct_tag_t stag, uint64_t imm, void **context)
 Callback to process unexpected eager tagged message. More...
 
typedef ucs_status_t(* uct_tag_unexp_rndv_cb_t) (void *arg, unsigned flags, uint64_t stag, const void *header, unsigned header_length, uint64_t remote_addr, size_t length, const void *rkey_buf)
 Callback to process unexpected rendezvous tagged message. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

ucs_status_t uct_ep_tag_eager_short (uct_ep_h ep, uct_tag_t tag, const void *data, size_t length)
 Short eager tagged-send operation. More...
 
ssize_t uct_ep_tag_eager_bcopy (uct_ep_h ep, uct_tag_t tag, uint64_t imm, uct_pack_callback_t pack_cb, void *arg, unsigned flags)
 Bcopy eager tagged-send operation. More...
 
ucs_status_t uct_ep_tag_eager_zcopy (uct_ep_h ep, uct_tag_t tag, uint64_t imm, const uct_iov_t *iov, size_t iovcnt, unsigned flags, uct_completion_t *comp)
 Zcopy eager tagged-send operation. More...
 
ucs_status_ptr_t uct_ep_tag_rndv_zcopy (uct_ep_h ep, uct_tag_t tag, const void *header, unsigned header_length, const uct_iov_t *iov, size_t iovcnt, unsigned flags, uct_completion_t *comp)
 Rendezvous tagged-send operation. More...
 
ucs_status_t uct_ep_tag_rndv_cancel (uct_ep_h ep, void *op)
 Cancel outstanding rendezvous operation. More...
 
ucs_status_t uct_ep_tag_rndv_request (uct_ep_h ep, uct_tag_t tag, const void *header, unsigned header_length, unsigned flags)
 Send software rendezvous request. More...
 
ucs_status_t uct_iface_tag_recv_zcopy (uct_iface_h iface, uct_tag_t tag, uct_tag_t tag_mask, const uct_iov_t *iov, size_t iovcnt, uct_tag_context_t *ctx)
 Post a tag to a transport interface. More...
 
ucs_status_t uct_iface_tag_recv_cancel (uct_iface_h iface, uct_tag_context_t *ctx, int force)
 Cancel a posted tag. More...
 
+

Detailed Description

+

Defines tag matching operations.

+

Typedef Documentation

+ +
+
+ + + + +
typedef ucs_status_t(* uct_tag_unexp_eager_cb_t) (void *arg, void *data, size_t length, unsigned flags, uct_tag_t stag, uint64_t imm, void **context)
+
+

This callback is invoked when tagged message sent by eager protocol has arrived and no corresponding tag has been posted.

+
Note
The callback is always invoked from the context (thread, process) that called uct_iface_progress().
+
+It is allowed to call other communication routines from the callback.
+
Parameters
+ + + + + + + + +
[in]argUser-defined argument
[in]dataPoints to the received unexpected data.
[in]lengthLength of data.
[in]flagsMask with uct_cb_param_flags flags. If it contains UCT_CB_PARAM_FLAG_DESC value, this means data is part of a descriptor which must be released later using uct_iface_release_desc by the user if the callback returns UCS_INPROGRESS.
[in]stagTag from sender.
[in]immImmediate data from sender.
[in,out]contextStorage for a per-message user-defined context. In this context, the message is defined by the sender side as a single call to uct_ep_tag_eager_short/bcopy/zcopy. On the transport level the message can be fragmented and delivered to the target over multiple fragments. The fragments will preserve the original order of the message. Each fragment will result in invocation of the above callback. The user can use UCT_CB_PARAM_FLAG_FIRST to identify the first fragment, allocate the context object and use the context as a token that is set by the user and passed to subsequent callbacks of the same message. The user is responsible for allocation and release of the context.
+
+
+
Note
No need to allocate the context in the case of a single fragment message (i.e. flags contains UCT_CB_PARAM_FLAG_FIRST, but does not contain UCT_CB_PARAM_FLAG_MORE).
+
Return values
+ + + +
UCS_OK- data descriptor was consumed, and can be released by the caller.
UCS_INPROGRESS- data descriptor is owned by the callee, and will be released later.
+
+
+ +
+
+ +
+
+ + + + +
typedef ucs_status_t(* uct_tag_unexp_rndv_cb_t) (void *arg, unsigned flags, uint64_t stag, const void *header, unsigned header_length, uint64_t remote_addr, size_t length, const void *rkey_buf)
+
+

This callback is invoked when rendezvous send notification has arrived and no corresponding tag has been posted.

+
Note
The callback is always invoked from the context (thread, process) that called uct_iface_progress().
+
+It is allowed to call other communication routines from the callback.
+
Parameters
+ + + + + + + + + +
[in]argUser-defined argument
[in]flagsMask with uct_cb_param_flags
[in]stagTag from sender.
[in]headerUser defined header.
[in]header_lengthUser defined header length in bytes.
[in]remote_addrSender's buffer virtual address.
[in]lengthSender's buffer length.
[in]rkey_bufSender's buffer packed remote key. It can be passed to uct_rkey_unpack() to create uct_rkey_t.
+
+
+
Warning
If the user became the owner of the desc (by returning UCS_INPROGRESS) the descriptor must be released later by uct_iface_release_desc by the user.
+
Return values
+ + + +
UCS_OK- descriptor was consumed, and can be released by the caller.
UCS_INPROGRESS- descriptor is owned by the callee, and would be released later.
+
+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_tag_eager_short (uct_ep_h ep,
uct_tag_t tag,
const void * data,
size_t length 
)
+
+

This routine sends a message using short eager protocol. Eager protocol means that the whole data is sent to the peer immediately without any preceding notification. The data is provided as buffer and its length,and must not be larger than the corresponding max_short value in uct_iface_attr. The immediate value delivered to the receiver is implicitly equal to 0. If it's required to pass nonzero imm value, uct_ep_tag_eager_bcopy should be used.

+
Parameters
+ + + + + +
[in]epDestination endpoint handle.
[in]tagTag to use for the eager message.
[in]dataData to send.
[in]lengthData length.
+
+
+
Returns
UCS_OK - operation completed successfully.
+
+UCS_ERR_NO_RESOURCE - could not start the operation due to lack of send resources.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ssize_t uct_ep_tag_eager_bcopy (uct_ep_h ep,
uct_tag_t tag,
uint64_t imm,
uct_pack_callback_t pack_cb,
void * arg,
unsigned flags 
)
+
+

This routine sends a message using bcopy eager protocol. Eager protocol means that the whole data is sent to the peer immediately without any preceding notification. Custom data callback is used to copy the data to the network buffers.

+
Note
The resulted data length must not be larger than the corresponding max_bcopy value in uct_iface_attr.
+
Parameters
+ + + + + + + +
[in]epDestination endpoint handle.
[in]tagTag to use for the eager message.
[in]immImmediate value which will be available to the receiver.
[in]pack_cbUser callback to pack the data.
[in]argCustom argument to pack_cb.
[in]flagsTag message flags, see uct_msg_flags.
+
+
+
Returns
>=0 - The size of the data packed by pack_cb.
+
+otherwise - Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_tag_eager_zcopy (uct_ep_h ep,
uct_tag_t tag,
uint64_t imm,
const uct_iov_tiov,
size_t iovcnt,
unsigned flags,
uct_completion_tcomp 
)
+
+

This routine sends a message using zcopy eager protocol. Eager protocol means that the whole data is sent to the peer immediately without any preceding notification. The input data (which has to be previously registered) in iov array of uct_iov_t structures sent to remote side ("gather output"). Buffers in iov are processed in array order, so the function complete iov[0] before proceeding to iov[1], and so on.

+
Note
The resulted data length must not be larger than the corresponding max_zcopy value in uct_iface_attr.
+
Parameters
+ + + + + + + + +
[in]epDestination endpoint handle.
[in]tagTag to use for the eager message.
[in]immImmediate value which will be available to the receiver.
[in]iovPoints to an array of uct_iov_t structures. A particular structure pointer must be a valid address. A NULL terminated array is not required.
[in]iovcntSize of the iov array. If iovcnt is zero, the data is considered empty. Note that iovcnt is limited by the corresponding max_iov value in uct_iface_attr.
[in]flagsTag message flags, see uct_msg_flags.
[in]compCompletion callback which will be called when the data is reliably received by the peer, and the buffer can be reused or invalidated.
+
+
+
Returns
UCS_OK - operation completed successfully.
+
+UCS_ERR_NO_RESOURCE - could not start the operation due to lack of send resources.
+
+UCS_INPROGRESS - operation started, and comp will be used to notify when it's completed.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_ptr_t uct_ep_tag_rndv_zcopy (uct_ep_h ep,
uct_tag_t tag,
const void * header,
unsigned header_length,
const uct_iov_tiov,
size_t iovcnt,
unsigned flags,
uct_completion_tcomp 
)
+
+

This routine sends a message using rendezvous protocol. Rendezvous protocol means that only a small notification is sent at first, and the data itself is transferred later (when there is a match) to avoid extra memory copy.

+
Note
The header will be available to the receiver in case of unexpected rendezvous operation only, i.e. the peer has not posted tag for this message yet (by means of uct_iface_tag_recv_zcopy), when it is arrived.
+
Parameters
+ + + + + + + + + +
[in]epDestination endpoint handle.
[in]tagTag to use for the eager message.
[in]headerUser defined header.
[in]header_lengthUser defined header length in bytes. Note that it is limited by the corresponding max_hdr value in uct_iface_attr.
[in]iovPoints to an array of uct_iov_t structures. A particular structure pointer must be valid address. A NULL terminated array is not required.
[in]iovcntSize of the iov array. If iovcnt is zero, the data is considered empty. Note that iovcnt is limited by the corresponding max_iov value in uct_iface_attr.
[in]flagsTag message flags, see uct_msg_flags.
[in]compCompletion callback which will be called when the data is reliably received by the peer, and the buffer can be reused or invalidated.
+
+
+
Returns
>=0 - The operation is in progress and the return value is a handle which can be used to cancel the outstanding rendezvous operation.
+
+otherwise - Error code.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_tag_rndv_cancel (uct_ep_h ep,
void * op 
)
+
+

This routine signals the underlying transport disregard the outstanding operation without calling completion callback provided in uct_ep_tag_rndv_zcopy.

+
Note
The operation handle should be valid at the time the routine is invoked. I.e. it should be a handle of the real operation which is not completed yet.
+
Parameters
+ + + +
[in]epDestination endpoint handle.
[in]opRendezvous operation handle, as returned from uct_ep_tag_rndv_zcopy.
+
+
+
Returns
UCS_OK - The operation has been canceled.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_ep_tag_rndv_request (uct_ep_h ep,
uct_tag_t tag,
const void * header,
unsigned header_length,
unsigned flags 
)
+
+

This routine sends a rendezvous request only, which indicates that the data transfer should be completed in software.

+
Parameters
+ + + + + + +
[in]epDestination endpoint handle.
[in]tagTag to use for matching.
[in]headerUser defined header
[in]header_lengthUser defined header length in bytes. Note that it is limited by the corresponding max_hdr value in uct_iface_attr.
[in]flagsTag message flags, see uct_msg_flags.
+
+
+
Returns
UCS_OK - operation completed successfully.
+
+UCS_ERR_NO_RESOURCE - could not start the operation due to lack of send resources.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_tag_recv_zcopy (uct_iface_h iface,
uct_tag_t tag,
uct_tag_t tag_mask,
const uct_iov_tiov,
size_t iovcnt,
uct_tag_context_tctx 
)
+
+

This routine posts a tag to be matched on a transport interface. When a message with the corresponding tag arrives it is stored in the user buffer (described by iov and iovcnt) directly. The operation completion is reported using callbacks on the ctx structure.

+
Parameters
+ + + + + + + +
[in]ifaceInterface to post the tag on.
[in]tagTag to expect.
[in]tag_maskMask which specifies what bits of the tag to compare.
[in]iovPoints to an array of uct_iov_t structures. The iov pointer must be a valid address of an array of uct_iov_t structures. A particular structure pointer must be a valid address. A NULL terminated array is not required.
[in]iovcntSize of the iov data uct_iov_t structures array. If iovcnt is zero, the data is considered empty. iovcnt is limited by uct_iface_attr::cap::tag::max_iov.
[in,out]ctxContext associated with this particular tag, "priv" field in this structure is used to track the state internally.
+
+
+
Returns
UCS_OK - The tag is posted to the transport.
+
+UCS_ERR_NO_RESOURCE - Could not start the operation due to lack of resources.
+
+UCS_ERR_EXCEEDS_LIMIT - No more room for tags in the transport.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
ucs_status_t uct_iface_tag_recv_cancel (uct_iface_h iface,
uct_tag_context_tctx,
int force 
)
+
+

This routine cancels a tag, which was previously posted by uct_iface_tag_recv_zcopy. The tag would be either matched or canceled, in a bounded time, regardless of the peer actions. The original completion callback of the tag would be called with the status if force is not set.

+
Parameters
+ + + + +
[in]ifaceInterface to cancel the tag on.
[in]ctxTag context which was used for posting the tag. If force is 0, ctx->completed_cb will be called with either UCS_OK which means the tag was matched and data received despite the cancel request, or UCS_ERR_CANCELED which means the tag was successfully canceled before it was matched.
[in]forceWhether to report completions to ctx->completed_cb. If nonzero, the cancel is assumed to be successful, and the callback is not called.
+
+
+
Returns
UCS_OK - The tag is canceled in the transport.
+ +
+
+
+
+ + + + diff --git a/api/v1.14/html/group___u_c_t___t_a_g.js b/api/v1.14/html/group___u_c_t___t_a_g.js new file mode 100644 index 00000000000..af504a2d1b4 --- /dev/null +++ b/api/v1.14/html/group___u_c_t___t_a_g.js @@ -0,0 +1,19 @@ +var group___u_c_t___t_a_g = +[ + [ "uct_tag_context", "structuct__tag__context.html", [ + [ "tag_consumed_cb", "structuct__tag__context.html#a860b64e8963cbf48fb192045ec2d6689", null ], + [ "completed_cb", "structuct__tag__context.html#a8a872809ba82414123000deeb3f8dd2f", null ], + [ "rndv_cb", "structuct__tag__context.html#a64008d8faf823d5d2be97cb16854c308", null ], + [ "priv", "structuct__tag__context.html#a50355288112c6e3218f9b63f3b49be91", null ] + ] ], + [ "uct_tag_unexp_eager_cb_t", "group___u_c_t___t_a_g.html#ga4ba3d3c3d35e02d9d6952d927c9b53bd", null ], + [ "uct_tag_unexp_rndv_cb_t", "group___u_c_t___t_a_g.html#ga8534a90a1887092c91c4bcaf029ac6fd", null ], + [ "uct_ep_tag_eager_short", "group___u_c_t___t_a_g.html#ga5e595ff1d9e77bd5b4abe84fae3ac117", null ], + [ "uct_ep_tag_eager_bcopy", "group___u_c_t___t_a_g.html#ga08d520cd093b8c661c3f5a3bd863b7c2", null ], + [ "uct_ep_tag_eager_zcopy", "group___u_c_t___t_a_g.html#gaab6efb1df0527e53a0c1528cc80f64e4", null ], + [ "uct_ep_tag_rndv_zcopy", "group___u_c_t___t_a_g.html#ga897e5cfaa4998fdcb36128624635460a", null ], + [ "uct_ep_tag_rndv_cancel", "group___u_c_t___t_a_g.html#gaee99ff7af5b69b653977e4db2b5fef8b", null ], + [ "uct_ep_tag_rndv_request", "group___u_c_t___t_a_g.html#ga0b01e46c59a9d713495e4be1cdc6edda", null ], + [ "uct_iface_tag_recv_zcopy", "group___u_c_t___t_a_g.html#gac4ba076343a68f330e5c4659d38bb383", null ], + [ "uct_iface_tag_recv_cancel", "group___u_c_t___t_a_g.html#gad2448d4cf5325dec5aa9c69ae4a025e1", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/index.html b/api/v1.14/html/index.html new file mode 100644 index 00000000000..00464d3cf3d --- /dev/null +++ b/api/v1.14/html/index.html @@ -0,0 +1,137 @@ + + + + + + +UCX: Preface + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Preface
+
+
+

+Scope of the Document

+

This document describes the UCX programming interface. The programming interface exposes a high performance communication API, which provides basic building blocks for PGAS, Message Passing Interface (MPI), Big-Data, Analytics, File I/O, and storage library developers.

+

+Audience

+

This manual is intended for programmers who want to develop parallel programming models like OpenSHMEM, MPI, UPC, Chapel, etc. The manual assumes that the reader is familiar with the following:

    +
  • Basic concepts of two-sided, one-sided, atomic, and collective operations
  • +
  • C programming language
  • +
+

+Document Status

+

This section briefly describes a list of open issues in the UCX specification.

    +
  • UCP API - work in progress
  • +
  • UCT API - work in progress
  • +
+

+License

+

UCX project follows open source development model and the software is licensed under BSD-3 license.

+
+
+ + + + diff --git a/api/v1.14/html/jquery.js b/api/v1.14/html/jquery.js new file mode 100644 index 00000000000..1f4d0b47cec --- /dev/null +++ b/api/v1.14/html/jquery.js @@ -0,0 +1,68 @@ +/*! + * jQuery JavaScript Library v1.7.1 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Mon Nov 21 21:11:03 2011 -0500 + */ +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
t
";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*! + * jQuery UI Widget 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Widget + */ +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*! + * jQuery UI Mouse 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Mouse + * + * Depends: + * jquery.ui.widget.js + */ +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*! + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
+
+
Conventions and Notations
+
+
+

This section describes the conventions and notations in the UCX specification.

+

+Blocking Behavior

+

The blocking UCX routines return only when a UCX operation is complete. After the return, the resources used in the UCX routine are available for reuse.

+

+Non-blocking Behavior

+

The non-blocking UCX routines return immediately, independent of operation completion. After the return, the resources used for the routines are not necessarily available for reuse.

+

+Fairness

+

UCX routines do not guarantee fairness. However, the routines enable UCX consumers to write efficient and fair programs.

+

+Interaction with Signal Handler Functions

+

If UCX routines are invoked from a signal handler function, the behavior of the program is undefined.

+
+ + + + + diff --git a/api/v1.14/html/md_docs_doxygen_design.html b/api/v1.14/html/md_docs_doxygen_design.html new file mode 100644 index 00000000000..741f27e2e79 --- /dev/null +++ b/api/v1.14/html/md_docs_doxygen_design.html @@ -0,0 +1,147 @@ + + + + + + +UCX: Design + + + + + + + + + + + + + + + +
+
+
+ + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+ + + + + + +
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Design
+
+
+

The UCX framework consists of the three main components: UC-Services (UCS), UC-Transports (UCT), and UC-Protocols (UCP). Each one of these components exports a public API, and can be used as a stand-alone library.

+
+Architecture.png +
+UCX Framework Architecture
+

+UCS

+

UCS is a service layer that provides the necessary functionality for implementing portable and efficient utilities. This layer includes the following services:

    +
  • an abstraction for accessing platform specific functionality (atomic operations, thread safety, etc.),
  • +
  • tools for efficient memory management (memory pools, memory allocators, and memory allocators hooks),
  • +
  • commonly used data structures (hashes, trees, lists).
  • +
+

+UCT

+

UCT is a transport layer that abstracts the differences across various hardware architectures and provides a low-level API that enables the implementation of communication protocols. The primary goal of the layer is to provide direct and efficient access to hardware network functionality. For this purpose, UCT relies on vendor provided low-level drivers such as uGNI, Verbs, shared memory, ROCM, CUDA. In addition, the layer provides constructs for communication context management (thread-based and application level), and allocation and management of device-specific memories including those found in accelerators. In terms of communication APIs, UCT defines interfaces for immediate (short), buffered copy-and-send (bcopy), and zero-copy (zcopy) communication operations.

+

Short: This type of operation is optimized for small messages that can be posted and completed in place.

+

Bcopy: This type of operation is optimized for medium size messages that are typically sent through a so-called bouncing-buffer. This auxiliary buffer is typically allocated given network constraints and ready for immediate utilization by the hardware. Since a custom data packing routine could be provided, this method can be used for non-contiguous i/o.

+

Zcopy: This type of operation exposes zero-copy memory-to-memory communication semantics, which means that message is sent directly from user buffer, or received directly to user buffer, without being copied between the network layers.

+

+UCP

+

UCP implements higher-level protocols that are typically used by message passing (MPI) and PGAS programming models by using lower-level capabilities exposed through the UCT layer. UCP is provides the following functionality: ability to select different transports for communication, message fragmentation, multi-rail communication, and initializing and finalizing the library. Currently, the API has the following classes of interfaces: Initialization, Remote Memory Access (RMA) communication, Atomic Memory Operations (AMO), Active Message, Tag-Matching, and Collectives.

+

Initialization: This subset of interfaces defines the communication context setup, queries the network capabilities, and initializes the local communication endpoints. The context represented by the UCX context is an abstraction of the network transport resources. The communication endpoint setup interfaces initialize the UCP endpoint, which is an abstraction of all the necessary resources associated with a particular connection. The communication endpoints are used as input to all communication operations to describe the source and destination of the communication.

+

RMA: This subset of interfaces defines one-sided communication operations such as PUT and GET, required for implementing low overhead, direct memory access communications constructs needed by both distributed and shared memory programming models. UCP includes a separate set of interfaces for communicating non-contiguous data. This functionality was included to support various programming models' communication requirements and leverage the scatter/gather capabilities of modern network hardware.

+

AMO: This subset of interfaces provides support for atomically performing operations on the remote memory, an important class of operations for PGAS programming models, particularly OpenSHMEM.

+

Tag Matching: This interface supports tag-matching for send-receive semantics which is a key communication semantic defined by the MPI specification.

+

Stream : The API provides order and reliable communication semantics. Data is treated as an ordered sequence of bytes pushed through the connection. In contrast of tag-matching interface, the size of each individual send does not necessarily have to match the size of each individual receive, as long as the total number of bytes is the same. This API is designed to match widely used BSD-socket based programming models.

+

Active Message: A subset of functionality where the incoming packet invokes a sender-specified callback in order to be processed by the receiving process. As an example, the two-sided MPI interface can easily be implemented on top of such a concept (TBD: cite openmpi ). However, these interfaces are more general and suited for other programming paradigms where the receiver process does not prepost receives, but expects to react to incoming packets directly. Like RMA and tag-matching interfaces, the active message interface provides separate APIs for different message types and non-contiguous data.

+

Collectives: This subset of interfaces defines group communication and synchronization operations. The collective operations include barrier, all-to-one, all-to-all, and reduction operations. When possible, we will take advantage of hardware acceleration for collectives (e.g., InfiniBand Switch collective acceleration).

+
+
+ + + + diff --git a/api/v1.14/html/md_docs_doxygen_intro.html b/api/v1.14/html/md_docs_doxygen_intro.html new file mode 100644 index 00000000000..ca6fa5c8691 --- /dev/null +++ b/api/v1.14/html/md_docs_doxygen_intro.html @@ -0,0 +1,143 @@ + + + + + + +UCX: Introduction + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Introduction
+
+
+

+Motivation

+

A communication middleware abstracts the vendor-specific software and hardware interfaces. They bridge the semantic and functionality gap between the programming models and the software and hardware network interfaces by providing data transfer interfaces and implementation, optimized protocols for data transfer between various memories, and managing network resources. There are many communication middleware APIs and libraries to support parallel programming models such as MPI, OpenSHMEM, and task-based models.

+

Current communication middleware designs typically take two approaches. First, communication middleware such as Intel's PSM (previously Qlogic), Mellanox's MXM, and IBM's PAMI provide high-performance implementations for specific network hardware. Second, communication middleware such as VMI, Cactus, ARMCI, GASNet, and Open MPI are tightly coupled to a specific programming model. Communication middleware designed with either of this design approach requires significant porting effort to move a new network interface or programming model.

+

To achieve functional and performance portability across architectures and programming models, we introduce Unified Communication X (UCX).

+

+UCX

+

Unified Communication X (UCX) is a set of network APIs and their implementations for high throughput computing. UCX is a combined effort of national laboratories, industry, and academia to design and implement a high-performing and highly-scalable network stack for next generation applications and systems. UCX design provides the ability to tailor its APIs and network functionality to suit a wide variety of application domains. We envision that these APIs will satisfy the networking needs of many programming models such as the Message Passing Interface (MPI), OpenSHMEM, Partitioned Global Address Space (PGAS) languages, task-based paradigms, and I/O bound applications.

+

The initial focus is on supporting semantics such as point-to-point communications (one-sided and two-sided), collective communication, and remote atomic operations required for popular parallel programming models. Also, the initial UCX reference implementation is targeted to support current network technologies such as:

    +
  • Open Fabrics - InfiniBand (Mellanox, Qlogic, IBM), iWARP, RoCE
  • +
  • Cray uGNI - GEMINI and ARIES interconnects
  • +
  • Shared memory (MMAP, Posix, CMA, KNEM, XPMEM, etc.)
  • +
  • Ethernet (TCP/UDP)
  • +
+

UCX design goals are focused on performance and scalability, while efficiently supporting popular and emerging programming models.

+

UCX's API and design do not impose architectural constraints on the network hardware nor require any specific capabilities to the support the programming model functionality. This is achieved by keeping the API flexible and ability to support the missing functionality efficiently in the software.

+

Extreme scalability is an important design goal for UCX. To achieve this, UCX follows these design principles:

    +
  • Minimal memory consumption : Design avoids data-structures that scale with the number of processing elements (i.e., order N data structures), and share resources among multiple programming models.
  • +
  • Low-latency Interfaces: Design provides at least two sets of APIs with one set focused on the performance, and the other focused on functionality.
  • +
  • High bandwidth - With minimal software overhead combined and support for multi-rail and multi-device capabilities, the design provides all the hooks that are necessary for exploiting hardware bandwidth capabilities.
  • +
  • Asynchronous Progress: API provides non-blocking communication interfaces and design supports asynchronous progress required for communication and computation overlap
  • +
  • Resilience - the API exposes communication control hooks required for fault tolerant communication library implementation.
  • +
+

UCX design provides native support for hybrid programming models. The design enables resource sharing, optimal memory usage, and progress engine coordination to efficiently implement hybrid programming models. For example, hybrid applications that use both OpenSHMEM and MPI programming models will be able to select between a single-shared UCX network context or a stand alone UCX network context for each one of them. Such flexibility, optimized resource sharing, and reduced memory consumption, improve network and application performance.

+
+
+ + + + diff --git a/api/v1.14/html/memory__type_8h_source.html b/api/v1.14/html/memory__type_8h_source.html new file mode 100644 index 00000000000..e0bf067e564 --- /dev/null +++ b/api/v1.14/html/memory__type_8h_source.html @@ -0,0 +1,129 @@ + + + + + + +UCX: memory_type.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
memory_type.h
+
+
+
1 
8 #ifndef UCS_MEMORY_TYPE_H_
9 #define UCS_MEMORY_TYPE_H_
10 
11 #include <ucs/sys/compiler_def.h>
12 
13 BEGIN_C_DECLS
14 
15 
19 #define UCS_MEMORY_TYPES_CPU_ACCESSIBLE \
20  (UCS_BIT(UCS_MEMORY_TYPE_HOST) | \
21  UCS_BIT(UCS_MEMORY_TYPE_ROCM_MANAGED))
22 
23 
27 #define ucs_memory_type_for_each(_x) \
28  for ((_x) = UCS_MEMORY_TYPE_HOST; (_x) < UCS_MEMORY_TYPE_LAST; (_x)++)
29 
30 
37 typedef enum ucs_memory_type {
46 
47 
51 extern const char *ucs_memory_type_names[];
52 
56 extern const char *ucs_memory_type_descs[];
57 
58 
59 END_C_DECLS
60 
61 #endif
Definition: memory_type.h:39
+
Definition: memory_type.h:42
+
Definition: memory_type.h:43
+
ucs_memory_type
Memory types.
Definition: memory_type.h:37
+
Definition: memory_type.h:44
+
enum ucs_memory_type ucs_memory_type_t
Memory types.
+
Definition: memory_type.h:38
+
Definition: memory_type.h:40
+
Definition: memory_type.h:41
+
+
+ + + + diff --git a/api/v1.14/html/modules.html b/api/v1.14/html/modules.html new file mode 100644 index 00000000000..d4985cb9f0b --- /dev/null +++ b/api/v1.14/html/modules.html @@ -0,0 +1,145 @@ + + + + + + +UCX: Programming Interface + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/api/v1.14/html/modules.js b/api/v1.14/html/modules.js new file mode 100644 index 00000000000..478a533ed08 --- /dev/null +++ b/api/v1.14/html/modules.js @@ -0,0 +1,6 @@ +var modules = +[ + [ "Unified Communication Protocol (UCP) API", "group___u_c_p___a_p_i.html", "group___u_c_p___a_p_i" ], + [ "Unified Communication Transport (UCT) API", "group___u_c_t___a_p_i.html", "group___u_c_t___a_p_i" ], + [ "Unified Communication Services (UCS) API", "group___u_c_s___a_p_i.html", "group___u_c_s___a_p_i" ] +]; \ No newline at end of file diff --git a/api/v1.14/html/namespace_3global_scope_4_structucs__callbackq.js b/api/v1.14/html/namespace_3global_scope_4_structucs__callbackq.js new file mode 100644 index 00000000000..18fd51f0e0f --- /dev/null +++ b/api/v1.14/html/namespace_3global_scope_4_structucs__callbackq.js @@ -0,0 +1,5 @@ +var namespace_3global_scope_4_structucs__callbackq = +[ + [ "fast_elems", "namespace_3global_scope_4.html#a00e13bcee0aa60124620ed02e5cd9116", null ], + [ "priv", "namespace_3global_scope_4.html#a328050e3952f5d3888c26b32946f3627", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/namespace_3global_scope_4_structucs__callbackq__elem.js b/api/v1.14/html/namespace_3global_scope_4_structucs__callbackq__elem.js new file mode 100644 index 00000000000..ae1d5ad8bec --- /dev/null +++ b/api/v1.14/html/namespace_3global_scope_4_structucs__callbackq__elem.js @@ -0,0 +1,7 @@ +var namespace_3global_scope_4_structucs__callbackq__elem = +[ + [ "cb", "namespace_3global_scope_4.html#a57233b5af77231c4fb6e8d0c7a9cf279", null ], + [ "arg", "namespace_3global_scope_4.html#a58d44a6931525b739c8dd932f369d917", null ], + [ "flags", "namespace_3global_scope_4.html#a3a0d3c938fef66985c8cf44071d23fd6", null ], + [ "id", "namespace_3global_scope_4.html#a12ff9e4e3560d4371a71e0549a6237d4", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/namespace_3global_scope_4_structucs__config__allow__list__t.js b/api/v1.14/html/namespace_3global_scope_4_structucs__config__allow__list__t.js new file mode 100644 index 00000000000..1f663333947 --- /dev/null +++ b/api/v1.14/html/namespace_3global_scope_4_structucs__config__allow__list__t.js @@ -0,0 +1,5 @@ +var namespace_3global_scope_4_structucs__config__allow__list__t = +[ + [ "array", "namespace_3global_scope_4.html#a03eca40e3a768d33654ae128d60df93b", null ], + [ "mode", "namespace_3global_scope_4.html#a080bacced54b2014f148e933d4dc3347", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/namespace_3global_scope_4_structucs__log__component__config.js b/api/v1.14/html/namespace_3global_scope_4_structucs__log__component__config.js new file mode 100644 index 00000000000..0c04b455589 --- /dev/null +++ b/api/v1.14/html/namespace_3global_scope_4_structucs__log__component__config.js @@ -0,0 +1,6 @@ +var namespace_3global_scope_4_structucs__log__component__config = +[ + [ "log_level", "namespace_3global_scope_4.html#ae279af7e4a426fe21bde0e83a2c423ae", null ], + [ "name", "namespace_3global_scope_4.html#ad3c3436563841e129767778aae615f8f", null ], + [ "file_filter", "namespace_3global_scope_4.html#a24ae3d6f63dc62e024f4dc9b3af519d2", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/namespace_3global_scope_4_structuct__ppn__bandwidth.js b/api/v1.14/html/namespace_3global_scope_4_structuct__ppn__bandwidth.js new file mode 100644 index 00000000000..aaf6f8d60b0 --- /dev/null +++ b/api/v1.14/html/namespace_3global_scope_4_structuct__ppn__bandwidth.js @@ -0,0 +1,5 @@ +var namespace_3global_scope_4_structuct__ppn__bandwidth = +[ + [ "dedicated", "namespace_3global_scope_4.html#ab415588ec7332c0264ac81d883dd7a8c", null ], + [ "shared", "namespace_3global_scope_4.html#ad2a5875d9c5c32357a72b42ec00c3b6d", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/nav_f.png b/api/v1.14/html/nav_f.png new file mode 100644 index 00000000000..72a58a529ed Binary files /dev/null and b/api/v1.14/html/nav_f.png differ diff --git a/api/v1.14/html/nav_g.png b/api/v1.14/html/nav_g.png new file mode 100644 index 00000000000..2093a237a94 Binary files /dev/null and b/api/v1.14/html/nav_g.png differ diff --git a/api/v1.14/html/nav_h.png b/api/v1.14/html/nav_h.png new file mode 100644 index 00000000000..33389b101d9 Binary files /dev/null and b/api/v1.14/html/nav_h.png differ diff --git a/api/v1.14/html/navtree.css b/api/v1.14/html/navtree.css new file mode 100644 index 00000000000..1a868b3fc18 --- /dev/null +++ b/api/v1.14/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 250px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/api/v1.14/html/navtree.js b/api/v1.14/html/navtree.js new file mode 100644 index 00000000000..9df45a7d82c --- /dev/null +++ b/api/v1.14/html/navtree.js @@ -0,0 +1,523 @@ +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does not work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + if (node.childrenData) { + var imgNode = document.createElement("img"); + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.width = 16; + imgNode.height = 22; + imgNode.border = 0; + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.src = node.relpath+"arrowright.png"; + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + imgNode.src = node.relpath+"arrowright.png"; + } else { + var span = document.createElement("span"); + span.style.display = 'inline-block'; + span.style.width = 16*(level+1)+'px'; + span.style.height = '22px'; + span.innerHTML = ' '; + domNode.appendChild(span); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) + { + pos = ancParent.position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath(pathName()); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"arrowdown.png"; + } else { + node.plus_img.src = node.relpath+"arrowdown.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = hashUrl(); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } + gotoAnchor(anchor,aname,false); +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath(pathName())+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).css({'display':'block'}); + node.plus_img.src = node.relpath+"arrowdown.png"; + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2(pathName())+hashUrl()); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"arrowright.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + $(window).load(function(){ + navTo(o,toroot,hashUrl(),relpath); + showRoot(); + }); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/ + + + + + +UCX: Related Pages + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+
+ + + + diff --git a/api/v1.14/html/resize.js b/api/v1.14/html/resize.js new file mode 100644 index 00000000000..2b86c36c633 --- /dev/null +++ b/api/v1.14/html/resize.js @@ -0,0 +1,97 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + var device = navigator.userAgent.toLowerCase(); + var ios = device.match(/(iphone|ipod|ipad)/); + if (ios) { + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + } + }); +} + + diff --git a/api/v1.14/html/search/all_0.html b/api/v1.14/html/search/all_0.html new file mode 100644 index 00000000000..d54e0bd8eab --- /dev/null +++ b/api/v1.14/html/search/all_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_0.js b/api/v1.14/html/search/all_0.js new file mode 100644 index 00000000000..ca68af90299 --- /dev/null +++ b/api/v1.14/html/search/all_0.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['accept_5fhandler',['accept_handler',['../group___u_c_p___w_o_r_k_e_r.html#a17487f0e8e3102519d7b512c77efdb1f',1,'ucp_listener_params']]], + ['addr',['addr',['../group___u_c_s___r_e_s_o_u_r_c_e.html#a6294db86dc9327058b8a31cb4af87edb',1,'ucs_sock_addr']]], + ['address',['address',['../group___u_c_p___w_o_r_k_e_r.html#a0863e78ee73ef351311c54d95b6c8fa5',1,'ucp_worker_attr::address()'],['../group___u_c_p___m_e_m.html#acc3761c4bbcca9c1defa742a8db08bbb',1,'ucp_mem_map_params::address()'],['../group___u_c_p___m_e_m.html#ab25f1b439c184a0bfb93eda0c9ceb9f7',1,'ucp_mem_advise_params::address()'],['../group___u_c_p___m_e_m.html#ab9a2b772838f436158ae4e25d8bb21e4',1,'ucp_mem_attr::address()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a8cf5c1599022ccdea5a6d1c97ced3627',1,'ucp_ep_params::address()'],['../group___u_c_t___m_d.html#abd26b6aa42f6d176591f7028317bb887',1,'uct_allocated_memory::address()'],['../group___u_c_t___m_d.html#a5d1be32ed06a9f67bdf686d1c2ec71fc',1,'uct_mem_alloc_params_t::address()']]], + ['address_5fflags',['address_flags',['../group___u_c_p___w_o_r_k_e_r.html#a6c288e285b8c870ec576f1a939519799',1,'ucp_worker_attr']]], + ['address_5flength',['address_length',['../group___u_c_p___w_o_r_k_e_r.html#a7b0ad8e7e5c8d4c4c4931e769ca0fe6f',1,'ucp_worker_attr']]], + ['addrlen',['addrlen',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ac86eaa6362c3345d05c75bb4508ff2f1',1,'ucs_sock_addr']]], + ['advice',['advice',['../group___u_c_p___m_e_m.html#a26833bd101fcb6b4c1024b2975aed5dc',1,'ucp_mem_advise_params']]], + ['alloc_5flength',['alloc_length',['../group___u_c_t___m_d.html#aea0d8373ac6c6d4a17eb15627a10b33f',1,'uct_md_mem_attr']]], + ['am_5falign_5foffset',['am_align_offset',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a119e07151f7cfc215fdf86724cccf1f9',1,'uct_iface_params']]], + ['am_5falignment',['am_alignment',['../group___u_c_p___w_o_r_k_e_r.html#aab378fafe0b474381edbe25023910eb4',1,'ucp_worker_params::am_alignment()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a578571513991a26e7d0331b439968948',1,'uct_iface_params::am_alignment()']]], + ['arg',['arg',['../group___u_c_p___w_o_r_k_e_r.html#ae1670a4926d8528fb1ec1cd3f461f13a',1,'ucp_am_handler_param::arg()'],['../group___u_c_p___w_o_r_k_e_r.html#a05ba12e5d6e6c2b3caef35975644ce85',1,'ucp_listener_accept_handler::arg()'],['../group___u_c_p___c_o_m_m.html#a7e49e1843e1adab5561e5fc2b2e1afb1',1,'ucp_err_handler::arg()'],['../group___u_c_p___w_o_r_k_e_r.html#ae84882c5fbe486b118460662afe395ec',1,'ucp_listener_conn_handler::arg()'],['../namespace_3global_scope_4.html#a58d44a6931525b739c8dd932f369d917',1,'ucs_callbackq_elem::arg()']]], + ['array',['array',['../namespace_3global_scope_4.html#a03eca40e3a768d33654ae128d60df93b',1,'ucs_config_allow_list_t']]], + ['async_5fevent_5farg',['async_event_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a678662e17ae32ca245a45d449ea497f0',1,'uct_iface_params']]], + ['async_5fevent_5fcb',['async_event_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ab15b293126224a46cd25af411f75d39b',1,'uct_iface_params']]] +]; diff --git a/api/v1.14/html/search/all_1.html b/api/v1.14/html/search/all_1.html new file mode 100644 index 00000000000..8cc6a1de905 --- /dev/null +++ b/api/v1.14/html/search/all_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_1.js b/api/v1.14/html/search/all_1.js new file mode 100644 index 00000000000..b3aef2129f7 --- /dev/null +++ b/api/v1.14/html/search/all_1.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['backlog',['backlog',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a31658aea3303489537ffd68ecbd52f9c',1,'uct_listener_params']]], + ['bandwidth',['bandwidth',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a6a9bab4b671c0d0da959c98a4b3ab7ac',1,'uct_iface_attr']]], + ['base_5faddress',['base_address',['../group___u_c_t___m_d.html#a18678799e605b7caa7cca03e6a5ba368',1,'uct_md_mem_attr']]], + ['buffer',['buffer',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a6cf4c47c33d61c097226b570a470f10c',1,'ucp_dt_iov::buffer()'],['../group___u_c_p___d_a_t_a_t_y_p_e.html#a20f316c0e0e6c5de2e0e1851b9e22c32',1,'ucp_datatype_attr::buffer()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a315a759f0ec81b26fcba7530e43d9149',1,'uct_iov::buffer()']]] +]; diff --git a/api/v1.14/html/search/all_10.html b/api/v1.14/html/search/all_10.html new file mode 100644 index 00000000000..c25484f2088 --- /dev/null +++ b/api/v1.14/html/search/all_10.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_10.js b/api/v1.14/html/search/all_10.js new file mode 100644 index 00000000000..cddb5aa8982 --- /dev/null +++ b/api/v1.14/html/search/all_10.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['tag_5fconsumed_5fcb',['tag_consumed_cb',['../structuct__tag__context.html#a860b64e8963cbf48fb192045ec2d6689',1,'uct_tag_context']]], + ['tag_5fsender_5fmask',['tag_sender_mask',['../group___u_c_p___c_o_n_f_i_g.html#a82241de012d49800d2b75bd982f9b6b6',1,'ucp_params']]], + ['thread_5fmode',['thread_mode',['../group___u_c_p___c_o_n_t_e_x_t.html#a4bc884428c16540d5d1b1f56881eb80b',1,'ucp_context_attr::thread_mode()'],['../group___u_c_p___w_o_r_k_e_r.html#abf2b8b0c74946fbd1791a21369236678',1,'ucp_worker_attr::thread_mode()'],['../group___u_c_p___w_o_r_k_e_r.html#a790642ea681ddd2b0935ad62f70e4ef1',1,'ucp_worker_params::thread_mode()']]], + ['tl_5fname',['tl_name',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a97eefc21494ace8e0ca2598eb8085001',1,'uct_tl_resource_desc']]], + ['transport_5fname',['transport_name',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a1065b2abc0bf2a05a551059cd1f14ffd',1,'ucp_transport_entry_t']]], + ['transports',['transports',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a2104226ca6c263e31b669a148185181b',1,'ucp_ep_attr']]], + ['type',['type',['../group___u_c_t___m_d.html#ae9d6a73b93fa47d853ff2180fbd273b2',1,'uct_rkey_bundle']]] +]; diff --git a/api/v1.14/html/search/all_11.html b/api/v1.14/html/search/all_11.html new file mode 100644 index 00000000000..3615c2815f0 --- /dev/null +++ b/api/v1.14/html/search/all_11.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_11.js b/api/v1.14/html/search/all_11.js new file mode 100644 index 00000000000..bb14c4d87fa --- /dev/null +++ b/api/v1.14/html/search/all_11.js @@ -0,0 +1,913 @@ +var searchData= +[ + ['ucp_5faddress_5ft',['ucp_address_t',['../group___u_c_p___w_o_r_k_e_r.html#ga7d24d2759c1375bf4d2d639e3b701956',1,'ucp_def.h']]], + ['ucp_5fam_5fcallback_5ft',['ucp_am_callback_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gad61809eb62935c7f2e301fcb47c01727',1,'ucp_def.h']]], + ['ucp_5fam_5fcb_5fflags',['ucp_am_cb_flags',['../group___u_c_p___w_o_r_k_e_r.html#ga41d5b7b408c7546c7cb8b38d72f8653f',1,'ucp.h']]], + ['ucp_5fam_5fdata_5frelease',['ucp_am_data_release',['../group___u_c_p___c_o_m_m.html#ga45570903fc3ce01e7e5c0cd241f516f9',1,'ucp.h']]], + ['ucp_5fam_5fflag_5fpersistent_5fdata',['UCP_AM_FLAG_PERSISTENT_DATA',['../group___u_c_p___w_o_r_k_e_r.html#gga41d5b7b408c7546c7cb8b38d72f8653faa15bbd02f0d9e0afd2e979b89669fbe2',1,'ucp.h']]], + ['ucp_5fam_5fflag_5fwhole_5fmsg',['UCP_AM_FLAG_WHOLE_MSG',['../group___u_c_p___w_o_r_k_e_r.html#gga41d5b7b408c7546c7cb8b38d72f8653fab8e0a400e8017b571682b853c8ff0559',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam',['ucp_am_handler_param',['../group___u_c_p___w_o_r_k_e_r.html#structucp__am__handler__param',1,'']]], + ['ucp_5fam_5fhandler_5fparam_5ffield',['ucp_am_handler_param_field',['../group___u_c_p___c_o_m_m.html#gaeae021145933ffa033b8327bb7bf2533',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5farg',['UCP_AM_HANDLER_PARAM_FIELD_ARG',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a23622f1a9046a0b59d1519732e2b73ff',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5fcb',['UCP_AM_HANDLER_PARAM_FIELD_CB',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a6c2a2d3fe9c7118d3513833ad452cb69',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5fflags',['UCP_AM_HANDLER_PARAM_FIELD_FLAGS',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a99854985610ec532f0c83e36b3cadb3d',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5fid',['UCP_AM_HANDLER_PARAM_FIELD_ID',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a4b9788659b793630cee9bc027add35ad',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ft',['ucp_am_handler_param_t',['../group___u_c_p___w_o_r_k_e_r.html#ga41064b7ada287b9a2138451ef63ea1e4',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5ffield_5freply_5fep',['UCP_AM_RECV_ATTR_FIELD_REPLY_EP',['../group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3ba7a4057be7a4cc3bba470da4f8ed63259',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5fflag_5fdata',['UCP_AM_RECV_ATTR_FLAG_DATA',['../group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3baf77ecce2987e81bf773a48363767b77e',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5fflag_5frndv',['UCP_AM_RECV_ATTR_FLAG_RNDV',['../group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3baf9a8d75af5b826d7563863591a98714f',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5ft',['ucp_am_recv_attr_t',['../group___u_c_p___c_o_m_m.html#ga487a3c588a11e42b9f313f0c9e2ead3b',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fcallback_5ft',['ucp_am_recv_callback_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gab3adc96222b05543c6cba8c28c16703b',1,'ucp_def.h']]], + ['ucp_5fam_5frecv_5fdata_5fnbx',['ucp_am_recv_data_nbx',['../group___u_c_p___c_o_m_m.html#gaefaaa5e0a154efe496ae5bb7f2bf71f3',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fdata_5fnbx_5fcallback_5ft',['ucp_am_recv_data_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#ga242399982563973351591516039dd74b',1,'ucp_def.h']]], + ['ucp_5fam_5frecv_5fparam',['ucp_am_recv_param',['../group___u_c_p___w_o_r_k_e_r.html#structucp__am__recv__param',1,'']]], + ['ucp_5fam_5frecv_5fparam_5ft',['ucp_am_recv_param_t',['../group___u_c_p___w_o_r_k_e_r.html#ga435d870d0afb413f0bc780809f1db2ef',1,'ucp_def.h']]], + ['ucp_5fam_5fsend_5fflag_5fcopy_5fheader',['UCP_AM_SEND_FLAG_COPY_HEADER',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a0654f3da5be1bc517d45307b6a21cbdf',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5feager',['UCP_AM_SEND_FLAG_EAGER',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6af29f97eb0938984f627be7989c35079c',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5freply',['UCP_AM_SEND_FLAG_REPLY',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6ace99c327865c6f2294f800099d467b16',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5frndv',['UCP_AM_SEND_FLAG_RNDV',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a3174d72844f5488bee9e0b35c75f68e5',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fnb',['ucp_am_send_nb',['../group___u_c_p___c_o_m_m.html#ga94ec21811930b6b6fb8eab500b8c730d',1,'ucp_compat.h']]], + ['ucp_5fam_5fsend_5fnbx',['ucp_am_send_nbx',['../group___u_c_p___c_o_m_m.html#ga4b8ab214f35828ee4608d73442e8c372',1,'ucp.h']]], + ['ucp_5fam_5fsend_5freply',['UCP_AM_SEND_REPLY',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a1794c5ef851a147688d783532f1ec7bb',1,'ucp.h']]], + ['unified_20communication_20protocol_20_28ucp_29_20api',['Unified Communication Protocol (UCP) API',['../group___u_c_p___a_p_i.html',1,'']]], + ['ucp_5fatomic_5fadd32',['ucp_atomic_add32',['../group___u_c_p___c_o_m_m.html#gaa042d7e76314e1d7ea9717d4adacde7b',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fadd64',['ucp_atomic_add64',['../group___u_c_p___c_o_m_m.html#gaa80cd3f104b920c0c2f6bf7cff50fc15',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fcswap32',['ucp_atomic_cswap32',['../group___u_c_p___c_o_m_m.html#ga6078dddaa93c8dfdab3c18014064f0c0',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fcswap64',['ucp_atomic_cswap64',['../group___u_c_p___c_o_m_m.html#gafa365c16d4c2b4fd2aba6e94fec2c92b',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffadd32',['ucp_atomic_fadd32',['../group___u_c_p___c_o_m_m.html#ga0c777d7d1c59e01151ef5e3fcd7e5b94',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffadd64',['ucp_atomic_fadd64',['../group___u_c_p___c_o_m_m.html#ga7435bc5d5e2c4fb6b491d457ab65596b',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fnb',['ucp_atomic_fetch_nb',['../group___u_c_p___c_o_m_m.html#ga43a1a4a517797eb8c5c96ac8841437de',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5fcswap',['UCP_ATOMIC_FETCH_OP_CSWAP',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55adc79d547543b1803dace41a6bdea043c',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffadd',['UCP_ATOMIC_FETCH_OP_FADD',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55ae7540b3c7046a454f750f816bdfa1037',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffand',['UCP_ATOMIC_FETCH_OP_FAND',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a072b82e2e35a90b7ed3e113423e6d5e3',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffor',['UCP_ATOMIC_FETCH_OP_FOR',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a2b0b3779905ea67eea996ae8e296ed59',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffxor',['UCP_ATOMIC_FETCH_OP_FXOR',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a86930c2cddc0a884cbf88ced6c330049',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5flast',['UCP_ATOMIC_FETCH_OP_LAST',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a2532883ac97f4ee8178b52318f978a05',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5fswap',['UCP_ATOMIC_FETCH_OP_SWAP',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55ad5a1d6d5e5cb563b477258a4656c9069',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ft',['ucp_atomic_fetch_op_t',['../group___u_c_p___c_o_m_m.html#gabd91e0300a53e38d28dbb53dfbb66c55',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fop_5fadd',['UCP_ATOMIC_OP_ADD',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380a9386a4cc004f74e89bb069096ff1e43b',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fand',['UCP_ATOMIC_OP_AND',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380adf96b275090535fca4d7c1bedaef7da3',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fcswap',['UCP_ATOMIC_OP_CSWAP',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380ae5da2927554be21b16aa65f9e46f762a',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5flast',['UCP_ATOMIC_OP_LAST',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380a0983496b62f2d28cf043966793c6bb0b',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fnbx',['ucp_atomic_op_nbx',['../group___u_c_p___c_o_m_m.html#ga087e2cad02e84cf1230684362562aa46',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5for',['UCP_ATOMIC_OP_OR',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380abf085a4df55bbd6109e3fb849e0d123e',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fswap',['UCP_ATOMIC_OP_SWAP',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380af72a4149b8c55e187bdfdcbd8d201eeb',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5ft',['ucp_atomic_op_t',['../group___u_c_p___c_o_m_m.html#ga5c2ee7516e48146c044e3d9e2a2ed380',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fxor',['UCP_ATOMIC_OP_XOR',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380ac723509b3a97de7b43d1736bf9d79243',1,'ucp.h']]], + ['ucp_5fatomic_5fpost',['ucp_atomic_post',['../group___u_c_p___c_o_m_m.html#ga839312fb4de5e786daacb4fa071d61df',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5fadd',['UCP_ATOMIC_POST_OP_ADD',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0ac9bbe0e18afb3ffc3f308feb0a2343c0',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5fand',['UCP_ATOMIC_POST_OP_AND',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0a429b49ede714d04c4675a6e3966964e4',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5flast',['UCP_ATOMIC_POST_OP_LAST',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0a97ee6dd65f14dc12791831435329c38d',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5for',['UCP_ATOMIC_POST_OP_OR',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0afddd2f7287b622caf220503a6ae38460',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5ft',['ucp_atomic_post_op_t',['../group___u_c_p___c_o_m_m.html#gac5d94ea07dc4feae2708e67378ba2ad0',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5fxor',['UCP_ATOMIC_POST_OP_XOR',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0ac498a55f8365e9a0821187367bc2cf89',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fswap32',['ucp_atomic_swap32',['../group___u_c_p___c_o_m_m.html#ga43118f9d5e6d8fdfa518887218468bb3',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fswap64',['ucp_atomic_swap64',['../group___u_c_p___c_o_m_m.html#gaa2913e345505195a183ccc2583fb4ebc',1,'ucp_compat.h']]], + ['ucp_5fattr_5ffield_5fmemory_5ftypes',['UCP_ATTR_FIELD_MEMORY_TYPES',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa13fe8e11d8c372a446e00cf559c78b88',1,'ucp.h']]], + ['ucp_5fattr_5ffield_5fname',['UCP_ATTR_FIELD_NAME',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa35fd67165561f70728f6ec1c8e53ff80',1,'ucp.h']]], + ['ucp_5fattr_5ffield_5frequest_5fsize',['UCP_ATTR_FIELD_REQUEST_SIZE',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa84237b8beaee9aff1013ae6b87721ce2',1,'ucp.h']]], + ['ucp_5fattr_5ffield_5fthread_5fmode',['UCP_ATTR_FIELD_THREAD_MODE',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfab5f79c9d9c309562d4e7edb60e5855d6',1,'ucp.h']]], + ['ucp_5fcb_5fparam_5fflag_5fdata',['UCP_CB_PARAM_FLAG_DATA',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a9af9e36e3256933869d6699be25874a55d40d13674830156e15f6b6289b0d12',1,'ucp.h']]], + ['ucp_5fcb_5fparam_5fflags',['ucp_cb_param_flags',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga4a9af9e36e3256933869d6699be25874',1,'ucp.h']]], + ['ucp_5fcleanup',['ucp_cleanup',['../group___u_c_p___c_o_n_t_e_x_t.html#gaaa7a90069ad6e0f3e227402db265299e',1,'ucp.h']]], + ['ucp_20communication_20routines',['UCP Communication routines',['../group___u_c_p___c_o_m_m.html',1,'']]], + ['ucp_20configuration',['UCP Configuration',['../group___u_c_p___c_o_n_f_i_g.html',1,'']]], + ['ucp_5fconfig_5fmodify',['ucp_config_modify',['../group___u_c_p___c_o_n_f_i_g.html#ga94828d175f4abd87d48b54f32dc74703',1,'ucp.h']]], + ['ucp_5fconfig_5fprint',['ucp_config_print',['../group___u_c_p___c_o_n_f_i_g.html#ga52f4d762c9f3a61c98fb7ba95a00809e',1,'ucp.h']]], + ['ucp_5fconfig_5fread',['ucp_config_read',['../group___u_c_p___c_o_n_f_i_g.html#gab2a5bd39a60f5326771c7a46f5f93319',1,'ucp.h']]], + ['ucp_5fconfig_5frelease',['ucp_config_release',['../group___u_c_p___c_o_n_f_i_g.html#ga12d1b29c55e927a22de92431efa0d82a',1,'ucp.h']]], + ['ucp_5fconfig_5ft',['ucp_config_t',['../group___u_c_p___c_o_n_f_i_g.html#gab4fd46edba365347ef3a5b966c324388',1,'ucp_def.h']]], + ['ucp_5fconn_5frequest_5fattr',['ucp_conn_request_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__conn__request__attr',1,'']]], + ['ucp_5fconn_5frequest_5fattr_5ffield',['ucp_conn_request_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#ga31119b42b06b185822699697bd7a1018',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fattr_5ffield_5fclient_5faddr',['UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR',['../group___u_c_p___w_o_r_k_e_r.html#gga31119b42b06b185822699697bd7a1018a98d3bca4557571d8ccb56ae2d29b2ad6',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fattr_5ffield_5fclient_5fid',['UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID',['../group___u_c_p___w_o_r_k_e_r.html#gga31119b42b06b185822699697bd7a1018a2dbcf2ed5576bf2721ca550d34361f1d',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fattr_5ft',['ucp_conn_request_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga36b1aef3732666365e92bbf54e722a4a',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fh',['ucp_conn_request_h',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga200570bfa7d3a8b50b2a074aaa22d2ed',1,'ucp_def.h']]], + ['ucp_5fconn_5frequest_5fquery',['ucp_conn_request_query',['../group___u_c_p___w_o_r_k_e_r.html#ga440c99f2462ba8201280687a76fd8569',1,'ucp.h']]], + ['ucp_20application_20context',['UCP Application Context',['../group___u_c_p___c_o_n_t_e_x_t.html',1,'']]], + ['ucp_5fcontext_5fattr',['ucp_context_attr',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__context__attr',1,'']]], + ['ucp_5fcontext_5fattr_5ffield',['ucp_context_attr_field',['../group___u_c_p___c_o_n_t_e_x_t.html#ga446a95e55ba52251d2ca4bf61ff916bf',1,'ucp.h']]], + ['ucp_5fcontext_5fattr_5ft',['ucp_context_attr_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga5263d559d602c5e3eae0ee5488c6b831',1,'ucp.h']]], + ['ucp_5fcontext_5fh',['ucp_context_h',['../group___u_c_p___c_o_n_t_e_x_t.html#ga0e40ddc46f0bbe868a13f6ab1b674f76',1,'ucp_def.h']]], + ['ucp_5fcontext_5fprint_5finfo',['ucp_context_print_info',['../group___u_c_p___c_o_n_t_e_x_t.html#ga91684cf77b8dc8cbb62af0c3741b36ea',1,'ucp.h']]], + ['ucp_5fcontext_5fquery',['ucp_context_query',['../group___u_c_p___c_o_n_t_e_x_t.html#ga3485fb61663f4cc6f32e801654aedcff',1,'ucp.h']]], + ['ucp_20data_20type_20routines',['UCP Data type routines',['../group___u_c_p___d_a_t_a_t_y_p_e.html',1,'']]], + ['ucp_5fdatatype_5fattr',['ucp_datatype_attr',['../group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__datatype__attr',1,'']]], + ['ucp_5fdatatype_5fattr_5ffield',['ucp_datatype_attr_field',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaca9402381313d69cee7d0c90c634a18e',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield_5fbuffer',['UCP_DATATYPE_ATTR_FIELD_BUFFER',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea19731103ccab2b0c1f0a93a38177b7b2',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield_5fcount',['UCP_DATATYPE_ATTR_FIELD_COUNT',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea510ae956055e56169315fef18082cf3c',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield_5fpacked_5fsize',['UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea488b99fc01c366b5bb2b14360908a9f5',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ft',['ucp_datatype_attr_t',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga673ea56808f7e33828ffb9a7919a8cec',1,'ucp.h']]], + ['ucp_5fdatatype_5fclass_5fmask',['UCP_DATATYPE_CLASS_MASK',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca63ddce22a2292935f40122def246ffa8',1,'ucp.h']]], + ['ucp_5fdatatype_5fcontig',['UCP_DATATYPE_CONTIG',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca42f91fe8586a858f8e6cf9b2b0128048',1,'ucp.h']]], + ['ucp_5fdatatype_5fgeneric',['UCP_DATATYPE_GENERIC',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6caeb9bca341a1f16a56bff64f9889a4567',1,'ucp.h']]], + ['ucp_5fdatatype_5fiov',['UCP_DATATYPE_IOV',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca3b5515fddd08f075a8b74eca562bcb50',1,'ucp.h']]], + ['ucp_5fdatatype_5fshift',['UCP_DATATYPE_SHIFT',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca5c657c620df6580669917914217b2cda',1,'ucp.h']]], + ['ucp_5fdatatype_5fstrided',['UCP_DATATYPE_STRIDED',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6caa6bc9a1df8eb865e71f2b90d3e4d97ad',1,'ucp.h']]], + ['ucp_5fdatatype_5ft',['ucp_datatype_t',['../group___u_c_p___c_o_m_m.html#gae461587956dd56a6bc7d67b027845891',1,'ucp_def.h']]], + ['ucp_5fdisconnect_5fnb',['ucp_disconnect_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga22cf67f74ae06242cc26e6ca6ecd100b',1,'ucp_compat.h']]], + ['ucp_5fdt_5fcreate_5fgeneric',['ucp_dt_create_generic',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gad786aa1a5250b22d4c35d82801aef254',1,'ucp.h']]], + ['ucp_5fdt_5fdestroy',['ucp_dt_destroy',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga00337159ebd75640d55be501b7fcc5e7',1,'ucp.h']]], + ['ucp_5fdt_5fiov',['ucp_dt_iov',['../group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__dt__iov',1,'']]], + ['ucp_5fdt_5fiov_5ft',['ucp_dt_iov_t',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gac97bcd5bd29b8a55d79c51678ed4db88',1,'ucp.h']]], + ['ucp_5fdt_5fmake_5fcontig',['ucp_dt_make_contig',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga9a56fc4636094bab740d77f7df70c2b5',1,'ucp.h']]], + ['ucp_5fdt_5fmake_5fiov',['ucp_dt_make_iov',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga8ff6e9f933b306e777d24491ec251d7a',1,'ucp.h']]], + ['ucp_5fdt_5fquery',['ucp_dt_query',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga23b6c6fbfbee7669ec2abb3ee572ac0e',1,'ucp.h']]], + ['ucp_5fdt_5ftype',['ucp_dt_type',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga50b3b4e641a197264e963d91be480b6c',1,'ucp.h']]], + ['ucp_20endpoint',['UCP Endpoint',['../group___u_c_p___e_n_d_p_o_i_n_t.html',1,'']]], + ['ucp_5fentity_5fname_5fmax',['UCP_ENTITY_NAME_MAX',['../group___u_c_p___c_o_n_t_e_x_t.html#gacbb936da337ac69d01a51e74d2476981',1,'ucp_def.h']]], + ['ucp_5fep_5fattr',['ucp_ep_attr',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__attr',1,'']]], + ['ucp_5fep_5fattr_5ffield',['ucp_ep_attr_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gaa24832a718990ceb558ab5a1d4abfc41',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5flocal_5fsockaddr',['UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a1f04baee4cd992c08b62716558eb6013',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5fname',['UCP_EP_ATTR_FIELD_NAME',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41ac78de8cbed80cdb833a6ae5ddcd270fd',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5fremote_5fsockaddr',['UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a2b85f61bc437c3b277e360afaa058bf3',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5ftransports',['UCP_EP_ATTR_FIELD_TRANSPORTS',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a0eeddc2e29662e9ab046ac862757d11e',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ft',['ucp_ep_attr_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga5787b42ef3dce490d9341e3f6dbb36e4',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fflag_5fforce',['UCP_EP_CLOSE_FLAG_FORCE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggacef728a5ee7a11f50794544aa259fe71a5b827bc555062bcba501faa3f40e789b',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fflags_5ft',['ucp_ep_close_flags_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gacef728a5ee7a11f50794544aa259fe71',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fmode',['ucp_ep_close_mode',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga3be4aa93d76e41c80c780965f2f8ae57',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fmode_5fflush',['UCP_EP_CLOSE_MODE_FLUSH',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga3be4aa93d76e41c80c780965f2f8ae57ab0b1f6dcac5f54dff76c87fcf0c55c8b',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fmode_5fforce',['UCP_EP_CLOSE_MODE_FORCE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga3be4aa93d76e41c80c780965f2f8ae57ad78eab8ac29d813247b3cca01c3194db',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fnb',['ucp_ep_close_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gaa7293ad4dc72858b2594686d1c553015',1,'ucp_compat.h']]], + ['ucp_5fep_5fclose_5fnbx',['ucp_ep_close_nbx',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga6756b434213a424abb0d542fda1d82a1',1,'ucp.h']]], + ['ucp_5fep_5fcreate',['ucp_ep_create',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga6cc5ffb2ba1b0ccd510848de0a779f7b',1,'ucp.h']]], + ['ucp_5fep_5fdestroy',['ucp_ep_destroy',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gac63b3fe87c001dd965ca42943ea04bb1',1,'ucp_compat.h']]], + ['ucp_5fep_5fevaluate_5fperf',['ucp_ep_evaluate_perf',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga654a8402e9a3d657f5226ac4e8866994',1,'ucp.h']]], + ['ucp_5fep_5fevaluate_5fperf_5fattr_5ft',['ucp_ep_evaluate_perf_attr_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__attr__t',1,'']]], + ['ucp_5fep_5fevaluate_5fperf_5fparam_5ft',['ucp_ep_evaluate_perf_param_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__param__t',1,'']]], + ['ucp_5fep_5fflush',['ucp_ep_flush',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga046d87a26389c7adecd177111a65cd31',1,'ucp_compat.h']]], + ['ucp_5fep_5fflush_5fnb',['ucp_ep_flush_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga599c9b9272bfdd662afaa247d8e4dfd6',1,'ucp_compat.h']]], + ['ucp_5fep_5fflush_5fnbx',['ucp_ep_flush_nbx',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga28d61bf53320bd0f5d741147447251a4',1,'ucp.h']]], + ['ucp_5fep_5fh',['ucp_ep_h',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga9bea4e4174ea25f44285d8e7a9fb7adf',1,'ucp_def.h']]], + ['ucp_5fep_5fmodify_5fnb',['ucp_ep_modify_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga034aff7bd27e3b932d4bb7b964db759e',1,'ucp_compat.h']]], + ['ucp_5fep_5fparam_5ffield_5fconn_5frequest',['UCP_EP_PARAM_FIELD_CONN_REQUEST',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a88c2cf7c57a1cddc6b2cf9bcdc99e64e',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5ferr_5fhandler',['UCP_EP_PARAM_FIELD_ERR_HANDLER',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60adc6619f5e4bf3f68190f918ee064036d',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5ferr_5fhandling_5fmode',['UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a1b0e70c12efabe6a2cab3c9bc66db340',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fflags',['UCP_EP_PARAM_FIELD_FLAGS',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a1b53a3d4eaee470bcb3e23c60f1f7794',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5flocal_5fsock_5faddr',['UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60ade6d1e89c4a39f44f8c088d3e79c59f5',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fname',['UCP_EP_PARAM_FIELD_NAME',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60aad52a9473f7b47dd7dddc43062e16436',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fremote_5faddress',['UCP_EP_PARAM_FIELD_REMOTE_ADDRESS',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60ae1c4a9617dea28b56c486ac357299f4c',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fsock_5faddr',['UCP_EP_PARAM_FIELD_SOCK_ADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a8149dfb8648b2b248825020c63449a80',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fuser_5fdata',['UCP_EP_PARAM_FIELD_USER_DATA',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60afc6cbbfabd368438e5d6afd36f389d1b',1,'ucp.h']]], + ['ucp_5fep_5fparams',['ucp_ep_params',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__params',1,'']]], + ['ucp_5fep_5fparams_5ffield',['ucp_ep_params_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gabb6ce0b3189f415dadc7f99727751d60',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5fclient_5fserver',['UCP_EP_PARAMS_FLAGS_CLIENT_SERVER',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459fad42871a591a0a34bccf5c8203a0b32bb',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5ffield',['ucp_ep_params_flags_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga4a1f422dc1e81495b4aee1da8939459f',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5fno_5floopback',['UCP_EP_PARAMS_FLAGS_NO_LOOPBACK',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459fa519d4e4a7237ae543f72ddeaef6864ec',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5fsend_5fclient_5fid',['UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459faddc3dea615010520ff2fa9d214eabcd3',1,'ucp.h']]], + ['ucp_5fep_5fparams_5ft',['ucp_ep_params_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga359c847069dca9ab0d1a026dc3f5f8cd',1,'ucp_def.h']]], + ['ucp_5fep_5fperf_5fattr_5ffield',['ucp_ep_perf_attr_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga806d286165cdbe6d6c63d52b06b16406',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fattr_5ffield_5festimated_5ftime',['UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga806d286165cdbe6d6c63d52b06b16406a6bfbf6be343cb78ca8bb7ad9c602ad1a',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fattr_5ffield_5ft',['ucp_ep_perf_attr_field_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga0f74b8a78d11684fa275f5a4958e76d7',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fparam_5ffield',['ucp_ep_perf_param_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga4abce355cbaf6b31b1aaa88b68154f13',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fparam_5ffield_5fmessage_5fsize',['UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4abce355cbaf6b31b1aaa88b68154f13a3d545405c1d0a3fec8050d1f985f3360',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fparam_5ffield_5ft',['ucp_ep_perf_param_field_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gae4c53d850058ce95a75f0557af64ae9f',1,'ucp.h']]], + ['ucp_5fep_5fprint_5finfo',['ucp_ep_print_info',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gacc9e967b69f48d6223e921831181f3ee',1,'ucp.h']]], + ['ucp_5fep_5fquery',['ucp_ep_query',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga5074a508e2ae53e00d2bd7e728336f30',1,'ucp.h']]], + ['ucp_5fep_5frkey_5funpack',['ucp_ep_rkey_unpack',['../group___u_c_p___m_e_m.html#ga92353d1cb038a4e281f0a1973937079d',1,'ucp.h']]], + ['ucp_5ferr_5fhandler',['ucp_err_handler',['../group___u_c_p___c_o_m_m.html#structucp__err__handler',1,'']]], + ['ucp_5ferr_5fhandler_5fcb_5ft',['ucp_err_handler_cb_t',['../group___u_c_p___c_o_m_m.html#gaf2174ce2b86eb56f6bd4bd62865e87f1',1,'ucp_def.h']]], + ['ucp_5ferr_5fhandler_5ft',['ucp_err_handler_t',['../group___u_c_p___c_o_m_m.html#ga487a20aada512b312bc21757e368120d',1,'ucp_def.h']]], + ['ucp_5ferr_5fhandling_5fmode_5fnone',['UCP_ERR_HANDLING_MODE_NONE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga7c69a28724d5ae3e49490e23e64df167a18c7855c2e1dea33e0be32d9ef841ffe',1,'ucp_def.h']]], + ['ucp_5ferr_5fhandling_5fmode_5fpeer',['UCP_ERR_HANDLING_MODE_PEER',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga7c69a28724d5ae3e49490e23e64df167aa31630259732e700b6ce0fe612cf0a6f',1,'ucp_def.h']]], + ['ucp_5ferr_5fhandling_5fmode_5ft',['ucp_err_handling_mode_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga7c69a28724d5ae3e49490e23e64df167',1,'ucp_def.h']]], + ['ucp_5ffeature',['ucp_feature',['../group___u_c_p___c_o_n_t_e_x_t.html#gaca5990bc015e7e9ac3e3be4e3611c5be',1,'ucp.h']]], + ['ucp_5ffeature_5fam',['UCP_FEATURE_AM',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea685931b9f438fa9a2faaf9eccf47b097',1,'ucp.h']]], + ['ucp_5ffeature_5famo32',['UCP_FEATURE_AMO32',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beab127e1eabe5779ad82bc1ad4c5b47007',1,'ucp.h']]], + ['ucp_5ffeature_5famo64',['UCP_FEATURE_AMO64',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beada4b36191b39ef8615f657d370baead1',1,'ucp.h']]], + ['ucp_5ffeature_5fexported_5fmemh',['UCP_FEATURE_EXPORTED_MEMH',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beafb42f40309d4d14d32b8b7992b48ef68',1,'ucp.h']]], + ['ucp_5ffeature_5frma',['UCP_FEATURE_RMA',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beaf374a837508d798fb36abd22a7a0a033',1,'ucp.h']]], + ['ucp_5ffeature_5fstream',['UCP_FEATURE_STREAM',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea0c3896ead0887f9c650b221831e16b5c',1,'ucp.h']]], + ['ucp_5ffeature_5ftag',['UCP_FEATURE_TAG',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea244187ad85296b3784d302db00f66b9e',1,'ucp.h']]], + ['ucp_5ffeature_5fwakeup',['UCP_FEATURE_WAKEUP',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beabc3fea5aff6b7453e24235bceb102b5a',1,'ucp.h']]], + ['ucp_5fgeneric_5fdt_5fops',['ucp_generic_dt_ops',['../structucp__generic__dt__ops.html',1,'']]], + ['ucp_5fgeneric_5fdt_5fops_5ft',['ucp_generic_dt_ops_t',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaafb26eb4ebfdaa882e13e31da228f418',1,'ucp.h']]], + ['ucp_5fget',['ucp_get',['../group___u_c_p___c_o_m_m.html#gaf4a465cff6c1691106430564899f6f3e',1,'ucp_compat.h']]], + ['ucp_5fget_5fnb',['ucp_get_nb',['../group___u_c_p___c_o_m_m.html#ga7cb68811f53a69d37fd16e8ddb46e23b',1,'ucp_compat.h']]], + ['ucp_5fget_5fnbi',['ucp_get_nbi',['../group___u_c_p___c_o_m_m.html#gae3597f699227d598651f6630fbd7968b',1,'ucp_compat.h']]], + ['ucp_5fget_5fnbx',['ucp_get_nbx',['../group___u_c_p___c_o_m_m.html#gaa06c6521592661a8123c11426074d880',1,'ucp.h']]], + ['ucp_5fget_5fversion',['ucp_get_version',['../group___u_c_p___c_o_n_t_e_x_t.html#gae57b8eee6087f5e1d056d8075751042e',1,'ucp.h']]], + ['ucp_5fget_5fversion_5fstring',['ucp_get_version_string',['../group___u_c_p___c_o_n_t_e_x_t.html#gad53f3f2fe0e47cf54ac4f41b2687850b',1,'ucp.h']]], + ['ucp_5finit',['ucp_init',['../group___u_c_p___c_o_n_t_e_x_t.html#ga3ad3662ebafac88ec666be4caeb76cb2',1,'ucp.h']]], + ['ucp_5flib_5fattr',['ucp_lib_attr',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__lib__attr',1,'']]], + ['ucp_5flib_5fattr_5ffield',['ucp_lib_attr_field',['../group___u_c_p___c_o_n_t_e_x_t.html#ga2791b2b44c55fdb685dcd4dad8c8ae3c',1,'ucp.h']]], + ['ucp_5flib_5fattr_5ffield_5fmax_5fthread_5flevel',['UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL',['../group___u_c_p___c_o_n_t_e_x_t.html#gga2791b2b44c55fdb685dcd4dad8c8ae3ca96a3edd65a30f00765d330342d3c1267',1,'ucp.h']]], + ['ucp_5flib_5fattr_5ft',['ucp_lib_attr_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga72416704b0138f372f7449f1bf0c0423',1,'ucp.h']]], + ['ucp_5flib_5fquery',['ucp_lib_query',['../group___u_c_p___c_o_n_t_e_x_t.html#ga4f8c11637791304bd7fcc9aceafbb1dd',1,'ucp.h']]], + ['ucp_5flistener_5faccept_5fcallback_5ft',['ucp_listener_accept_callback_t',['../group___u_c_p___w_o_r_k_e_r.html#ga9a1d61f9a3c1fd97c008dd77ae86c02c',1,'ucp_def.h']]], + ['ucp_5flistener_5faccept_5fhandler',['ucp_listener_accept_handler',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__accept__handler',1,'']]], + ['ucp_5flistener_5faccept_5fhandler_5ft',['ucp_listener_accept_handler_t',['../group___u_c_p___w_o_r_k_e_r.html#gad8b65bba266c848ca394ec48da48bc18',1,'ucp_compat.h']]], + ['ucp_5flistener_5fattr',['ucp_listener_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__attr',1,'']]], + ['ucp_5flistener_5fattr_5ffield',['ucp_listener_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#ga54059507b51041359aedffbe75635720',1,'ucp.h']]], + ['ucp_5flistener_5fattr_5ffield_5fsockaddr',['UCP_LISTENER_ATTR_FIELD_SOCKADDR',['../group___u_c_p___w_o_r_k_e_r.html#gga54059507b51041359aedffbe75635720a5a58fea3f5a4daa6b055306a6798ec26',1,'ucp.h']]], + ['ucp_5flistener_5fattr_5ft',['ucp_listener_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga63fa3ed5e0f2c2e8d3d193cd63ce5739',1,'ucp.h']]], + ['ucp_5flistener_5fconn_5fcallback_5ft',['ucp_listener_conn_callback_t',['../group___u_c_p___w_o_r_k_e_r.html#ga389a8cfa253f87eb9d8cc7b8d4747c82',1,'ucp_def.h']]], + ['ucp_5flistener_5fconn_5fhandler',['ucp_listener_conn_handler',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__conn__handler',1,'']]], + ['ucp_5flistener_5fconn_5fhandler_5ft',['ucp_listener_conn_handler_t',['../group___u_c_p___w_o_r_k_e_r.html#ga558f048d85d5600f95c2f733ddc6b3e8',1,'ucp_def.h']]], + ['ucp_5flistener_5fcreate',['ucp_listener_create',['../group___u_c_p___w_o_r_k_e_r.html#ga7a8943f89a7b49c1f1abc562fb5178ad',1,'ucp.h']]], + ['ucp_5flistener_5fdestroy',['ucp_listener_destroy',['../group___u_c_p___w_o_r_k_e_r.html#gae45c609cd659bdd0e205d30627b7af21',1,'ucp.h']]], + ['ucp_5flistener_5fh',['ucp_listener_h',['../group___u_c_p___w_o_r_k_e_r.html#gac0496f7102c43cf339cc760b9e5724a2',1,'ucp_def.h']]], + ['ucp_5flistener_5fparam_5ffield_5faccept_5fhandler',['UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER',['../group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca3cdf187536d998c115377f8de396ac66',1,'ucp.h']]], + ['ucp_5flistener_5fparam_5ffield_5fconn_5fhandler',['UCP_LISTENER_PARAM_FIELD_CONN_HANDLER',['../group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca6f28cd3c96e0ada4fafc63d6f67e48bc',1,'ucp.h']]], + ['ucp_5flistener_5fparam_5ffield_5fsock_5faddr',['UCP_LISTENER_PARAM_FIELD_SOCK_ADDR',['../group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca0eed5ab19654fabc0afceb5b439c6f05',1,'ucp.h']]], + ['ucp_5flistener_5fparams',['ucp_listener_params',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__params',1,'']]], + ['ucp_5flistener_5fparams_5ffield',['ucp_listener_params_field',['../group___u_c_p___w_o_r_k_e_r.html#ga36d95269fcce844261494cbd4f5e26fc',1,'ucp.h']]], + ['ucp_5flistener_5fparams_5ft',['ucp_listener_params_t',['../group___u_c_p___w_o_r_k_e_r.html#ga2603bc15f79df18099f98b2254afab04',1,'ucp.h']]], + ['ucp_5flistener_5fquery',['ucp_listener_query',['../group___u_c_p___w_o_r_k_e_r.html#ga785a8cc6adab6c01bb2354a38bcd9928',1,'ucp.h']]], + ['ucp_5flistener_5freject',['ucp_listener_reject',['../group___u_c_p___w_o_r_k_e_r.html#ga1f1620fdbae11ea076875fd6ac644241',1,'ucp.h']]], + ['ucp_5fmadv_5fnormal',['UCP_MADV_NORMAL',['../group___u_c_p___m_e_m.html#gga1a73c4a7fc1d8a6d75e6b53256eec0b8a3a335aa51dc934e57f4ccbd26fb32fb0',1,'ucp.h']]], + ['ucp_5fmadv_5fwillneed',['UCP_MADV_WILLNEED',['../group___u_c_p___m_e_m.html#gga1a73c4a7fc1d8a6d75e6b53256eec0b8a882711eaac0fe1172570783e9824e12f',1,'ucp.h']]], + ['ucp_20memory_20routines',['UCP Memory routines',['../group___u_c_p___m_e_m.html',1,'']]], + ['ucp_5fmem_5fadvice',['ucp_mem_advice',['../group___u_c_p___m_e_m.html#ga1a73c4a7fc1d8a6d75e6b53256eec0b8',1,'ucp.h']]], + ['ucp_5fmem_5fadvice_5ft',['ucp_mem_advice_t',['../group___u_c_p___m_e_m.html#ga65ad5bf9d9e62766b5133fd80e3af613',1,'ucp.h']]], + ['ucp_5fmem_5fadvise',['ucp_mem_advise',['../group___u_c_p___m_e_m.html#ga455313831b8734fe1a824109c3ffc588',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparam_5ffield_5faddress',['UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS',['../group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fca19cd431b1a46a62abaf904d0358ffaad',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparam_5ffield_5fadvice',['UCP_MEM_ADVISE_PARAM_FIELD_ADVICE',['../group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fca8834ee80833e5509eea118807dc1a213',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparam_5ffield_5flength',['UCP_MEM_ADVISE_PARAM_FIELD_LENGTH',['../group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fcac60bdd12018a716587c71883ae408b60',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparams',['ucp_mem_advise_params',['../group___u_c_p___m_e_m.html#structucp__mem__advise__params',1,'']]], + ['ucp_5fmem_5fadvise_5fparams_5ffield',['ucp_mem_advise_params_field',['../group___u_c_p___m_e_m.html#ga3c0f7ca217c77fa0ae8649e21b24a1fc',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparams_5ft',['ucp_mem_advise_params_t',['../group___u_c_p___m_e_m.html#ga6d5e3085cb8086de3592e15cc19a3b50',1,'ucp.h']]], + ['ucp_5fmem_5fattr',['ucp_mem_attr',['../group___u_c_p___m_e_m.html#structucp__mem__attr',1,'']]], + ['ucp_5fmem_5fattr_5ffield',['ucp_mem_attr_field',['../group___u_c_p___m_e_m.html#gab0d7a54391c964c59b2cfbf30e23dc14',1,'ucp_def.h']]], + ['ucp_5fmem_5fattr_5ffield_5faddress',['UCP_MEM_ATTR_FIELD_ADDRESS',['../group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14a7255d71b73495f3466b2b3938f85630f',1,'ucp_def.h']]], + ['ucp_5fmem_5fattr_5ffield_5flength',['UCP_MEM_ATTR_FIELD_LENGTH',['../group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14aaf7684459badd65a4e70a65813ae1e35',1,'ucp_def.h']]], + ['ucp_5fmem_5fattr_5ffield_5fmem_5ftype',['UCP_MEM_ATTR_FIELD_MEM_TYPE',['../group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14a97c63bcd6332d0556e4439bc65531116',1,'ucp_def.h']]], + ['ucp_5fmem_5fattr_5ft',['ucp_mem_attr_t',['../group___u_c_p___m_e_m.html#ga80089f1bd72dea239fbcb45bd6414c26',1,'ucp_def.h']]], + ['ucp_5fmem_5fh',['ucp_mem_h',['../group___u_c_p___m_e_m.html#gacf61d6417524329d75f239d3f2ea8d3b',1,'ucp_def.h']]], + ['ucp_5fmem_5fmap',['ucp_mem_map',['../group___u_c_p___m_e_m.html#ga1af508a609cc7f2cebf4b33f9ee6ac66',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fallocate',['UCP_MEM_MAP_ALLOCATE',['../group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba8cb2c18c15da7e8da9aa2de5b407957a',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5ffixed',['UCP_MEM_MAP_FIXED',['../group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba937051276d5a7825211189c84d7f2922',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fnonblock',['UCP_MEM_MAP_NONBLOCK',['../group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba31fa3f795110becccb25734067b5e203',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5faddress',['UCP_MEM_MAP_PARAM_FIELD_ADDRESS',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faa3ddd6c11c7610ae3c97fcb4473d9332',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fexported_5fmemh_5fbuffer',['UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faf130e704ffef248e615f5aeb25208ce9',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fflags',['UCP_MEM_MAP_PARAM_FIELD_FLAGS',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fafc2e699ec811b6848bfc40d4a6c1b049',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5flength',['UCP_MEM_MAP_PARAM_FIELD_LENGTH',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faa4aa7e36cd51262837f9179cb74fb22a',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fmemory_5ftype',['UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fab5d6cd1e76f334a4ae5d10d5955d51b7',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fprot',['UCP_MEM_MAP_PARAM_FIELD_PROT',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fa349ca907322a708479795afef1fe28ff',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparams',['ucp_mem_map_params',['../group___u_c_p___m_e_m.html#structucp__mem__map__params',1,'']]], + ['ucp_5fmem_5fmap_5fparams_5ffield',['ucp_mem_map_params_field',['../group___u_c_p___m_e_m.html#ga1b78010c24c834aadc9fb8f1083e226f',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparams_5ft',['ucp_mem_map_params_t',['../group___u_c_p___m_e_m.html#gaf20a30e6819c75f1a8a8727572661a99',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5flocal_5fread',['UCP_MEM_MAP_PROT_LOCAL_READ',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a78c92c33fb131e7084b6a2933632ec17',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5flocal_5fwrite',['UCP_MEM_MAP_PROT_LOCAL_WRITE',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a6961fd2dcb7ff1fd5980f2d09bb40c39',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5fremote_5fread',['UCP_MEM_MAP_PROT_REMOTE_READ',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a2dc03b7f80ce18c5ec948d1039342bdb',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5fremote_5fwrite',['UCP_MEM_MAP_PROT_REMOTE_WRITE',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a4d1429c096e17c691ca710aeb6385fe8',1,'ucp.h']]], + ['ucp_5fmem_5fprint_5finfo',['ucp_mem_print_info',['../group___u_c_p___m_e_m.html#ga3240a60d906b2ecf5d0a19acdf13850f',1,'ucp.h']]], + ['ucp_5fmem_5fquery',['ucp_mem_query',['../group___u_c_p___m_e_m.html#ga080c10aaf347682594092d796bbc913f',1,'ucp.h']]], + ['ucp_5fmem_5funmap',['ucp_mem_unmap',['../group___u_c_p___m_e_m.html#gac8bd616375fe05594690b5e0cddd6318',1,'ucp.h']]], + ['ucp_5fmemh_5fbuffer_5frelease',['ucp_memh_buffer_release',['../group___u_c_p___m_e_m.html#gab016c446e78e171c03a2fe11ab5fe48d',1,'ucp.h']]], + ['ucp_5fmemh_5fbuffer_5frelease_5fparams',['ucp_memh_buffer_release_params',['../group___u_c_p___m_e_m.html#structucp__memh__buffer__release__params',1,'']]], + ['ucp_5fmemh_5fbuffer_5frelease_5fparams_5ft',['ucp_memh_buffer_release_params_t',['../group___u_c_p___m_e_m.html#ga0eab5641bbc55da181862a06d4d79101',1,'ucp.h']]], + ['ucp_5fmemh_5fpack',['ucp_memh_pack',['../group___u_c_p___m_e_m.html#ga8540eb3c5b885dfddbca0e39e00117ad',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fflag_5fexport',['UCP_MEMH_PACK_FLAG_EXPORT',['../group___u_c_p___m_e_m.html#gga83ac2dbb4fe6b93948b00c9a2ad16efead1933cc321da0f7ab0428070d36d1e00',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fflags',['ucp_memh_pack_flags',['../group___u_c_p___m_e_m.html#ga83ac2dbb4fe6b93948b00c9a2ad16efe',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fparam_5ffield_5fflags',['UCP_MEMH_PACK_PARAM_FIELD_FLAGS',['../group___u_c_p___m_e_m.html#gga9143b85c7c40d6b13020a13bc13f9dbfaa88937590bafafda1088444634173fa8',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fparams',['ucp_memh_pack_params',['../group___u_c_p___m_e_m.html#structucp__memh__pack__params',1,'']]], + ['ucp_5fmemh_5fpack_5fparams_5ffield',['ucp_memh_pack_params_field',['../group___u_c_p___m_e_m.html#ga9143b85c7c40d6b13020a13bc13f9dbf',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fparams_5ft',['ucp_memh_pack_params_t',['../group___u_c_p___m_e_m.html#gaa337a1ae88aed5f497d492d9406cf8c0',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fcallback',['UCP_OP_ATTR_FIELD_CALLBACK',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a73e3a6e8b96b37ec1b0764e67dd13602',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fdatatype',['UCP_OP_ATTR_FIELD_DATATYPE',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a354ef92dd9352dfccc859cd2ca3558d8',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fflags',['UCP_OP_ATTR_FIELD_FLAGS',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a2f2586686e21b2700fd7cd4a8efb5a1b',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fmemh',['UCP_OP_ATTR_FIELD_MEMH',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a84426c4dea4dceee1b015c3ccdcb7a78',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fmemory_5ftype',['UCP_OP_ATTR_FIELD_MEMORY_TYPE',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a768b4c6759502c34b0051ba33c0d05b3',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5frecv_5finfo',['UCP_OP_ATTR_FIELD_RECV_INFO',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610ac5a4c17a81a2efefae5e338479ae06cb',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5freply_5fbuffer',['UCP_OP_ATTR_FIELD_REPLY_BUFFER',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a8eb660399c093d89d5deae5c847019f0',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5frequest',['UCP_OP_ATTR_FIELD_REQUEST',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610acfac7dfc3e7b5967870f5376c334b996',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fuser_5fdata',['UCP_OP_ATTR_FIELD_USER_DATA',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610af6f932f15331fe7c9efacbfe2578e5ec',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5ffast_5fcmpl',['UCP_OP_ATTR_FLAG_FAST_CMPL',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a69a2066ee5f68e57021f622b0cc859a8',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5fforce_5fimm_5fcmpl',['UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610aeb35a090d86119cfd25d4e82753e943f',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5fmulti_5fsend',['UCP_OP_ATTR_FLAG_MULTI_SEND',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a405517272bc4319aa3b49638f5626c7b',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5fno_5fimm_5fcmpl',['UCP_OP_ATTR_FLAG_NO_IMM_CMPL',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a8805045d48573e9aa5751b439be114d0',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ft',['ucp_op_attr_t',['../group___u_c_p___c_o_m_m.html#ga67fae646dd1668efba6efe49a35a6610',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5festimated_5fnum_5feps',['UCP_PARAM_FIELD_ESTIMATED_NUM_EPS',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a834c5a969e0d41a90d54a6955b7414eb',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5festimated_5fnum_5fppn',['UCP_PARAM_FIELD_ESTIMATED_NUM_PPN',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a22fcdc29e68f36d97a0f389712529976',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5ffeatures',['UCP_PARAM_FIELD_FEATURES',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a454f1e90a324095192d87d97b8a4321f',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5fmt_5fworkers_5fshared',['UCP_PARAM_FIELD_MT_WORKERS_SHARED',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71aa8d5e573f9d52358f50ae2725a08e10e',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5fname',['UCP_PARAM_FIELD_NAME',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a9bf23645413cc4f5e753cf99b4379eb6',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5frequest_5fcleanup',['UCP_PARAM_FIELD_REQUEST_CLEANUP',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a9e2c9cebfbf51d47df31ffd019eb01c6',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5frequest_5finit',['UCP_PARAM_FIELD_REQUEST_INIT',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71ac95d94f94370df6cd79db8e830505738',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5frequest_5fsize',['UCP_PARAM_FIELD_REQUEST_SIZE',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a8385ca52048353e69b90fb7c6b0799ee',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5ftag_5fsender_5fmask',['UCP_PARAM_FIELD_TAG_SENDER_MASK',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a030b9866b2b6167cbdcfe9ce321d1f28',1,'ucp.h']]], + ['ucp_5fparams',['ucp_params',['../group___u_c_p___c_o_n_f_i_g.html#structucp__params',1,'']]], + ['ucp_5fparams_5ffield',['ucp_params_field',['../group___u_c_p___c_o_n_t_e_x_t.html#gab43f613a2365147415abf66f571cfa71',1,'ucp.h']]], + ['ucp_5fparams_5ft',['ucp_params_t',['../group___u_c_p___c_o_n_f_i_g.html#ga8fb8f3597c9a77edce7d0b765a73b102',1,'ucp.h']]], + ['ucp_5fput',['ucp_put',['../group___u_c_p___c_o_m_m.html#ga85b0a27cf8a3239decabad6a9104eb31',1,'ucp_compat.h']]], + ['ucp_5fput_5fnb',['ucp_put_nb',['../group___u_c_p___c_o_m_m.html#ga1ba986b2bde69c215abd5766dbceeb18',1,'ucp_compat.h']]], + ['ucp_5fput_5fnbi',['ucp_put_nbi',['../group___u_c_p___c_o_m_m.html#ga77f3d5def7a77c4ba88f9e1eefa4b7e6',1,'ucp_compat.h']]], + ['ucp_5fput_5fnbx',['ucp_put_nbx',['../group___u_c_p___c_o_m_m.html#ga29e7b9b70b782140e63544b8613a5fe7',1,'ucp.h']]], + ['ucp_5freq_5fattr_5ffield',['ucp_req_attr_field',['../group___u_c_p___c_o_m_m.html#gab383d860475f8917f51afb542e7d02ff',1,'ucp.h']]], + ['ucp_5frequest_5falloc',['ucp_request_alloc',['../group___u_c_p___c_o_m_m.html#gac6f75654d74e7e24881252fbff6bb9b2',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5finfo_5fstring',['UCP_REQUEST_ATTR_FIELD_INFO_STRING',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa45086e70d5035d92a601605a689178b9',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5finfo_5fstring_5fsize',['UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffaaae11c040c811d14362cbbc47ea9f772',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5fmem_5ftype',['UCP_REQUEST_ATTR_FIELD_MEM_TYPE',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa7a1764b4ce21085ecbbdd13a1f183df5',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5fstatus',['UCP_REQUEST_ATTR_FIELD_STATUS',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa9d41f03b4a79e21265ad15f87d3ff8ed',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ft',['ucp_request_attr_t',['../group___u_c_p___c_o_m_m.html#structucp__request__attr__t',1,'']]], + ['ucp_5frequest_5fcancel',['ucp_request_cancel',['../group___u_c_p___c_o_m_m.html#ga3553f89a61d6b40af4633a2e7c84fc1d',1,'ucp.h']]], + ['ucp_5frequest_5fcheck_5fstatus',['ucp_request_check_status',['../group___u_c_p___c_o_m_m.html#gae082ad7af428645ebe6e469d3d06a757',1,'ucp.h']]], + ['ucp_5frequest_5fcleanup_5fcallback_5ft',['ucp_request_cleanup_callback_t',['../group___u_c_p___c_o_n_t_e_x_t.html#gaa0db30ca2911587c444d63b6a54b3625',1,'ucp_def.h']]], + ['ucp_5frequest_5ffree',['ucp_request_free',['../group___u_c_p___c_o_m_m.html#ga0e8e46f5953d464382b21edef3ec9994',1,'ucp.h']]], + ['ucp_5frequest_5finit_5fcallback_5ft',['ucp_request_init_callback_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga0cc0c63694e7e9ee370bbee017aee7fb',1,'ucp_def.h']]], + ['ucp_5frequest_5fis_5fcompleted',['ucp_request_is_completed',['../group___u_c_p___c_o_m_m.html#ga432e478b97575b21855074a45d54520d',1,'ucp_compat.h']]], + ['ucp_5frequest_5fparam_5ft',['ucp_request_param_t',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__request__param__t',1,'']]], + ['ucp_5frequest_5fparam_5ft_2ecb',['ucp_request_param_t.cb',['../group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8cb',1,'']]], + ['ucp_5frequest_5fparam_5ft_2erecv_5finfo',['ucp_request_param_t.recv_info',['../group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8recv__info',1,'']]], + ['ucp_5frequest_5fquery',['ucp_request_query',['../group___u_c_p___c_o_m_m.html#gafc247802373bbe39e9866745e102a064',1,'ucp.h']]], + ['ucp_5frequest_5frelease',['ucp_request_release',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gaabf569a298946627fbc8d66814c35e68',1,'ucp_compat.h']]], + ['ucp_5frequest_5ftest',['ucp_request_test',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga3802a983138ed27034b7d52026dccb2f',1,'ucp_compat.h']]], + ['ucp_5frkey_5fbuffer_5frelease',['ucp_rkey_buffer_release',['../group___u_c_p___m_e_m.html#ga8bc005f53da015f4a062087e6eb064e9',1,'ucp_compat.h']]], + ['ucp_5frkey_5fdestroy',['ucp_rkey_destroy',['../group___u_c_p___m_e_m.html#gae33d7cc264e0fe1b11e27ae4289fba39',1,'ucp.h']]], + ['ucp_5frkey_5fh',['ucp_rkey_h',['../group___u_c_p___m_e_m.html#gaefeb4e775983f4313691a6b465e36c24',1,'ucp_def.h']]], + ['ucp_5frkey_5fpack',['ucp_rkey_pack',['../group___u_c_p___m_e_m.html#gadbb6b3ace4ab988cd7660319123407b4',1,'ucp_compat.h']]], + ['ucp_5frkey_5fptr',['ucp_rkey_ptr',['../group___u_c_p___m_e_m.html#ga68f3458805ba15d6a5883219ecd56c1e',1,'ucp.h']]], + ['ucp_5fsend_5fam_5fflags',['ucp_send_am_flags',['../group___u_c_p___w_o_r_k_e_r.html#ga583228e89cd5c882025ed04c76106aa6',1,'ucp.h']]], + ['ucp_5fsend_5fcallback_5ft',['ucp_send_callback_t',['../group___u_c_p___c_o_m_m.html#gaad905bbbff95166a1e9b0e9743feb677',1,'ucp_def.h']]], + ['ucp_5fsend_5fnbx_5fcallback_5ft',['ucp_send_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#gaee41a74074b37f96dad5b29c9af17faf',1,'ucp_def.h']]], + ['ucp_5fstream_5fdata_5frelease',['ucp_stream_data_release',['../group___u_c_p___c_o_m_m.html#ga1d1c1c1b2caf4f26c9872e1d708d5f68',1,'ucp.h']]], + ['ucp_5fstream_5fpoll_5fep',['ucp_stream_poll_ep',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__stream__poll__ep',1,'']]], + ['ucp_5fstream_5fpoll_5fep_5ft',['ucp_stream_poll_ep_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga3abf6e5a913e352659bfdeba300acfdd',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fcallback_5ft',['ucp_stream_recv_callback_t',['../group___u_c_p___c_o_m_m.html#ga6a6234b8497006e26ba02f10ddc0bbf5',1,'ucp_def.h']]], + ['ucp_5fstream_5frecv_5fdata_5fnb',['ucp_stream_recv_data_nb',['../group___u_c_p___c_o_m_m.html#ga47f307f4765eb5410f24ac27986b59d7',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fflag_5fwaitall',['UCP_STREAM_RECV_FLAG_WAITALL',['../group___u_c_p___c_o_m_m.html#ggab471a9c7ab815e3d3ad7af80253f5cc2a5fb4ed4f8009d969ea9a8b3f3542424c',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fflags_5ft',['ucp_stream_recv_flags_t',['../group___u_c_p___c_o_m_m.html#gab471a9c7ab815e3d3ad7af80253f5cc2',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fnb',['ucp_stream_recv_nb',['../group___u_c_p___c_o_m_m.html#gadf3b4504a329a46d2d4ec0a8cec08130',1,'ucp_compat.h']]], + ['ucp_5fstream_5frecv_5fnbx',['ucp_stream_recv_nbx',['../group___u_c_p___c_o_m_m.html#ga30494ce33e63823c81c2c5b3656d25c3',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fnbx_5fcallback_5ft',['ucp_stream_recv_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#gaf9e253400533137ba2a5a49a111a9ee8',1,'ucp_def.h']]], + ['ucp_5fstream_5frecv_5frequest_5ftest',['ucp_stream_recv_request_test',['../group___u_c_p___c_o_m_m.html#ga4d8d8823b24cb25dcab8bf44c72fa25e',1,'ucp.h']]], + ['ucp_5fstream_5fsend_5fnb',['ucp_stream_send_nb',['../group___u_c_p___c_o_m_m.html#ga9022ff0ebb56cac81f6ba81bb28f71b3',1,'ucp_compat.h']]], + ['ucp_5fstream_5fsend_5fnbx',['ucp_stream_send_nbx',['../group___u_c_p___c_o_m_m.html#gae9fe6efe6b05e4e78f58bee68c68b252',1,'ucp.h']]], + ['ucp_5fstream_5fworker_5fpoll',['ucp_stream_worker_poll',['../group___u_c_p___w_o_r_k_e_r.html#gaacff2409268fc6620d9a2bca4fa01950',1,'ucp.h']]], + ['ucp_5ftag_5fmessage_5fh',['ucp_tag_message_h',['../group___u_c_p___c_o_m_m.html#ga6a8b5741a4e66d7e890d31ef7cbf88ec',1,'ucp_def.h']]], + ['ucp_5ftag_5fmsg_5frecv_5fnb',['ucp_tag_msg_recv_nb',['../group___u_c_p___c_o_m_m.html#gac335b3ae4c9577728d9c0f2ecd44c084',1,'ucp_compat.h']]], + ['ucp_5ftag_5fmsg_5frecv_5fnbx',['ucp_tag_msg_recv_nbx',['../group___u_c_p___c_o_m_m.html#ga48c61d44f18362bdaf8fca3122efcea6',1,'ucp.h']]], + ['ucp_5ftag_5fprobe_5fnb',['ucp_tag_probe_nb',['../group___u_c_p___c_o_m_m.html#ga41668f468dc37a7634116b8210815f22',1,'ucp.h']]], + ['ucp_5ftag_5frecv_5fcallback_5ft',['ucp_tag_recv_callback_t',['../group___u_c_p___c_o_m_m.html#ga00ac0fe5665d15fab5cd254af9b07758',1,'ucp_def.h']]], + ['ucp_5ftag_5frecv_5finfo',['ucp_tag_recv_info',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__tag__recv__info',1,'']]], + ['ucp_5ftag_5frecv_5finfo_5ft',['ucp_tag_recv_info_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga118ca6feabfc3b35c7b37002c40ca7e2',1,'ucp_def.h']]], + ['ucp_5ftag_5frecv_5fnb',['ucp_tag_recv_nb',['../group___u_c_p___c_o_m_m.html#gaeb24cdfc33dfb2886551b51843aa6304',1,'ucp_compat.h']]], + ['ucp_5ftag_5frecv_5fnbr',['ucp_tag_recv_nbr',['../group___u_c_p___c_o_m_m.html#ga5a86663a4a144fd81d7a4e3378c5edd2',1,'ucp_compat.h']]], + ['ucp_5ftag_5frecv_5fnbx',['ucp_tag_recv_nbx',['../group___u_c_p___c_o_m_m.html#gaa842f8ca8ad1363ed857ab938285a16f',1,'ucp.h']]], + ['ucp_5ftag_5frecv_5fnbx_5fcallback_5ft',['ucp_tag_recv_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#ga70e110cf7c85ed5f281bd52438488d75',1,'ucp_def.h']]], + ['ucp_5ftag_5frecv_5frequest_5ftest',['ucp_tag_recv_request_test',['../group___u_c_p___c_o_m_m.html#ga707cbbef8cdcf90fa7cf63c922ef2c7f',1,'ucp.h']]], + ['ucp_5ftag_5fsend_5fnb',['ucp_tag_send_nb',['../group___u_c_p___c_o_m_m.html#gaae7343bd638924e5518041311d5c1dfc',1,'ucp_compat.h']]], + ['ucp_5ftag_5fsend_5fnbr',['ucp_tag_send_nbr',['../group___u_c_p___c_o_m_m.html#gad90aa964e14fef59b4e3bd9120cca669',1,'ucp_compat.h']]], + ['ucp_5ftag_5fsend_5fnbx',['ucp_tag_send_nbx',['../group___u_c_p___c_o_m_m.html#ga8323878b60f426c630d4ff8996ede3cc',1,'ucp.h']]], + ['ucp_5ftag_5fsend_5fsync_5fnb',['ucp_tag_send_sync_nb',['../group___u_c_p___c_o_m_m.html#gabd3e1ccae2ef34463e8313d09d3db17f',1,'ucp_compat.h']]], + ['ucp_5ftag_5fsend_5fsync_5fnbx',['ucp_tag_send_sync_nbx',['../group___u_c_p___c_o_m_m.html#ga0d96a2aac42fe99ce0c79f15dda8bd06',1,'ucp.h']]], + ['ucp_5ftag_5ft',['ucp_tag_t',['../group___u_c_p___c_o_m_m.html#ga55df42689ef1f5621eae4d1ffb16856e',1,'ucp_def.h']]], + ['ucp_5ftransport_5fentry_5ft',['ucp_transport_entry_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transport__entry__t',1,'']]], + ['ucp_5ftransports_5ft',['ucp_transports_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transports__t',1,'']]], + ['ucp_20wake_2dup_20routines',['UCP Wake-up routines',['../group___u_c_p___w_a_k_e_u_p.html',1,'']]], + ['ucp_5fwakeup_5famo',['UCP_WAKEUP_AMO',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a1f8891a39fe63593947811936a9af8f7',1,'ucp_def.h']]], + ['ucp_5fwakeup_5fedge',['UCP_WAKEUP_EDGE',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a474ecc6ca013d28f71ade5d85aafd1c8',1,'ucp_def.h']]], + ['ucp_5fwakeup_5fevent_5ft',['ucp_wakeup_event_t',['../group___u_c_p___w_o_r_k_e_r.html#gae454437b2f4d1bd23dfc8975bbe60c2e',1,'ucp_def.h']]], + ['ucp_5fwakeup_5fevent_5ftypes',['ucp_wakeup_event_types',['../group___u_c_p___w_o_r_k_e_r.html#ga66be8946dcd33051d40ceca65ba28e22',1,'ucp_def.h']]], + ['ucp_5fwakeup_5frma',['UCP_WAKEUP_RMA',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a80fc6d63077023d905d9f3adfb37c50a',1,'ucp_def.h']]], + ['ucp_5fwakeup_5frx',['UCP_WAKEUP_RX',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a182a353c533fc335e638e41fdaf7c6b5',1,'ucp_def.h']]], + ['ucp_5fwakeup_5ftag_5frecv',['UCP_WAKEUP_TAG_RECV',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a15bd79b8acc9815513dccf43fc350435',1,'ucp_def.h']]], + ['ucp_5fwakeup_5ftag_5fsend',['UCP_WAKEUP_TAG_SEND',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a136d0a608b0dcceb731d3022f1cb0e91',1,'ucp_def.h']]], + ['ucp_5fwakeup_5ftx',['UCP_WAKEUP_TX',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22ad70899effbabed3294c35b9b0f2a747b',1,'ucp_def.h']]], + ['ucp_20worker',['UCP Worker',['../group___u_c_p___w_o_r_k_e_r.html',1,'']]], + ['ucp_5fworker_5faddress_5fattr',['ucp_worker_address_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__worker__address__attr',1,'']]], + ['ucp_5fworker_5faddress_5fattr_5ffield',['ucp_worker_address_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#gaadc74e7e271c4e181263115b08bf71c8',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fattr_5ffield_5fuid',['UCP_WORKER_ADDRESS_ATTR_FIELD_UID',['../group___u_c_p___w_o_r_k_e_r.html#ggaadc74e7e271c4e181263115b08bf71c8af5d5293830102fa30e1e26cfbdde0772',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fattr_5ft',['ucp_worker_address_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga517602b302ea1c754a3c38e8020ac1bb',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fflag_5fnet_5fonly',['UCP_WORKER_ADDRESS_FLAG_NET_ONLY',['../group___u_c_p___w_o_r_k_e_r.html#ggab1ec638cc4a7498a85017d132492d195af9fe9ee3edc7fe21c889437941bb4117',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fflags_5ft',['ucp_worker_address_flags_t',['../group___u_c_p___w_o_r_k_e_r.html#gab1ec638cc4a7498a85017d132492d195',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fquery',['ucp_worker_address_query',['../group___u_c_p___w_o_r_k_e_r.html#ga0fac7f3d7bf9970e837732557e4277b0',1,'ucp.h']]], + ['ucp_5fworker_5farm',['ucp_worker_arm',['../group___u_c_p___w_a_k_e_u_p.html#gadce97937294aae0f5f599d58d68904d6',1,'ucp.h']]], + ['ucp_5fworker_5fattr',['ucp_worker_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__worker__attr',1,'']]], + ['ucp_5fworker_5fattr_5ffield',['ucp_worker_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#gacf03ee299a48c2f9c776516cc82c7194',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5faddress',['UCP_WORKER_ATTR_FIELD_ADDRESS',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a0dde53e12c0ab222ddcf2a52984fddd2',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5faddress_5fflags',['UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a9b007ce57d2935817f86b4c4c6aad8c9',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fmax_5fam_5fheader',['UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a4ad76742671a6282274e48dc904f145e',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fmax_5finfo_5fstring',['UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194aa92fba4ea095cc171b1153b88684213d',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fname',['UCP_WORKER_ATTR_FIELD_NAME',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a806d5f1afd1e673b78888588b03ae95e',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fthread_5fmode',['UCP_WORKER_ATTR_FIELD_THREAD_MODE',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a6d3178929ef9e6570999384991fbd42d',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ft',['ucp_worker_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga27a9d7a36ee31d7718f6ec2819108d07',1,'ucp.h']]], + ['ucp_5fworker_5fcreate',['ucp_worker_create',['../group___u_c_p___w_o_r_k_e_r.html#ga0aec01ed3dad646ca6cd3814b13054b1',1,'ucp.h']]], + ['ucp_5fworker_5fdestroy',['ucp_worker_destroy',['../group___u_c_p___w_o_r_k_e_r.html#ga6b6c5bf97d16e7fc4b7c815875e92676',1,'ucp.h']]], + ['ucp_5fworker_5ffence',['ucp_worker_fence',['../group___u_c_p___w_o_r_k_e_r.html#ga05b3b5887475966631c62119d64c6182',1,'ucp.h']]], + ['ucp_5fworker_5fflag_5fignore_5frequest_5fleak',['UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK',['../group___u_c_p___w_o_r_k_e_r.html#gga11a37476d021e1ad36c1b727373212b4a367a4eddbf55c75a186584fef73a484a',1,'ucp.h']]], + ['ucp_5fworker_5fflags_5ft',['ucp_worker_flags_t',['../group___u_c_p___w_o_r_k_e_r.html#ga11a37476d021e1ad36c1b727373212b4',1,'ucp.h']]], + ['ucp_5fworker_5fflush',['ucp_worker_flush',['../group___u_c_p___w_o_r_k_e_r.html#gae20b8bc9fbbde208ea266490bde4cbcb',1,'ucp_compat.h']]], + ['ucp_5fworker_5fflush_5fnb',['ucp_worker_flush_nb',['../group___u_c_p___w_o_r_k_e_r.html#gac461d1034a3313612243a5829b7e3847',1,'ucp_compat.h']]], + ['ucp_5fworker_5fflush_5fnbx',['ucp_worker_flush_nbx',['../group___u_c_p___w_o_r_k_e_r.html#ga57fedddf88d4b777f5c16b39b5fcf52e',1,'ucp.h']]], + ['ucp_5fworker_5fget_5faddress',['ucp_worker_get_address',['../group___u_c_p___w_o_r_k_e_r.html#ga41aaa5fb8fbd3de50a39b1fda12977cc',1,'ucp_compat.h']]], + ['ucp_5fworker_5fget_5fefd',['ucp_worker_get_efd',['../group___u_c_p___w_a_k_e_u_p.html#gadf849649110fa338fd891548198a578b',1,'ucp.h']]], + ['ucp_5fworker_5fh',['ucp_worker_h',['../group___u_c_p___w_o_r_k_e_r.html#ga5fd52efba31d20fc52055bb19270729f',1,'ucp_def.h']]], + ['ucp_5fworker_5fparam_5ffield_5fam_5falignment',['UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a68376de940e85a5ee4ffa6359c5ee2bc',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fclient_5fid',['UCP_WORKER_PARAM_FIELD_CLIENT_ID',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a20b21817e31db3e2ef52b507abbfa0bb',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fcpu_5fmask',['UCP_WORKER_PARAM_FIELD_CPU_MASK',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a0ba499461804b26850d6a530609e228d',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fevent_5ffd',['UCP_WORKER_PARAM_FIELD_EVENT_FD',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6ae743c2d23a0d7b0a9a8c6362a7611139',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fevents',['UCP_WORKER_PARAM_FIELD_EVENTS',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6ac756667325d053bd1cc11cccf853b0c9',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fflags',['UCP_WORKER_PARAM_FIELD_FLAGS',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a4a43ec7752c45629a3fc229a31d33617',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fname',['UCP_WORKER_PARAM_FIELD_NAME',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a57069c65941e47f35bea0478ddf0a829',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fthread_5fmode',['UCP_WORKER_PARAM_FIELD_THREAD_MODE',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a651598f7340d42cafb0876d918c83ec8',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fuser_5fdata',['UCP_WORKER_PARAM_FIELD_USER_DATA',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a1243d403aeceab36eee6d9cb985e8eb0',1,'ucp.h']]], + ['ucp_5fworker_5fparams',['ucp_worker_params',['../group___u_c_p___w_o_r_k_e_r.html#structucp__worker__params',1,'']]], + ['ucp_5fworker_5fparams_5ffield',['ucp_worker_params_field',['../group___u_c_p___w_o_r_k_e_r.html#gadbfc8fd5eaa65351d1617f2f158b80f6',1,'ucp.h']]], + ['ucp_5fworker_5fparams_5ft',['ucp_worker_params_t',['../group___u_c_p___w_o_r_k_e_r.html#ga7aad09f7b71f912abe0b120872a236f2',1,'ucp.h']]], + ['ucp_5fworker_5fprint_5finfo',['ucp_worker_print_info',['../group___u_c_p___w_o_r_k_e_r.html#gab746c6cccbfe8d25a892eb415bcedd97',1,'ucp.h']]], + ['ucp_5fworker_5fprogress',['ucp_worker_progress',['../group___u_c_p___w_o_r_k_e_r.html#ga340784a8528d4932916651460dc481c0',1,'ucp.h']]], + ['ucp_5fworker_5fquery',['ucp_worker_query',['../group___u_c_p___w_o_r_k_e_r.html#gaab678930b792e328eb4f0a17654e5e42',1,'ucp.h']]], + ['ucp_5fworker_5frelease_5faddress',['ucp_worker_release_address',['../group___u_c_p___w_o_r_k_e_r.html#ga94260829739496267d2c8d86414b863d',1,'ucp.h']]], + ['ucp_5fworker_5fset_5fam_5fhandler',['ucp_worker_set_am_handler',['../group___u_c_p___w_o_r_k_e_r.html#gab8e272749e7a396643caf8775889df4e',1,'ucp_compat.h']]], + ['ucp_5fworker_5fset_5fam_5frecv_5fhandler',['ucp_worker_set_am_recv_handler',['../group___u_c_p___w_o_r_k_e_r.html#ga410d5e90c2abc6997924cbf7dee4a1f3',1,'ucp.h']]], + ['ucp_5fworker_5fsignal',['ucp_worker_signal',['../group___u_c_p___w_a_k_e_u_p.html#ga4f83bf7620a2ea765fb7167c756b8e48',1,'ucp.h']]], + ['ucp_5fworker_5fwait',['ucp_worker_wait',['../group___u_c_p___w_a_k_e_u_p.html#gaa6d1fba4d8a2525b74174a8c344ae9aa',1,'ucp.h']]], + ['ucp_5fworker_5fwait_5fmem',['ucp_worker_wait_mem',['../group___u_c_p___w_a_k_e_u_p.html#ga8b9a2ca2795f083e3b1250d698162aa6',1,'ucp.h']]], + ['unified_20communication_20services_20_28ucs_29_20api',['Unified Communication Services (UCS) API',['../group___u_c_s___a_p_i.html',1,'']]], + ['ucs_5fasync_5fadd_5ftimer',['ucs_async_add_timer',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga11a624df0bff9513f87b273506a8f711',1,'async_fwd.h']]], + ['ucs_5fasync_5fcontext_5fcreate',['ucs_async_context_create',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga8c3ad862fef1d35af708628d778a5a5b',1,'async_fwd.h']]], + ['ucs_5fasync_5fcontext_5fdestroy',['ucs_async_context_destroy',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga65db07fbee18ab2bd46a738c89ccc8f7',1,'async_fwd.h']]], + ['ucs_5fasync_5fevent_5fcb_5ft',['ucs_async_event_cb_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga6175fd675274497a9d714623a6ffba6f',1,'async_fwd.h']]], + ['ucs_5fasync_5fmodify_5fhandler',['ucs_async_modify_handler',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga46ac2384234000408d56065a8e43fc5a',1,'async_fwd.h']]], + ['ucs_5fasync_5fpoll',['ucs_async_poll',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga41fb5f0e0719d9b6d2c07358c6a9e6ae',1,'async_fwd.h']]], + ['ucs_5fasync_5fremove_5fhandler',['ucs_async_remove_handler',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga7253f7d2762b8d288e78d573f9948aef',1,'async_fwd.h']]], + ['ucs_5fasync_5fset_5fevent_5fhandler',['ucs_async_set_event_handler',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga4bd1833c4a212330cbdff7605858819c',1,'async_fwd.h']]], + ['ucs_5fcallbackq',['ucs_callbackq',['../namespace_3global_scope_4.html#structucs__callbackq',1,'']]], + ['ucs_5fcallbackq_5felem',['ucs_callbackq_elem',['../namespace_3global_scope_4.html#structucs__callbackq__elem',1,'']]], + ['ucs_5fcallbackq_5fflag_5ffast',['UCS_CALLBACKQ_FLAG_FAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ggaa693580c739b1ba94bd6218d00222110a05c5239629fdbfb4dc63a2b354b93e93',1,'callbackq.h']]], + ['ucs_5fcallbackq_5fflag_5foneshot',['UCS_CALLBACKQ_FLAG_ONESHOT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ggaa693580c739b1ba94bd6218d00222110aabec96aecc786be2edb8f16c5034c493',1,'callbackq.h']]], + ['ucs_5fcallbackq_5fflags',['ucs_callbackq_flags',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gaa693580c739b1ba94bd6218d00222110',1,'callbackq.h']]], + ['ucs_5fconfig_5fallow_5flist_5ft',['ucs_config_allow_list_t',['../namespace_3global_scope_4.html#structucs__config__allow__list__t',1,'']]], + ['ucs_5ferr_5falready_5fexists',['UCS_ERR_ALREADY_EXISTS',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a8295b85b654e3145ee08a94714832112',1,'status.h']]], + ['ucs_5ferr_5fbuffer_5ftoo_5fsmall',['UCS_ERR_BUFFER_TOO_SMALL',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a2ab3b7e6c60cb0afe80c2e11cc39122f',1,'status.h']]], + ['ucs_5ferr_5fbusy',['UCS_ERR_BUSY',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a331d8719f76965a4514684c570110105',1,'status.h']]], + ['ucs_5ferr_5fcanceled',['UCS_ERR_CANCELED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a446ce3cf260eab2465e9f7adfbad1f11',1,'status.h']]], + ['ucs_5ferr_5fconnection_5freset',['UCS_ERR_CONNECTION_RESET',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a3845462922a8704ddca8be0dafc47cd5',1,'status.h']]], + ['ucs_5ferr_5fendpoint_5ftimeout',['UCS_ERR_ENDPOINT_TIMEOUT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558adc9adfec2d408b4efd95be36dcb119cf',1,'status.h']]], + ['ucs_5ferr_5fexceeds_5flimit',['UCS_ERR_EXCEEDS_LIMIT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a45d1cd8512f1ba4391f91b0bc399f1fb',1,'status.h']]], + ['ucs_5ferr_5ffirst_5fendpoint_5ffailure',['UCS_ERR_FIRST_ENDPOINT_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a2441db0c09803ed41453968577e29446',1,'status.h']]], + ['ucs_5ferr_5ffirst_5flink_5ffailure',['UCS_ERR_FIRST_LINK_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a8356f94996c7759a785f8d508ff58779',1,'status.h']]], + ['ucs_5ferr_5finvalid_5faddr',['UCS_ERR_INVALID_ADDR',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aaebc6a3a7f1626b431f80ff66e9a4922',1,'status.h']]], + ['ucs_5ferr_5finvalid_5fparam',['UCS_ERR_INVALID_PARAM',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab5a5c5278c83f957a096444de28db597',1,'status.h']]], + ['ucs_5ferr_5fio_5ferror',['UCS_ERR_IO_ERROR',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aaaf39ceea715057fdec5736443e0265b',1,'status.h']]], + ['ucs_5ferr_5flast',['UCS_ERR_LAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a359c2fe5ffba5911f340ec8a750917bb',1,'status.h']]], + ['ucs_5ferr_5flast_5fendpoint_5ffailure',['UCS_ERR_LAST_ENDPOINT_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa54339cfd8cefc96aa4e9d5d0b824284',1,'status.h']]], + ['ucs_5ferr_5flast_5flink_5ffailure',['UCS_ERR_LAST_LINK_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a9e4aac3283309260e9b8f34bca72209c',1,'status.h']]], + ['ucs_5ferr_5fmessage_5ftruncated',['UCS_ERR_MESSAGE_TRUNCATED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aef3defd5d754266db882e079fad7c544',1,'status.h']]], + ['ucs_5ferr_5fno_5fdevice',['UCS_ERR_NO_DEVICE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558af42564cbfb39953294f80d782404a3bf',1,'status.h']]], + ['ucs_5ferr_5fno_5felem',['UCS_ERR_NO_ELEM',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab67faa1abcd824b5bb47a094491524ba',1,'status.h']]], + ['ucs_5ferr_5fno_5fmemory',['UCS_ERR_NO_MEMORY',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a9919ffd4eaf870612c4aa63df65ae0a6',1,'status.h']]], + ['ucs_5ferr_5fno_5fmessage',['UCS_ERR_NO_MESSAGE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a1bbd2445646883a1ef758fe2ef75e586',1,'status.h']]], + ['ucs_5ferr_5fno_5fprogress',['UCS_ERR_NO_PROGRESS',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa3e6111410197f82888c6527258a5149',1,'status.h']]], + ['ucs_5ferr_5fno_5fresource',['UCS_ERR_NO_RESOURCE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a83fc93632e7b3e3251410985aab27edc',1,'status.h']]], + ['ucs_5ferr_5fnot_5fconnected',['UCS_ERR_NOT_CONNECTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a19ed4a30ff1b25ffdc00adeb8cd211fa',1,'status.h']]], + ['ucs_5ferr_5fnot_5fimplemented',['UCS_ERR_NOT_IMPLEMENTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a623f715116a8d8986c737bf626e956b4',1,'status.h']]], + ['ucs_5ferr_5fout_5fof_5frange',['UCS_ERR_OUT_OF_RANGE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a7ce30c5ce3f9b06ed9d51a618dc76920',1,'status.h']]], + ['ucs_5ferr_5frejected',['UCS_ERR_REJECTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a7ebfa416cd741e37ec1a0371feaaa10a',1,'status.h']]], + ['ucs_5ferr_5fshmem_5fsegment',['UCS_ERR_SHMEM_SEGMENT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a5cfb884e5be55df1f4acf19990f4029d',1,'status.h']]], + ['ucs_5ferr_5fsome_5fconnects_5ffailed',['UCS_ERR_SOME_CONNECTS_FAILED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa74d2a7cf7aeeaaaff6724bf0d700743',1,'status.h']]], + ['ucs_5ferr_5ftimed_5fout',['UCS_ERR_TIMED_OUT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a28655a75087757c2b6c28adcae5562c7',1,'status.h']]], + ['ucs_5ferr_5funreachable',['UCS_ERR_UNREACHABLE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab56647f308360ef22316ed42a700e057',1,'status.h']]], + ['ucs_5ferr_5funsupported',['UCS_ERR_UNSUPPORTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a252c38290855ceaf849c04b7fa52dc23',1,'status.h']]], + ['ucs_5finprogress',['UCS_INPROGRESS',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a77aa02620851779729e4ad6ceb41f84a',1,'status.h']]], + ['ucs_5flog_5fcomponent_5fconfig',['ucs_log_component_config',['../namespace_3global_scope_4.html#structucs__log__component__config',1,'']]], + ['ucs_5fmemory_5ftype',['ucs_memory_type',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga5cfcc524f5dc586101a3e7caff8d982d',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5fcuda',['UCS_MEMORY_TYPE_CUDA',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dafc4cb4732ebd0539e364bb6a4466c2fc',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5fcuda_5fmanaged',['UCS_MEMORY_TYPE_CUDA_MANAGED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dab61ccfc729e22de60f4831cc60ef1e16',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5fhost',['UCS_MEMORY_TYPE_HOST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da4bebe1325d9a3be9b5821bec4f78a55f',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5flast',['UCS_MEMORY_TYPE_LAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da6105aba9983dc25cbf7cbf4d03f655d7',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5frocm',['UCS_MEMORY_TYPE_ROCM',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da84a165376983da6abbdf0e9cc7d3d546',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5frocm_5fmanaged',['UCS_MEMORY_TYPE_ROCM_MANAGED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dabc097618d75594ac6df460592561cd77',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5ft',['ucs_memory_type_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gaf9af40bd8efcc0aac27a5194deeb1fbf',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5funknown',['UCS_MEMORY_TYPE_UNKNOWN',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dab0e5609f442bf33d5447c6e8b5928215',1,'memory_type.h']]], + ['ucs_5fok',['UCS_OK',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a1a7fbae02ac33fb94f519c7c773f419a',1,'status.h']]], + ['ucs_20communication_20resource',['UCS Communication Resource',['../group___u_c_s___r_e_s_o_u_r_c_e.html',1,'']]], + ['ucs_5fsock_5faddr',['ucs_sock_addr',['../group___u_c_s___r_e_s_o_u_r_c_e.html#structucs__sock__addr',1,'']]], + ['ucs_5fsock_5faddr_5ft',['ucs_sock_addr_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga1f31d58cb8b110b03a3df3efc04ab3c0',1,'types.h']]], + ['ucs_5fstatus_5fptr_5ft',['ucs_status_ptr_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gaf4381d25f2fb0cf02f996f3e0729ed62',1,'status.h']]], + ['ucs_5fstatus_5ft',['ucs_status_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga88ca72d7294772e7d2edb70a2df15558',1,'status.h']]], + ['ucs_5fthread_5fmode_5flast',['UCS_THREAD_MODE_LAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525ceaf7b465a8a13f216fd6c35a828a8c7986',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5fmulti',['UCS_THREAD_MODE_MULTI',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525cea8f8e252ce479d99c7cdc708321534904',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5fserialized',['UCS_THREAD_MODE_SERIALIZED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525cea95d2ddb2144f8cfebfe305be13bd6776',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5fsingle',['UCS_THREAD_MODE_SINGLE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525ceabc2f71e39a3527f7abe6a1c47f0a5a25',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5ft',['ucs_thread_mode_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga40e9f363c389e702ad9920f5d52525ce',1,'thread_mode.h']]], + ['ucs_5ftime_5ft',['ucs_time_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga69fbc58f4523686b459ee0fff60b5197',1,'time_def.h']]], + ['uct_5falloc_5fmethod_5fdefault',['UCT_ALLOC_METHOD_DEFAULT',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09aee732738d1b13520beeefda125e40665',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fheap',['UCT_ALLOC_METHOD_HEAP',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ab026ce58725388c3dca9d1a5d152250c',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fhuge',['UCT_ALLOC_METHOD_HUGE',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ad542185f2c8f7a7ff89f3a1b0581439d',1,'uct.h']]], + ['uct_5falloc_5fmethod_5flast',['UCT_ALLOC_METHOD_LAST',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a3b9f6f050e19d2d85425d2c87d4bdbb8',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fmd',['UCT_ALLOC_METHOD_MD',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a2036e15fb7da79b6cb7af6e8bda700c7',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fmmap',['UCT_ALLOC_METHOD_MMAP',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a496187eba67f49a27e0017a4290505cc',1,'uct.h']]], + ['uct_5falloc_5fmethod_5ft',['uct_alloc_method_t',['../group___u_c_t___c_o_n_t_e_x_t.html#ga019362c62f98ff7935b05c512eb0ab09',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fthp',['UCT_ALLOC_METHOD_THP',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ae4e651614b0a020b351b94f4a589fd07',1,'uct.h']]], + ['uct_5fallocated_5fmemory',['uct_allocated_memory',['../group___u_c_t___m_d.html#structuct__allocated__memory',1,'']]], + ['uct_5fallocated_5fmemory_5ft',['uct_allocated_memory_t',['../group___u_c_t___m_d.html#ga3664a14883bf6f6a16a66ec1e1646708',1,'uct.h']]], + ['uct_20active_20messages',['UCT Active messages',['../group___u_c_t___a_m.html',1,'']]], + ['uct_5fam_5fcallback_5ft',['uct_am_callback_t',['../group___u_c_t___a_m.html#gaeeaac1f152fc82d237e286a663e83d04',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype',['uct_am_trace_type',['../group___u_c_t___a_m.html#gacbe4c7fdcaf25cd7bd004a3c2d54f067',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5flast',['UCT_AM_TRACE_TYPE_LAST',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a74589340125a9634d4f1cba73da0b0a1',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5frecv',['UCT_AM_TRACE_TYPE_RECV',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a02b0b980c43b7d66823bb0169d03f98f',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5frecv_5fdrop',['UCT_AM_TRACE_TYPE_RECV_DROP',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067aa2125f63177d657998f381a60e60e8fd',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5fsend',['UCT_AM_TRACE_TYPE_SEND',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067aef58a6db54a952e5e34edd91325a83ed',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5fsend_5fdrop',['UCT_AM_TRACE_TYPE_SEND_DROP',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a70335ae779aaa99685d6842f9e85a6db',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5ft',['uct_am_trace_type_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8d195c0008dbf59eb931504c3b2590fc',1,'uct_def.h']]], + ['uct_5fam_5ftracer_5ft',['uct_am_tracer_t',['../group___u_c_t___a_m.html#gae089079bf0edee87f4f8be3edc0164cb',1,'uct_def.h']]], + ['uct_20atomic_20operations',['UCT Atomic operations',['../group___u_c_t___a_m_o.html',1,'']]], + ['unified_20communication_20transport_20_28uct_29_20api',['Unified Communication Transport (UCT) API',['../group___u_c_t___a_p_i.html',1,'']]], + ['uct_5fasync_5fevent_5fcb_5ft',['uct_async_event_cb_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gafb7251839b08fac157af1c9b85430e16',1,'uct_def.h']]], + ['uct_5fcb_5fflag_5fasync',['UCT_CB_FLAG_ASYNC',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaca1e07b69024fec26746e3a19b4de9d0a2de3b7622afcabd645878e0540f062aa',1,'uct.h']]], + ['uct_5fcb_5fflag_5freserved',['UCT_CB_FLAG_RESERVED',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaca1e07b69024fec26746e3a19b4de9d0a93c65c155511b258449363ea8cad8f7f',1,'uct.h']]], + ['uct_5fcb_5fflags',['uct_cb_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaca1e07b69024fec26746e3a19b4de9d0',1,'uct.h']]], + ['uct_5fcb_5fparam_5fflag_5fdesc',['UCT_CB_PARAM_FLAG_DESC',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9a741f6a62c34d5484fa6999b1e097e42a',1,'uct_def.h']]], + ['uct_5fcb_5fparam_5fflag_5ffirst',['UCT_CB_PARAM_FLAG_FIRST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9aef5b11372c919dfcdc55602d48e67135',1,'uct_def.h']]], + ['uct_5fcb_5fparam_5fflag_5fmore',['UCT_CB_PARAM_FLAG_MORE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9a2d9bb153789aeae6d1ecf0173cf483e9',1,'uct_def.h']]], + ['uct_5fcb_5fparam_5fflags',['uct_cb_param_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga36bfc11c722b01a11e1949e8329262c9',1,'uct_def.h']]], + ['uct_20client_2dserver_20operations',['UCT client-server operations',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html',1,'']]], + ['uct_5fcm_5fattr',['uct_cm_attr',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__attr',1,'']]], + ['uct_5fcm_5fattr_5ffield',['uct_cm_attr_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga2b308be867e1e13dcb7d941b07835431',1,'uct.h']]], + ['uct_5fcm_5fattr_5ffield_5fmax_5fconn_5fpriv',['UCT_CM_ATTR_FIELD_MAX_CONN_PRIV',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga2b308be867e1e13dcb7d941b07835431a2521b69fbc5dd8dff615878729572978',1,'uct.h']]], + ['uct_5fcm_5fattr_5ft',['uct_cm_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac97ab5f8fc69893d70fd3dc374687a71',1,'uct_def.h']]], + ['uct_5fcm_5fclient_5fep_5fconn_5fnotify',['uct_cm_client_ep_conn_notify',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga45664fb4113fa1f2ddad4fc181e0d62a',1,'uct.h']]], + ['uct_5fcm_5fclose',['uct_cm_close',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga2d4b7947a338ad8721390f8c292a4dfa',1,'uct.h']]], + ['uct_5fcm_5fconfig_5fread',['uct_cm_config_read',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaec01265a1d6fbbeef49ca3bdb5bbf2b4',1,'uct.h']]], + ['uct_5fcm_5fconfig_5ft',['uct_cm_config_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga98237d6d7f9a212449f6469d0d0eefd9',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs',['uct_cm_ep_client_connect_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__client__connect__args',1,'']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ffield',['uct_cm_ep_client_connect_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga6746759cc1850c6e260fca7e3de008ad',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ffield_5fremote_5fdata',['UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_REMOTE_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6746759cc1850c6e260fca7e3de008ada9657c720a60df0b6b89bd9b019ac01cc',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ffield_5fstatus',['UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_STATUS',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6746759cc1850c6e260fca7e3de008ada21ad19d697d3ff1b5a3acb0fcb4a7cfc',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ft',['uct_cm_ep_client_connect_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gac5142a3d24728ed4ee19eb32902b1bfd',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fcallback_5ft',['uct_cm_ep_client_connect_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad221f8e9528614b0688ea3097cc0c2bc',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs',['uct_cm_ep_priv_data_pack_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__priv__data__pack__args',1,'']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs_5ffield',['uct_cm_ep_priv_data_pack_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga405dee8e814ebc33f14c5f44e80d008c',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs_5ffield_5fdevice_5fname',['UCT_CM_EP_PRIV_DATA_PACK_ARGS_FIELD_DEVICE_NAME',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga405dee8e814ebc33f14c5f44e80d008ca39e1834470a48aaaa5b9e6fbef11b5f1',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs_5ft',['uct_cm_ep_priv_data_pack_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaebc5e64ca3882b5dd5f578fc2c036c89',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fcallback_5ft',['uct_cm_ep_priv_data_pack_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga4eb772a7b4af18ae62b546bcd85250ef',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs',['uct_cm_ep_resolve_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__resolve__args',1,'']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ffield',['uct_cm_ep_resolve_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga6c342b6c43e178b73f567bd0fb253e62',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ffield_5fdev_5fname',['UCT_CM_EP_RESOLVE_ARGS_FIELD_DEV_NAME',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6c342b6c43e178b73f567bd0fb253e62ab617fac24c5437d6acd095c84eb0a6a1',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ffield_5fstatus',['UCT_CM_EP_RESOLVE_ARGS_FIELD_STATUS',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6c342b6c43e178b73f567bd0fb253e62ad7cc5818b0812933a99f25378be77cb5',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ft',['uct_cm_ep_resolve_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga34f8c95c45d2eaf614114537746b5030',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fcallback_5ft',['uct_cm_ep_resolve_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad96e813463556ed4d5e9258b4ceee78d',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs',['uct_cm_ep_server_conn_notify_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__server__conn__notify__args',1,'']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs_5ffield',['uct_cm_ep_server_conn_notify_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf1cffc53a9b63fb98a77503917f5fd79',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs_5ffield_5fstatus',['UCT_CM_EP_SERVER_CONN_NOTIFY_ARGS_FIELD_STATUS',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf1cffc53a9b63fb98a77503917f5fd79a84648af7a2470a6869bd8d05e894b0a5',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs_5ft',['uct_cm_ep_server_conn_notify_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa2951a7f3fa2869d5ebd9a25c145f2bf',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fcallback_5ft',['uct_cm_ep_server_conn_notify_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaaffce62ed4f37b665a71a88f37cbfec6',1,'uct_def.h']]], + ['uct_5fcm_5fh',['uct_cm_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gab88b0c85922e6c157fae605a42647dd7',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs',['uct_cm_listener_conn_request_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__listener__conn__request__args',1,'']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield',['uct_cm_listener_conn_request_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga9e97a59a0593244e730734d592b642df',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fclient_5faddr',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CLIENT_ADDR',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfae396fa228bfaf18e554eaa2e91f19333',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fconn_5frequest',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CONN_REQUEST',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfadf438afd4aa996a342ddb1e69894882b',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fdev_5fname',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_DEV_NAME',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfab3c57e4db473538c60b5feaf094833d9',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fremote_5fdata',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_REMOTE_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfab87a184e4a1684ba337aaff9547c2753',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ft',['uct_cm_listener_conn_request_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8bcad5374a9b68cb65df3f416459f699',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fcallback_5ft',['uct_cm_listener_conn_request_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8c150a87e614379b42283be7e91b0dec',1,'uct_def.h']]], + ['uct_5fcm_5fopen',['uct_cm_open',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa388b4d447f77dbb9dcc45f4fff4e9b9',1,'uct.h']]], + ['uct_5fcm_5fquery',['uct_cm_query',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga4a47044a01e1cefbe7a1fd6a7e9a6857',1,'uct.h']]], + ['uct_5fcm_5fremote_5fdata',['uct_cm_remote_data',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__remote__data',1,'']]], + ['uct_5fcm_5fremote_5fdata_5ffield',['uct_cm_remote_data_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga3e023485a86ad4092497ffe58cddef37',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fconn_5fpriv_5fdata',['UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a86ed1d1f02236dd9467176b2130fba32',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fconn_5fpriv_5fdata_5flength',['UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA_LENGTH',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a550619037bb2bad0ad2a46dfe68f6cc3',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fdev_5faddr',['UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37af5ba4b8423006af3e3b0342b9cea533b',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fdev_5faddr_5flength',['UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR_LENGTH',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a22ac6bf59b6b07381c25ba808254092b',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ft',['uct_cm_remote_data_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga97cd1a740d9f58856642831ae63b8f02',1,'uct_def.h']]], + ['uct_5fcm_5ft',['uct_cm_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaf0ad3383e80500c7b5f1ac9a93ca1525',1,'uct_def.h']]], + ['uct_5fcompletion',['uct_completion',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__completion',1,'']]], + ['uct_5fcompletion_5fcallback_5ft',['uct_completion_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gafe8643ddb601908eab1d92ee2f012f8c',1,'uct_def.h']]], + ['uct_5fcompletion_5ft',['uct_completion_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga1c5e511c1cbe1734b317f7688a5cdb90',1,'uct_def.h']]], + ['uct_5fcompletion_5fupdate_5fstatus',['uct_completion_update_status',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga6d517ca850e8bb367939139b6b24cc87',1,'uct.h']]], + ['uct_5fcomponent_5fattr',['uct_component_attr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__component__attr',1,'']]], + ['uct_5fcomponent_5fattr_5ffield',['uct_component_attr_field',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga246ded5e20aa09c590673c771c74b68b',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fflags',['UCT_COMPONENT_ATTR_FIELD_FLAGS',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68baf29cd3b384fbddeccc937d42abbd6b41',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fmd_5fresource_5fcount',['UCT_COMPONENT_ATTR_FIELD_MD_RESOURCE_COUNT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba25d44baf92c5c7673dbbf44de35fdc84',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fmd_5fresources',['UCT_COMPONENT_ATTR_FIELD_MD_RESOURCES',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba4ffc9f65e0b3d7cb07db745e7e61ba47',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fname',['UCT_COMPONENT_ATTR_FIELD_NAME',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba45f30f9f196f5f75309882d48c435a26',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ft',['uct_component_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9a4bd39175a7d0777a76529eeae4b860',1,'uct.h']]], + ['uct_5fcomponent_5fflag_5fcm',['UCT_COMPONENT_FLAG_CM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggadc29c2ff13d900c2f185ee95427fb06cac3f00c23358624b53732e413433f1d8d',1,'uct.h']]], + ['uct_5fcomponent_5fflag_5frkey_5fptr',['UCT_COMPONENT_FLAG_RKEY_PTR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggadc29c2ff13d900c2f185ee95427fb06cab20fb035dcd4f2aa6eee77dd501880c3',1,'uct.h']]], + ['uct_5fcomponent_5fh',['uct_component_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga970f9dcfebb42f0209c2c7e23eca99f6',1,'uct_def.h']]], + ['uct_5fcomponent_5fquery',['uct_component_query',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga437597d034328ce061df61647add1891',1,'uct.h']]], + ['uct_5fconfig_5fget',['uct_config_get',['../group___u_c_t___c_o_n_t_e_x_t.html#ga711e3a72f282ad7d11d2945ea2dd7b4c',1,'uct.h']]], + ['uct_5fconfig_5fmodify',['uct_config_modify',['../group___u_c_t___c_o_n_t_e_x_t.html#ga00b51bffb44b91b256dd6d6e6e99f98f',1,'uct.h']]], + ['uct_5fconfig_5frelease',['uct_config_release',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga951ea184730bc0b9cf659b1038e999a4',1,'uct.h']]], + ['uct_5fconn_5frequest_5fh',['uct_conn_request_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga71c5cb66cb921d62e609d02ca628c90f',1,'uct_def.h']]], + ['uct_20communication_20context',['UCT Communication Context',['../group___u_c_t___c_o_n_t_e_x_t.html',1,'']]], + ['uct_5fdevice_5faddr_5ft',['uct_device_addr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac88423ede47b1ecaf895996971cfdf53',1,'uct_def.h']]], + ['uct_5fdevice_5ftype_5facc',['UCT_DEVICE_TYPE_ACC',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da4830aee82331272d4acfc027d733613f',1,'uct.h']]], + ['uct_5fdevice_5ftype_5flast',['UCT_DEVICE_TYPE_LAST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20dacd8f593dedbce6ce4d40115b593451e1',1,'uct.h']]], + ['uct_5fdevice_5ftype_5fnet',['UCT_DEVICE_TYPE_NET',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da5996d835fc60fcdca9c03539b99a0a2d',1,'uct.h']]], + ['uct_5fdevice_5ftype_5fself',['UCT_DEVICE_TYPE_SELF',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da86a97f09cfba66ff7170f77faaa2d89b',1,'uct.h']]], + ['uct_5fdevice_5ftype_5fshm',['UCT_DEVICE_TYPE_SHM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da3d586e5bccd77cfe8bb3c87ce3fcce06',1,'uct.h']]], + ['uct_5fdevice_5ftype_5ft',['uct_device_type_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae0c25b8c160e49fbb9cc122c9807f20d',1,'uct.h']]], + ['uct_5fep_5faddr_5ft',['uct_ep_addr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga808816ad1373f05b9ed7f3432d9f78c6',1,'uct_def.h']]], + ['uct_5fep_5fam_5fbcopy',['uct_ep_am_bcopy',['../group___u_c_t___a_m.html#gae29dad6b69beaf21c19255906742e14d',1,'uct.h']]], + ['uct_5fep_5fam_5fshort',['uct_ep_am_short',['../group___u_c_t___a_m.html#ga0d170165e2d16dccbe45588ebad181f3',1,'uct.h']]], + ['uct_5fep_5fam_5fshort_5fiov',['uct_ep_am_short_iov',['../group___u_c_t___a_m.html#ga54b4c1f0426349ac9fc498736c53c0e7',1,'uct.h']]], + ['uct_5fep_5fam_5fzcopy',['uct_ep_am_zcopy',['../group___u_c_t___a_m.html#gae79d303f72e688df6d49bc44823c2210',1,'uct.h']]], + ['uct_5fep_5fatomic32_5ffetch',['uct_ep_atomic32_fetch',['../group___u_c_t___a_m_o.html#ga2d4fba85b9c7e5d70f09579bddbd91c6',1,'uct.h']]], + ['uct_5fep_5fatomic32_5fpost',['uct_ep_atomic32_post',['../group___u_c_t___a_m_o.html#ga81f59547148ece219e188d4196932e9f',1,'uct.h']]], + ['uct_5fep_5fatomic64_5ffetch',['uct_ep_atomic64_fetch',['../group___u_c_t___a_m_o.html#gae13c6bff2a3e26a133a3d17253fa3428',1,'uct.h']]], + ['uct_5fep_5fatomic64_5fpost',['uct_ep_atomic64_post',['../group___u_c_t___a_m_o.html#ga0e702db435215d222e12186cdcdf737c',1,'uct.h']]], + ['uct_5fep_5fatomic_5fcswap32',['uct_ep_atomic_cswap32',['../group___u_c_t___a_m_o.html#ga8c93ec75fb32dd52cda9cbe628b1077f',1,'uct.h']]], + ['uct_5fep_5fatomic_5fcswap64',['uct_ep_atomic_cswap64',['../group___u_c_t___a_m_o.html#ga84362057b7249456e00c00844fc60290',1,'uct.h']]], + ['uct_5fep_5fattr_5ft',['uct_ep_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaad8747fe0969320a445f7b9cba53d50c',1,'uct_def.h']]], + ['uct_5fep_5fcheck',['uct_ep_check',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga45924a1e90cc4747fd23b36a21fc07af',1,'uct.h']]], + ['uct_5fep_5fconnect',['uct_ep_connect',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaec09721914083255f4856da1a9541880',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparam_5ffield_5fprivate_5fdata',['UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaa821e2f4247cd5e72632e5ea7008e6e1a51f30ec2f30a63bdea6660a0ad61305e',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparam_5ffield_5fprivate_5fdata_5flength',['UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA_LENGTH',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaa821e2f4247cd5e72632e5ea7008e6e1accc8d70e4ee5ee60283e1b53456963e1',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparams',['uct_ep_connect_params',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__ep__connect__params',1,'']]], + ['uct_5fep_5fconnect_5fparams_5ffield',['uct_ep_connect_params_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa821e2f4247cd5e72632e5ea7008e6e1',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparams_5ft',['uct_ep_connect_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaddad06e96eb39d96239d984bfbbbb5c0',1,'uct_def.h']]], + ['uct_5fep_5fconnect_5fto_5fep',['uct_ep_connect_to_ep',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga371685403748eb72784fdcb17f9e4bdf',1,'uct.h']]], + ['uct_5fep_5fcreate',['uct_ep_create',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga0b2d38bde2651977c2b476e6e8866acc',1,'uct.h']]], + ['uct_5fep_5fdestroy',['uct_ep_destroy',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac7d6537c7cdacdf24afeafe9c0085163',1,'uct.h']]], + ['uct_5fep_5fdisconnect',['uct_ep_disconnect',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga97049050f63eab653949cceef8fe4ba0',1,'uct.h']]], + ['uct_5fep_5fdisconnect_5fcb_5ft',['uct_ep_disconnect_cb_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf1b75ee068dfa5fbf7194f999360197a',1,'uct_def.h']]], + ['uct_5fep_5ffence',['uct_ep_fence',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga34719e12b68f8ac890f261018aa6ddb3',1,'uct.h']]], + ['uct_5fep_5fflush',['uct_ep_flush',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2a7a12705b1f4af41792282b59fbc8c2',1,'uct.h']]], + ['uct_5fep_5fget_5faddress',['uct_ep_get_address',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga23773d9d87524cfa6dc6c2d1e094d487',1,'uct.h']]], + ['uct_5fep_5fget_5fbcopy',['uct_ep_get_bcopy',['../group___u_c_t___r_m_a.html#ga82b06eb1ca3be490d39c70a664f12742',1,'uct.h']]], + ['uct_5fep_5fget_5fshort',['uct_ep_get_short',['../group___u_c_t___r_m_a.html#gaed5201516e35d10605e5db1fd0dea674',1,'uct.h']]], + ['uct_5fep_5fget_5fzcopy',['uct_ep_get_zcopy',['../group___u_c_t___r_m_a.html#ga535095dfcb356cfab17c319f7993d53a',1,'uct.h']]], + ['uct_5fep_5fh',['uct_ep_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae7298a2b6fdb0e7771868459b10d6b20',1,'uct_def.h']]], + ['uct_5fep_5fparam_5ffield_5fcm',['UCT_EP_PARAM_FIELD_CM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bab089df3f421f6fc0ccdda8b36ecd4e42',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fcm_5fresolve_5fcb',['UCT_EP_PARAM_FIELD_CM_RESOLVE_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bab8af49c5286ab9f6b6f6f62743960f8f',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fconn_5frequest',['UCT_EP_PARAM_FIELD_CONN_REQUEST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba313aa3f8e5e089fc57a0c53fa48ee72d',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fdev_5faddr',['UCT_EP_PARAM_FIELD_DEV_ADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba14fb24fafcf9fdd0418a5dd348ab828c',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fiface',['UCT_EP_PARAM_FIELD_IFACE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba082065ffa8866740ca6418a9c38b503d',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fiface_5faddr',['UCT_EP_PARAM_FIELD_IFACE_ADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658baef938215a002d0b59812c737db0a965d',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5flocal_5fsockaddr',['UCT_EP_PARAM_FIELD_LOCAL_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bafdb48e56bfcdd0b9439329568885f8df',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fpath_5findex',['UCT_EP_PARAM_FIELD_PATH_INDEX',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658baf1b7df888b75b42a627b327003bffdb6',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fpriv_5fdata',['UCT_EP_PARAM_FIELD_PRIV_DATA',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba43b2ccfee5e1811447b1902e6d9962c4',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fpriv_5fdata_5flength',['UCT_EP_PARAM_FIELD_PRIV_DATA_LENGTH',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bac5bd575d5dddf9dd99e90251bb56faea',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr',['UCT_EP_PARAM_FIELD_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bae4c4f4f2110b170ed4920529821387e6',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fcb_5fflags',['UCT_EP_PARAM_FIELD_SOCKADDR_CB_FLAGS',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba6489f1bcbdd0de8e2aee80661aa37ec1',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fconnect_5fcb_5fclient',['UCT_EP_PARAM_FIELD_SOCKADDR_CONNECT_CB_CLIENT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bad59d4bae36d22a6d5da01512d9861256',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fdisconnect_5fcb',['UCT_EP_PARAM_FIELD_SOCKADDR_DISCONNECT_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba148d1e23de6d640612457216ad81da29',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fnotify_5fcb_5fserver',['UCT_EP_PARAM_FIELD_SOCKADDR_NOTIFY_CB_SERVER',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bad86327449165ad945e6ae8a7c36c1c8c',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fpack_5fcb',['UCT_EP_PARAM_FIELD_SOCKADDR_PACK_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba61e749dca15775eb4cbc492c020027ca',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fuser_5fdata',['UCT_EP_PARAM_FIELD_USER_DATA',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658babbff9b7d6a5114860d6b40f3b0c445dc',1,'uct.h']]], + ['uct_5fep_5fparams',['uct_ep_params',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__ep__params',1,'']]], + ['uct_5fep_5fparams_5ffield',['uct_ep_params_field',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8e76f363d8805669fb5371b404c5658b',1,'uct.h']]], + ['uct_5fep_5fparams_5ft',['uct_ep_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaff904a2be18f709176eaec75e4a93251',1,'uct_def.h']]], + ['uct_5fep_5fpending_5fadd',['uct_ep_pending_add',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga40f4b92dd4af8da92e138816d57dfece',1,'uct.h']]], + ['uct_5fep_5fpending_5fpurge',['uct_ep_pending_purge',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga11196076031e7c8601241a3adbe1e561',1,'uct.h']]], + ['uct_5fep_5fput_5fbcopy',['uct_ep_put_bcopy',['../group___u_c_t___r_m_a.html#gad0b6f7d4ad48f672e20ff70c8e0faadc',1,'uct.h']]], + ['uct_5fep_5fput_5fshort',['uct_ep_put_short',['../group___u_c_t___r_m_a.html#ga2dfc08ad6547e081cddd7457c19417b1',1,'uct.h']]], + ['uct_5fep_5fput_5fzcopy',['uct_ep_put_zcopy',['../group___u_c_t___r_m_a.html#gaed8c42bab761c97bc0a1516fbf552583',1,'uct.h']]], + ['uct_5fep_5ftag_5feager_5fbcopy',['uct_ep_tag_eager_bcopy',['../group___u_c_t___t_a_g.html#ga08d520cd093b8c661c3f5a3bd863b7c2',1,'uct.h']]], + ['uct_5fep_5ftag_5feager_5fshort',['uct_ep_tag_eager_short',['../group___u_c_t___t_a_g.html#ga5e595ff1d9e77bd5b4abe84fae3ac117',1,'uct.h']]], + ['uct_5fep_5ftag_5feager_5fzcopy',['uct_ep_tag_eager_zcopy',['../group___u_c_t___t_a_g.html#gaab6efb1df0527e53a0c1528cc80f64e4',1,'uct.h']]], + ['uct_5fep_5ftag_5frndv_5fcancel',['uct_ep_tag_rndv_cancel',['../group___u_c_t___t_a_g.html#gaee99ff7af5b69b653977e4db2b5fef8b',1,'uct.h']]], + ['uct_5fep_5ftag_5frndv_5frequest',['uct_ep_tag_rndv_request',['../group___u_c_t___t_a_g.html#ga0b01e46c59a9d713495e4be1cdc6edda',1,'uct.h']]], + ['uct_5fep_5ftag_5frndv_5fzcopy',['uct_ep_tag_rndv_zcopy',['../group___u_c_t___t_a_g.html#ga897e5cfaa4998fdcb36128624635460a',1,'uct.h']]], + ['uct_5ferror_5fhandler_5ft',['uct_error_handler_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga119fc03d8825b540252406cfeb280897',1,'uct_def.h']]], + ['uct_5fevent_5frecv',['UCT_EVENT_RECV',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2a1381e135252b79646cdb3a6f3d15431e',1,'uct.h']]], + ['uct_5fevent_5frecv_5fsig',['UCT_EVENT_RECV_SIG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2ab5b97562ce555a0979a56bd1d9810eaf',1,'uct.h']]], + ['uct_5fevent_5fsend_5fcomp',['UCT_EVENT_SEND_COMP',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2aba611824db8eb31b9eb07111f987e011',1,'uct.h']]], + ['uct_5fflush_5fflag_5fcancel',['UCT_FLUSH_FLAG_CANCEL',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6a556a8cb417f5b6e21b0be93297eb2f45',1,'uct.h']]], + ['uct_5fflush_5fflag_5flocal',['UCT_FLUSH_FLAG_LOCAL',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6ad0b221329684853b22a60d88e0dd8bac',1,'uct.h']]], + ['uct_5fflush_5fflag_5fremote',['UCT_FLUSH_FLAG_REMOTE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6a0c1b82dd17faf5ece84a69702168afe7',1,'uct.h']]], + ['uct_5fflush_5fflags',['uct_flush_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga84ba23c28fda1c96f5018bbafb7ffed6',1,'uct.h']]], + ['uct_5fiface_5faccept',['uct_iface_accept',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaadcca33083e95033b161b4f5b1365dc9',1,'uct.h']]], + ['uct_5fiface_5faddr_5ft',['uct_iface_addr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga96d01980a33064e85158b9028073e96c',1,'uct_def.h']]], + ['uct_5fiface_5fattr',['uct_iface_attr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr',1,'']]], + ['uct_5fiface_5fattr_2ecap',['uct_iface_attr.cap',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eam',['uct_iface_attr.cap.am',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8am',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eatomic32',['uct_iface_attr.cap.atomic32',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic32',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eatomic64',['uct_iface_attr.cap.atomic64',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic64',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eget',['uct_iface_attr.cap.get',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8get',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eput',['uct_iface_attr.cap.put',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8put',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag',['uct_iface_attr.cap.tag',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag_2eeager',['uct_iface_attr.cap.tag.eager',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8eager',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag_2erecv',['uct_iface_attr.cap.tag.recv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8recv',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag_2erndv',['uct_iface_attr.cap.tag.rndv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8rndv',1,'']]], + ['uct_5fiface_5fattr_5ft',['uct_iface_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga64b102833286ad65e2802002e0f403be',1,'uct_def.h']]], + ['uct_5fiface_5fclose',['uct_iface_close',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga748bd92ba4e62fd86c6b002f9198e2aa',1,'uct.h']]], + ['uct_5fiface_5fconfig_5ft',['uct_iface_config_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9769f5a67e7c711eb95abe993f794207',1,'uct_def.h']]], + ['uct_5fiface_5fevent_5farm',['uct_iface_event_arm',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaf15e9f37d3ce5273153861522a443acf',1,'uct.h']]], + ['uct_5fiface_5fevent_5ffd_5fget',['uct_iface_event_fd_get',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae3aa273c042171bee7292da0d7f774d1',1,'uct.h']]], + ['uct_5fiface_5fevent_5ftypes',['uct_iface_event_types',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaef09139f303b0a3d28a1cea524dc3bd2',1,'uct.h']]], + ['uct_5fiface_5ffeature',['uct_iface_feature',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga078dd84cff9d6b1cda5692fbf6b1e7c7',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fam',['UCT_IFACE_FEATURE_AM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a4bce30860f36cee1a7b74f6cd2c061ad',1,'uct.h']]], + ['uct_5fiface_5ffeature_5famo32',['UCT_IFACE_FEATURE_AMO32',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a06a813eb45714bc70e154691d82e5e81',1,'uct.h']]], + ['uct_5fiface_5ffeature_5famo64',['UCT_IFACE_FEATURE_AMO64',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7af6bebc50b5e4169f38cddaacc7ba7a7a',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fflush_5fremote',['UCT_IFACE_FEATURE_FLUSH_REMOTE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ac161e1b9f69409f4e2238af1c6d4d155',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fget',['UCT_IFACE_FEATURE_GET',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ae80cd4ab8043e2df41d2d81854686415',1,'uct.h']]], + ['uct_5fiface_5ffeature_5flast',['UCT_IFACE_FEATURE_LAST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ab317c0279d872516f011df628d67dd9f',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fput',['UCT_IFACE_FEATURE_PUT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a59d0a64607692e3ff39fa61a899c7633',1,'uct.h']]], + ['uct_5fiface_5ffeature_5ftag',['UCT_IFACE_FEATURE_TAG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a08d34bf9a962d1b27b0c92865c773854',1,'uct.h']]], + ['uct_5fiface_5ffence',['uct_iface_fence',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaa8d42856661922581a683030dd9c8990',1,'uct.h']]], + ['uct_5fiface_5fflag_5fam_5fbcopy',['UCT_IFACE_FLAG_AM_BCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga157f699933110d47857b84d06de36c21',1,'uct.h']]], + ['uct_5fiface_5fflag_5fam_5fdup',['UCT_IFACE_FLAG_AM_DUP',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga57467dcc8d7be9b69caa2c886e2bf05a',1,'uct.h']]], + ['uct_5fiface_5fflag_5fam_5fshort',['UCT_IFACE_FLAG_AM_SHORT',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gaa58cb476c781afcc74ce00849cc1884c',1,'uct.h']]], + ['uct_5fiface_5fflag_5fam_5fzcopy',['UCT_IFACE_FLAG_AM_ZCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga480d42a7324a6944049f5f2ded5da783',1,'uct.h']]], + ['uct_5fiface_5fflag_5fatomic_5fcpu',['UCT_IFACE_FLAG_ATOMIC_CPU',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gad3c9946b758176b203769c4257751e05',1,'uct.h']]], + ['uct_5fiface_5fflag_5fatomic_5fdevice',['UCT_IFACE_FLAG_ATOMIC_DEVICE',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga264f4b6d97d47bba154940db2d39108f',1,'uct.h']]], + ['uct_5fiface_5fflag_5fcb_5fasync',['UCT_IFACE_FLAG_CB_ASYNC',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga0d11615d226392d79f547669968b4b90',1,'uct.h']]], + ['uct_5fiface_5fflag_5fcb_5fsync',['UCT_IFACE_FLAG_CB_SYNC',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2e3c98ee6cfe8abe7769a3442fbaffaf',1,'uct.h']]], + ['uct_5fiface_5fflag_5fconnect_5fto_5fep',['UCT_IFACE_FLAG_CONNECT_TO_EP',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga598f1ae11f9ed8cfed2f6c04bbb0bfe8',1,'uct.h']]], + ['uct_5fiface_5fflag_5fconnect_5fto_5fiface',['UCT_IFACE_FLAG_CONNECT_TO_IFACE',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gac56a560766f8c50bef684e0e6b4efd18',1,'uct.h']]], + ['uct_5fiface_5fflag_5fconnect_5fto_5fsockaddr',['UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gadd27aab0e67faf844b0ec9011b5ff7dc',1,'uct.h']]], + ['uct_5fiface_5fflag_5fep_5fcheck',['UCT_IFACE_FLAG_EP_CHECK',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga0faa7a7889f57ccdc40fcb4c949d177c',1,'uct.h']]], + ['uct_5fiface_5fflag_5fep_5fkeepalive',['UCT_IFACE_FLAG_EP_KEEPALIVE',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gafd21d995c6a98421676ff9881c3fd30d',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fam_5fid',['UCT_IFACE_FLAG_ERRHANDLE_AM_ID',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga645a61b3a77a69abd3263b4c8cff162c',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fbcopy_5fbuf',['UCT_IFACE_FLAG_ERRHANDLE_BCOPY_BUF',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gac0767646add241453d8835c81a370ad4',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fbcopy_5flen',['UCT_IFACE_FLAG_ERRHANDLE_BCOPY_LEN',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga4fc39074e1a50d6fd8e5b009634090a8',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fpeer_5ffailure',['UCT_IFACE_FLAG_ERRHANDLE_PEER_FAILURE',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2dd3b3fa9d757d3835a5cfe33778e51c',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fremote_5fmem',['UCT_IFACE_FLAG_ERRHANDLE_REMOTE_MEM',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga72ea5a02a74d3badb058dcb27c28d33f',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fshort_5fbuf',['UCT_IFACE_FLAG_ERRHANDLE_SHORT_BUF',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga8c2b68ef2471f41887923d60d7e7bc30',1,'uct.h']]], + ['uct_5fiface_5fflag_5ferrhandle_5fzcopy_5fbuf',['UCT_IFACE_FLAG_ERRHANDLE_ZCOPY_BUF',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga58d7b4bd4ce94d95f91f95cbfacc3687',1,'uct.h']]], + ['uct_5fiface_5fflag_5fevent_5fasync_5fcb',['UCT_IFACE_FLAG_EVENT_ASYNC_CB',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#gae0199c5efa567b5906fb4119c84eeb90',1,'uct.h']]], + ['uct_5fiface_5fflag_5fevent_5ffd',['UCT_IFACE_FLAG_EVENT_FD',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#gab3643d171600157693ecbc8b8a57ddb8',1,'uct.h']]], + ['uct_5fiface_5fflag_5fevent_5frecv',['UCT_IFACE_FLAG_EVENT_RECV',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#ga8f30d238efddb2735f400a93d84741ec',1,'uct.h']]], + ['uct_5fiface_5fflag_5fevent_5frecv_5fsig',['UCT_IFACE_FLAG_EVENT_RECV_SIG',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#ga92e91487e2c27a69934f84e3331012da',1,'uct.h']]], + ['uct_5fiface_5fflag_5fevent_5fsend_5fcomp',['UCT_IFACE_FLAG_EVENT_SEND_COMP',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html#ga4070a894b32d49061c07d5e636d2c7ae',1,'uct.h']]], + ['uct_5fiface_5fflag_5fget_5fbcopy',['UCT_IFACE_FLAG_GET_BCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2bd7e6c6fb89b6f6922e4cd5b22976d1',1,'uct.h']]], + ['uct_5fiface_5fflag_5fget_5fshort',['UCT_IFACE_FLAG_GET_SHORT',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga71df9bc5c060b753e50ddeabf05464f8',1,'uct.h']]], + ['uct_5fiface_5fflag_5fget_5fzcopy',['UCT_IFACE_FLAG_GET_ZCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga2b06fb927355693fd2887a237521238a',1,'uct.h']]], + ['uct_5fiface_5fflag_5fpending',['UCT_IFACE_FLAG_PENDING',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gaeaaca09dbcf32488f508327b00d6f386',1,'uct.h']]], + ['uct_5fiface_5fflag_5fput_5fbcopy',['UCT_IFACE_FLAG_PUT_BCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga8370f7eb1b51d788b28a7b9391818b5a',1,'uct.h']]], + ['uct_5fiface_5fflag_5fput_5fshort',['UCT_IFACE_FLAG_PUT_SHORT',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga505de892b063f532d31e4903ad9c1126',1,'uct.h']]], + ['uct_5fiface_5fflag_5fput_5fzcopy',['UCT_IFACE_FLAG_PUT_ZCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gabb6ace47f4fac09f529b21e1e0b3aef8',1,'uct.h']]], + ['uct_5fiface_5fflag_5ftag_5feager_5fbcopy',['UCT_IFACE_FLAG_TAG_EAGER_BCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gaa31a85814a4c1f1d2b650ed962697c24',1,'uct.h']]], + ['uct_5fiface_5fflag_5ftag_5feager_5fshort',['UCT_IFACE_FLAG_TAG_EAGER_SHORT',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga3d034538bcf657f976ae500d8143ed64',1,'uct.h']]], + ['uct_5fiface_5fflag_5ftag_5feager_5fzcopy',['UCT_IFACE_FLAG_TAG_EAGER_ZCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#ga8bdcd3907a6cf4f5cb951994ae9da7bb',1,'uct.h']]], + ['uct_5fiface_5fflag_5ftag_5frndv_5fzcopy',['UCT_IFACE_FLAG_TAG_RNDV_ZCOPY',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html#gac7f2200f52db88d3634089d8cdf2100c',1,'uct.h']]], + ['uct_5fiface_5fflush',['uct_iface_flush',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga6cda14e7c03e4f400be46fe97aa23bed',1,'uct.h']]], + ['uct_5fiface_5fget_5faddress',['uct_iface_get_address',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga7da50f02f6cfaaf16f11c620fba9f3b8',1,'uct.h']]], + ['uct_5fiface_5fget_5fdevice_5faddress',['uct_iface_get_device_address',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga67f64f9b1971622ab8e7c8410cc5ab44',1,'uct.h']]], + ['uct_5fiface_5fh',['uct_iface_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gab6decd0363732ac4187bf7aa37883c35',1,'uct_def.h']]], + ['uct_5fiface_5fis_5freachable',['uct_iface_is_reachable',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gadf8829d8c85620cbc1ddfc0f3e8ec9a8',1,'uct.h']]], + ['uct_5fiface_5fmem_5falloc',['uct_iface_mem_alloc',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaa29727b03b244839f0c068d0785f0050',1,'uct.h']]], + ['uct_5fiface_5fmem_5ffree',['uct_iface_mem_free',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga198359eccf0ae85f1c13d4d8509f5532',1,'uct.h']]], + ['uct_5fiface_5fopen',['uct_iface_open',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga031e2c99f03585c0f4c7356c71f0fbb1',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode',['uct_iface_open_mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8bc9c95ee7fbd76321940e2853d08bb5',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode_5fdevice',['UCT_IFACE_OPEN_MODE_DEVICE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5a504bef9a8574445a0dfdcf517160fef0',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode_5fsockaddr_5fclient',['UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5ab596bc437bc4e84500039aafcf5adfeb',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode_5fsockaddr_5fserver',['UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5a9b2655b644fae2cf20d5b673854c9ad0',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fam_5falign_5foffset',['UCT_IFACE_PARAM_FIELD_AM_ALIGN_OFFSET',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a22a9554ccdc8209f81d7d5b5a8e39780',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fam_5falignment',['UCT_IFACE_PARAM_FIELD_AM_ALIGNMENT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a8d676d1b40253cacf1abb4302d448d3a',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fasync_5fevent_5farg',['UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a8d6361b77aae50f66b88b13826375aed',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fasync_5fevent_5fcb',['UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a83e8eb07f6d7e357001a0ac826857ebd',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fcpu_5fmask',['UCT_IFACE_PARAM_FIELD_CPU_MASK',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a80cd3b1a8f9de031df8aa12e7a0eb08b',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fdevice',['UCT_IFACE_PARAM_FIELD_DEVICE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a0f56ae54f7fcd7a002588a75e207f8a2',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ferr_5fhandler',['UCT_IFACE_PARAM_FIELD_ERR_HANDLER',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a57771259693749559910cbf8256ef7a1',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ferr_5fhandler_5farg',['UCT_IFACE_PARAM_FIELD_ERR_HANDLER_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ab0a406683b45f265eaf9edc794e72e7e',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ferr_5fhandler_5fflags',['UCT_IFACE_PARAM_FIELD_ERR_HANDLER_FLAGS',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a2f97be5b7ef0e542fc39fe778c85097e',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ffeatures',['UCT_IFACE_PARAM_FIELD_FEATURES',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ad5efe451d0f04d6929f39b66cdc8d889',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5feager_5farg',['UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ad4afd13a4a6e36adb6e5576de666ab64',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5feager_5fcb',['UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a9dcb103f9b93d5c37d5b1ff401fda324',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5frndv_5farg',['UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a5b7da96e1cd28639f489bcf08194ecd7',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5frndv_5fcb',['UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a2c2b16ef1c537d1596ceb7b72fbf3145',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fkeepalive_5finterval',['UCT_IFACE_PARAM_FIELD_KEEPALIVE_INTERVAL',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a3b05690f0c5ae7cf346a1e7a00186953',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fopen_5fmode',['UCT_IFACE_PARAM_FIELD_OPEN_MODE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a436751cf65204ec8d37e649b0913eff7',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5frx_5fheadroom',['UCT_IFACE_PARAM_FIELD_RX_HEADROOM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596aabb0425ec3c58345ba973683b72dc255',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fsockaddr',['UCT_IFACE_PARAM_FIELD_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596af01913e91929ae3c52c465e5df97bec3',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fstats_5froot',['UCT_IFACE_PARAM_FIELD_STATS_ROOT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a7af1c01a0aa6c8d7ddc167cd516f3272',1,'uct.h']]], + ['uct_5fiface_5fparams',['uct_iface_params',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params',1,'']]], + ['uct_5fiface_5fparams_2emode',['uct_iface_params.mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#unionuct__iface__params_8mode',1,'']]], + ['uct_5fiface_5fparams_2emode_2edevice',['uct_iface_params.mode.device',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8device',1,'']]], + ['uct_5fiface_5fparams_2emode_2esockaddr',['uct_iface_params.mode.sockaddr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8sockaddr',1,'']]], + ['uct_5fiface_5fparams_5ffield',['uct_iface_params_field',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga896baeefc7933d925202c32b0d09f596',1,'uct.h']]], + ['uct_5fiface_5fparams_5ft',['uct_iface_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaff593598b5296991d8081a289f7a7d40',1,'uct_def.h']]], + ['uct_5fiface_5fprogress',['uct_iface_progress',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga56dd7c8b9f4b02ae5da179a3055bcb81',1,'uct.h']]], + ['uct_5fiface_5fprogress_5fdisable',['uct_iface_progress_disable',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga7acfd29e7d7bb8566cfbbf02916bc466',1,'uct.h']]], + ['uct_5fiface_5fprogress_5fenable',['uct_iface_progress_enable',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9f14d2694a06d5ea9e6434a52f8d3ff0',1,'uct.h']]], + ['uct_5fiface_5fquery',['uct_iface_query',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac2ec7cdee76fa075cc65185d7c134bc2',1,'uct.h']]], + ['uct_5fiface_5freject',['uct_iface_reject',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga31c30e35f43121d1715620931860dafe',1,'uct.h']]], + ['uct_5fiface_5frelease_5fdesc',['uct_iface_release_desc',['../group___u_c_t___a_m.html#gac894ed0c24a3481f316945a462d67921',1,'uct.h']]], + ['uct_5fiface_5fset_5fam_5fhandler',['uct_iface_set_am_handler',['../group___u_c_t___a_m.html#ga81dd3f74f8dc8c2c950d932fca0f799e',1,'uct.h']]], + ['uct_5fiface_5fset_5fam_5ftracer',['uct_iface_set_am_tracer',['../group___u_c_t___a_m.html#gaed13079973d867e4bb18be3696216a3a',1,'uct.h']]], + ['uct_5fiface_5ftag_5frecv_5fcancel',['uct_iface_tag_recv_cancel',['../group___u_c_t___t_a_g.html#gad2448d4cf5325dec5aa9c69ae4a025e1',1,'uct.h']]], + ['uct_5fiface_5ftag_5frecv_5fzcopy',['uct_iface_tag_recv_zcopy',['../group___u_c_t___t_a_g.html#gac4ba076343a68f330e5c4659d38bb383',1,'uct.h']]], + ['uct_5fiov',['uct_iov',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iov',1,'']]], + ['uct_5fiov_5ft',['uct_iov_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac4f8a4a4065c3fa4b5a8d125d0ff3a4e',1,'uct_def.h']]], + ['uct_5flistener_5fattr',['uct_listener_attr',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__attr',1,'']]], + ['uct_5flistener_5fattr_5ffield',['uct_listener_attr_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad253d9c2e4116f9a137a2d2450afbe66',1,'uct.h']]], + ['uct_5flistener_5fattr_5ffield_5fsockaddr',['UCT_LISTENER_ATTR_FIELD_SOCKADDR',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggad253d9c2e4116f9a137a2d2450afbe66af566cba098163f464bdad7c392232c3f',1,'uct.h']]], + ['uct_5flistener_5fattr_5ft',['uct_listener_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gad9c5692c9af9e043f6ee4ad3a15dced6',1,'uct_def.h']]], + ['uct_5flistener_5fcreate',['uct_listener_create',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gadb87c52696a73feae4e1d6e0b9a01911',1,'uct.h']]], + ['uct_5flistener_5fdestroy',['uct_listener_destroy',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8f6a0c420fbca1b5fbe7c1d919757d3f',1,'uct.h']]], + ['uct_5flistener_5fh',['uct_listener_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaf88468443532bb4b677b18f038b6f60e',1,'uct_def.h']]], + ['uct_5flistener_5fparam_5ffield_5fbacklog',['UCT_LISTENER_PARAM_FIELD_BACKLOG',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7aa2a3bbfd550dc87ed8bba5cf960068fa',1,'uct.h']]], + ['uct_5flistener_5fparam_5ffield_5fconn_5frequest_5fcb',['UCT_LISTENER_PARAM_FIELD_CONN_REQUEST_CB',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7a8a9ba7427c813614e65f29c38225ab44',1,'uct.h']]], + ['uct_5flistener_5fparam_5ffield_5fuser_5fdata',['UCT_LISTENER_PARAM_FIELD_USER_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7af6172e01a7919f4afd27fa5e0aa0b794',1,'uct.h']]], + ['uct_5flistener_5fparams',['uct_listener_params',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__params',1,'']]], + ['uct_5flistener_5fparams_5ffield',['uct_listener_params_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf716bd7cdc636377ef78c258886693c7',1,'uct.h']]], + ['uct_5flistener_5fparams_5ft',['uct_listener_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8d8a6ca0e12e5f1bc54f8c85bda14d59',1,'uct_def.h']]], + ['uct_5flistener_5fquery',['uct_listener_query',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gae8b7a5fbada262d0f312970f018a916e',1,'uct.h']]], + ['uct_5flistener_5freject',['uct_listener_reject',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa8d1ea690c1600dc334ae6a014110d5e',1,'uct.h']]], + ['uct_5fmadv_5fnormal',['UCT_MADV_NORMAL',['../group___u_c_t___m_d.html#gga72172b231f5e9df777cb130b9f908397a44cc1f4e9d750610f872680ad83a5693',1,'uct.h']]], + ['uct_5fmadv_5fwillneed',['UCT_MADV_WILLNEED',['../group___u_c_t___m_d.html#gga72172b231f5e9df777cb130b9f908397af2f40857cea090977db8a5994b334594',1,'uct.h']]], + ['uct_20memory_20domain',['UCT Memory Domain',['../group___u_c_t___m_d.html',1,'']]], + ['uct_5fmd_5fattr',['uct_md_attr',['../group___u_c_t___m_d.html#structuct__md__attr',1,'']]], + ['uct_5fmd_5fattr_2ecap',['uct_md_attr.cap',['../group___u_c_t___m_d.html#structuct__md__attr_8cap',1,'']]], + ['uct_5fmd_5fattr_5ft',['uct_md_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9e9485d79fdf2f153e05cc5282ab57fd',1,'uct_def.h']]], + ['uct_5fmd_5fclose',['uct_md_close',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac9ab18f8a48b07429c9987b584fe5574',1,'uct.h']]], + ['uct_5fmd_5fconfig_5fread',['uct_md_config_read',['../group___u_c_t___m_d.html#ga8fd8d3ebc188c9016a179d5678c0a71f',1,'uct.h']]], + ['uct_5fmd_5fconfig_5ft',['uct_md_config_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gabfb351862f43010ab8d5bbdb2495d0ee',1,'uct_def.h']]], + ['uct_5fmd_5fdetect_5fmemory_5ftype',['uct_md_detect_memory_type',['../group___u_c_t___m_d.html#gac69d1df8de5ff0b6422af01c3befe67f',1,'uct.h']]], + ['uct_5fmd_5fflag_5fadvise',['UCT_MD_FLAG_ADVISE',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea489e86d8c4f7630c5b15ba37c11e8598',1,'uct.h']]], + ['uct_5fmd_5fflag_5falloc',['UCT_MD_FLAG_ALLOC',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eace1638df732eb289b9dd6255101c6532',1,'uct.h']]], + ['uct_5fmd_5fflag_5fexported_5fmkey',['UCT_MD_FLAG_EXPORTED_MKEY',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8aad09237d801dbd3a7636ebb18c40e4',1,'uct.h']]], + ['uct_5fmd_5fflag_5ffixed',['UCT_MD_FLAG_FIXED',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eae948128d19128010bff52f39b2ea8528',1,'uct.h']]], + ['uct_5fmd_5fflag_5finvalidate',['UCT_MD_FLAG_INVALIDATE',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea3b11ef8fb3fcf99c71ce1f91b03ecd2d',1,'uct.h']]], + ['uct_5fmd_5fflag_5fneed_5fmemh',['UCT_MD_FLAG_NEED_MEMH',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8badc53da14cdd45fa70178483091e55',1,'uct.h']]], + ['uct_5fmd_5fflag_5fneed_5frkey',['UCT_MD_FLAG_NEED_RKEY',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eafc6830135c641eecf0200f9990257e10',1,'uct.h']]], + ['uct_5fmd_5fflag_5freg',['UCT_MD_FLAG_REG',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eac2a33833ce3c103c3de54332c512eba7',1,'uct.h']]], + ['uct_5fmd_5fflag_5freg_5fdmabuf',['UCT_MD_FLAG_REG_DMABUF',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea88f4343ee73e7b4da46e98d07023b9f5',1,'uct.h']]], + ['uct_5fmd_5fflag_5frkey_5fptr',['UCT_MD_FLAG_RKEY_PTR',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8e6750832a6a17fc5aff65c767d0e5b5',1,'uct.h']]], + ['uct_5fmd_5fflag_5fsockaddr',['UCT_MD_FLAG_SOCKADDR',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea1ef79afc094919112724f8eb82c2484b',1,'uct.h']]], + ['uct_5fmd_5fh',['uct_md_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga80ea2d5570f0cef850d315ce72ea8307',1,'uct_def.h']]], + ['uct_5fmd_5fiface_5fconfig_5fread',['uct_md_iface_config_read',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gace64468ec8d46cbcbcfa6efd74e1148c',1,'uct.h']]], + ['uct_5fmd_5fis_5fsockaddr_5faccessible',['uct_md_is_sockaddr_accessible',['../group___u_c_t___m_d.html#ga9d4cd6b6f3206610cbe83cab3eb1e90d',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fall',['UCT_MD_MEM_ACCESS_ALL',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa8de9fc3e5e9a93abee846dbce6f51471',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5flocal_5fread',['UCT_MD_MEM_ACCESS_LOCAL_READ',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aaec71b48ac78529034432e702ae2497af',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5flocal_5fwrite',['UCT_MD_MEM_ACCESS_LOCAL_WRITE',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa3da522cc5178d7330279de64c6d8a42d',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fremote_5fatomic',['UCT_MD_MEM_ACCESS_REMOTE_ATOMIC',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa4478fefd476fe66f7a1721161e3773e1',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fremote_5fget',['UCT_MD_MEM_ACCESS_REMOTE_GET',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa4a699e49e99a57afab4fb7b4825e8a5e',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fremote_5fput',['UCT_MD_MEM_ACCESS_REMOTE_PUT',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa107516b36500372eac7e05bdb71cf4a1',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5frma',['UCT_MD_MEM_ACCESS_RMA',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa53c0d5770a5c69086d0aaa58e7398fa8',1,'uct.h']]], + ['uct_5fmd_5fmem_5fadvise',['uct_md_mem_advise',['../group___u_c_t___m_d.html#gaf5f8ef1c6302792c726b294c84ef06c6',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr',['uct_md_mem_attr',['../group___u_c_t___m_d.html#structuct__md__mem__attr',1,'']]], + ['uct_5fmd_5fmem_5fattr_5ffield',['uct_md_mem_attr_field',['../group___u_c_t___m_d.html#gac4f1c9728c529e4f35eaf03bc14c6977',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5falloc_5flength',['UCT_MD_MEM_ATTR_FIELD_ALLOC_LENGTH',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a7f5f99bb05148218a1855f3f8344aabb',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fbase_5faddress',['UCT_MD_MEM_ATTR_FIELD_BASE_ADDRESS',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a132548201e6dba2fca6b03385eed2356',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fdmabuf_5ffd',['UCT_MD_MEM_ATTR_FIELD_DMABUF_FD',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a1178afc62486924f953e18fbf1613754',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fdmabuf_5foffset',['UCT_MD_MEM_ATTR_FIELD_DMABUF_OFFSET',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a7511ff87de4e1dcd4140acc9a6131df4',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fmem_5ftype',['UCT_MD_MEM_ATTR_FIELD_MEM_TYPE',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a873fb4c4b884a7598873badb63a8caf9',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fsys_5fdev',['UCT_MD_MEM_ATTR_FIELD_SYS_DEV',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a1b869b2080c1ab765fa0b67a86dabb24',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5ft',['uct_md_mem_attr_field_t',['../group___u_c_t___m_d.html#ga64d71b571e62366b78dceadff144907e',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ft',['uct_md_mem_attr_t',['../group___u_c_t___m_d.html#gaaa5db32507a7117f0b79185234844900',1,'uct.h']]], + ['uct_5fmd_5fmem_5fdereg',['uct_md_mem_dereg',['../group___u_c_t___m_d.html#gaf1e9ff0364ec4d2bb05c06a2fab67dd5',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5ffixed',['UCT_MD_MEM_FLAG_FIXED',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aac91502fd80954a19287b56c82d8c15e8',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5fhide_5ferrors',['UCT_MD_MEM_FLAG_HIDE_ERRORS',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aac9affab2e3fc8ce0237b8b7800731c49',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5flock',['UCT_MD_MEM_FLAG_LOCK',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa177416f1bc52ecf58571f2320ea860f4',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5fnonblock',['UCT_MD_MEM_FLAG_NONBLOCK',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa156afde3449517fd4d518148df8e3e24',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflags',['uct_md_mem_flags',['../group___u_c_t___m_d.html#ga3b0345adc84e4b3224366502aca5e11a',1,'uct.h']]], + ['uct_5fmd_5fmem_5fquery',['uct_md_mem_query',['../group___u_c_t___m_d.html#ga7d8cf921f8fd8fba4545c568d495bc8f',1,'uct.h']]], + ['uct_5fmd_5fmem_5freg',['uct_md_mem_reg',['../group___u_c_t___m_d.html#gadafbaee4d8462954361fd2a41c8069e0',1,'uct.h']]], + ['uct_5fmd_5fmkey_5fpack',['uct_md_mkey_pack',['../group___u_c_t___m_d.html#ga91cc404f53a9ef031c7bfbe886c0f414',1,'uct.h']]], + ['uct_5fmd_5fopen',['uct_md_open',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga6254b927d3bfcb9699dbf82f0987b9ce',1,'uct.h']]], + ['uct_5fmd_5fops_5ft',['uct_md_ops_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac8dbb0c7c104ee4eb86cb299e56a535e',1,'uct_def.h']]], + ['uct_5fmd_5fquery',['uct_md_query',['../group___u_c_t___m_d.html#gae7f6d3f902cff0370fe0f07f841898f1',1,'uct.h']]], + ['uct_5fmd_5fquery_5ftl_5fresources',['uct_md_query_tl_resources',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae4572e36e60bf2665e59cc7ef04bb011',1,'uct.h']]], + ['uct_5fmd_5fresource_5fdesc',['uct_md_resource_desc',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__md__resource__desc',1,'']]], + ['uct_5fmd_5fresource_5fdesc_5ft',['uct_md_resource_desc_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2ebcaffd02c6aec8e3c8a4df237169c9',1,'uct.h']]], + ['uct_5fmd_5ft',['uct_md_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gad8a3d325a68dfb193354ac884f6ddd1d',1,'uct_def.h']]], + ['uct_5fmem_5fadvice_5ft',['uct_mem_advice_t',['../group___u_c_t___m_d.html#ga72172b231f5e9df777cb130b9f908397',1,'uct.h']]], + ['uct_5fmem_5falloc',['uct_mem_alloc',['../group___u_c_t___m_d.html#ga3c91345959561cd033670a9ae527d52f',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5faddress',['UCT_MEM_ALLOC_PARAM_FIELD_ADDRESS',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923abcfd9def1c725531f11cbbcde9fedd6f',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fflags',['UCT_MEM_ALLOC_PARAM_FIELD_FLAGS',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923ae179d3ffed3e53b0e2cda2d6a62280d3',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fmds',['UCT_MEM_ALLOC_PARAM_FIELD_MDS',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a122274e877d32afcfafd10cde3c0b8e7',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fmem_5ftype',['UCT_MEM_ALLOC_PARAM_FIELD_MEM_TYPE',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a0f09a88dc239026aefa08e4597e0d9e6',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fname',['UCT_MEM_ALLOC_PARAM_FIELD_NAME',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a97de3a2b66f4cd940a271df1b9632f83',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparams_5ffield_5ft',['uct_mem_alloc_params_field_t',['../group___u_c_t___m_d.html#ga3421ca55bc67f5752ca6164f678a7923',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparams_5ft',['uct_mem_alloc_params_t',['../group___u_c_t___m_d.html#structuct__mem__alloc__params__t',1,'']]], + ['uct_5fmem_5falloc_5fparams_5ft_2emds',['uct_mem_alloc_params_t.mds',['../group___u_c_t___m_d.html#structuct__mem__alloc__params__t_8mds',1,'']]], + ['uct_5fmem_5ffree',['uct_mem_free',['../group___u_c_t___m_d.html#ga55be17fdb04dcf28373bef0ddf423e94',1,'uct.h']]], + ['uct_5fmem_5fh',['uct_mem_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2af4d7f2a70d4ac5eaef079dc68506b8',1,'uct_def.h']]], + ['uct_5fmsg_5fflags',['uct_msg_flags',['../group___u_c_t___a_m.html#ga139e5d124e16d412200bf64bdbccab1c',1,'uct.h']]], + ['uct_5fpack_5fcallback_5ft',['uct_pack_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga75c4600da362988f9d4f4d53a294f36b',1,'uct_def.h']]], + ['uct_5fpending_5fcallback_5ft',['uct_pending_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gad282a6c6faf7911791c3978bcfbb3c93',1,'uct_def.h']]], + ['uct_5fpending_5fpurge_5fcallback_5ft',['uct_pending_purge_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga35d6acc042923019e0d5819b72a465f5',1,'uct_def.h']]], + ['uct_5fpending_5freq',['uct_pending_req',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__pending__req',1,'']]], + ['uct_5fpending_5freq_5ft',['uct_pending_req_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaacadb8cfd53f7cafd39fd7f1ae12ec02',1,'uct_def.h']]], + ['uct_5fppn_5fbandwidth',['uct_ppn_bandwidth',['../namespace_3global_scope_4.html#structuct__ppn__bandwidth',1,'']]], + ['uct_5fprogress_5frecv',['UCT_PROGRESS_RECV',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a13a7d7c06d204f61b5de0cdf3ede1957',1,'uct.h']]], + ['uct_5fprogress_5fsend',['UCT_PROGRESS_SEND',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a5a00ade1aed7157a0662d8a4ae9cc2f5',1,'uct.h']]], + ['uct_5fprogress_5fthread_5fsafe',['UCT_PROGRESS_THREAD_SAFE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a8cba06626715c4be748d16a7baf90b77',1,'uct.h']]], + ['uct_5fprogress_5ftypes',['uct_progress_types',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga71bfe6e07ebbcc036f883b31db1e9e51',1,'uct.h']]], + ['uct_5fquery_5fcomponents',['uct_query_components',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac11a18f80ae695355914c32095e5c75d',1,'uct.h']]], + ['uct_5frelease_5fcomponent_5flist',['uct_release_component_list',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gadd4eea4cf8e757f5ddd2e9edb1942dd0',1,'uct.h']]], + ['uct_5frelease_5ftl_5fresource_5flist',['uct_release_tl_resource_list',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga1edfeac896c9ca285ab11580c904b558',1,'uct.h']]], + ['uct_20communication_20resource',['UCT Communication Resource',['../group___u_c_t___r_e_s_o_u_r_c_e.html',1,'']]], + ['uct_20interface_20operations_20and_20capabilities',['UCT interface operations and capabilities',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html',1,'']]], + ['uct_20interface_20for_20asynchronous_20event_20capabilities',['UCT interface for asynchronous event capabilities',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html',1,'']]], + ['uct_5frkey_5fbundle',['uct_rkey_bundle',['../group___u_c_t___m_d.html#structuct__rkey__bundle',1,'']]], + ['uct_5frkey_5fbundle_5ft',['uct_rkey_bundle_t',['../group___u_c_t___m_d.html#gac09ce3a9f1ff378a803acdc13726089e',1,'uct.h']]], + ['uct_5frkey_5fctx_5fh',['uct_rkey_ctx_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gab9a50bee74dc6d4674fb3800aab19da7',1,'uct_def.h']]], + ['uct_5frkey_5fptr',['uct_rkey_ptr',['../group___u_c_t___m_d.html#ga0d9f92b5814f82afc67c9f4a7ba348e3',1,'uct.h']]], + ['uct_5frkey_5frelease',['uct_rkey_release',['../group___u_c_t___m_d.html#gaea26840237c8c112e0c1505c1423cd30',1,'uct.h']]], + ['uct_5frkey_5ft',['uct_rkey_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2ccb9c7b57d14f25db9d2e850c348180',1,'uct_def.h']]], + ['uct_5frkey_5funpack',['uct_rkey_unpack',['../group___u_c_t___m_d.html#ga2927741255a1ab0efc82b965f4266efa',1,'uct.h']]], + ['uct_20remote_20memory_20access_20operations',['UCT Remote memory access operations',['../group___u_c_t___r_m_a.html',1,'']]], + ['uct_5fsend_5fflag_5fpeer_5fcheck',['UCT_SEND_FLAG_PEER_CHECK',['../group___u_c_t___a_m.html#gga139e5d124e16d412200bf64bdbccab1ca222442e08a093d34d6266e810346f4d8',1,'uct.h']]], + ['uct_5fsend_5fflag_5fsignaled',['UCT_SEND_FLAG_SIGNALED',['../group___u_c_t___a_m.html#gga139e5d124e16d412200bf64bdbccab1ca5af3a2c43c1e989a4f21f97188f38b06',1,'uct.h']]], + ['uct_5fsockaddr_5facc_5flocal',['UCT_SOCKADDR_ACC_LOCAL',['../group___u_c_t___m_d.html#ggacb560e35a1b169ca88792200817e219ea0f21e1dc1e98d3ee0291cc345bfe1fde',1,'uct.h']]], + ['uct_5fsockaddr_5facc_5fremote',['UCT_SOCKADDR_ACC_REMOTE',['../group___u_c_t___m_d.html#ggacb560e35a1b169ca88792200817e219ea4e0f66a27582dfec8698a77102fb368e',1,'uct.h']]], + ['uct_5fsockaddr_5faccessibility_5ft',['uct_sockaddr_accessibility_t',['../group___u_c_t___m_d.html#gacb560e35a1b169ca88792200817e219e',1,'uct.h']]], + ['uct_5fsockaddr_5fconn_5frequest_5fcallback_5ft',['uct_sockaddr_conn_request_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga18a175c5b28386d6693a35ae432466ef',1,'uct_def.h']]], + ['uct_20tag_20matching_20operations',['UCT Tag matching operations',['../group___u_c_t___t_a_g.html',1,'']]], + ['uct_5ftag_5fcontext',['uct_tag_context',['../structuct__tag__context.html',1,'']]], + ['uct_5ftag_5fcontext_5ft',['uct_tag_context_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga65b6470372d51789a3a96cc5ea317f9d',1,'uct_def.h']]], + ['uct_5ftag_5frecv_5fcb_5finline_5fdata',['UCT_TAG_RECV_CB_INLINE_DATA',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga726ca809ffd3d67ab4b8476646f26635a5dcb013c4470abbabc764c473898df3e',1,'uct.h']]], + ['uct_5ftag_5ft',['uct_tag_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga162e00587cfb6506fe1c038c0f63e2ca',1,'uct_def.h']]], + ['uct_5ftag_5funexp_5feager_5fcb_5ft',['uct_tag_unexp_eager_cb_t',['../group___u_c_t___t_a_g.html#ga4ba3d3c3d35e02d9d6952d927c9b53bd',1,'uct_def.h']]], + ['uct_5ftag_5funexp_5frndv_5fcb_5ft',['uct_tag_unexp_rndv_cb_t',['../group___u_c_t___t_a_g.html#ga8534a90a1887092c91c4bcaf029ac6fd',1,'uct_def.h']]], + ['uct_5ftl_5fresource_5fdesc',['uct_tl_resource_desc',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__tl__resource__desc',1,'']]], + ['uct_5ftl_5fresource_5fdesc_5ft',['uct_tl_resource_desc_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga42b500c6ec481992e4edd739bb598d27',1,'uct.h']]], + ['uct_5funpack_5fcallback_5ft',['uct_unpack_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga58d033b0b2eacc05af41af8c07fde4da',1,'uct_def.h']]], + ['uct_5fworker_5fcb_5fid_5ft',['uct_worker_cb_id_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9ec2e5d2c228f55751038dad0691c67b',1,'uct_def.h']]], + ['uct_5fworker_5fcreate',['uct_worker_create',['../group___u_c_t___c_o_n_t_e_x_t.html#ga6f21b4dd1dc16d55f4a8e6bf65f8757f',1,'uct.h']]], + ['uct_5fworker_5fdestroy',['uct_worker_destroy',['../group___u_c_t___c_o_n_t_e_x_t.html#ga22608452cb78bb1d3c9253860025c4fd',1,'uct.h']]], + ['uct_5fworker_5fh',['uct_worker_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2c776904a7202aa95ec1ceecfe74f2f9',1,'uct_def.h']]], + ['uct_5fworker_5fprogress',['uct_worker_progress',['../group___u_c_t___c_o_n_t_e_x_t.html#ga4ec9fae48afd24d7fa7c5537e76b54e5',1,'uct.h']]], + ['uct_5fworker_5fprogress_5fregister_5fsafe',['uct_worker_progress_register_safe',['../group___u_c_t___c_o_n_t_e_x_t.html#ga358ed4a23be49a3c1ace5d78a0b2ee9c',1,'uct.h']]], + ['uct_5fworker_5fprogress_5funregister_5fsafe',['uct_worker_progress_unregister_safe',['../group___u_c_t___c_o_n_t_e_x_t.html#ga2dcbb085b3f94e5a2b6771c4cc7bcbbf',1,'uct.h']]], + ['unpack',['unpack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaef4bcfb34731b7f113479b221304b698',1,'ucp_generic_dt_ops']]], + ['user_5fdata',['user_data',['../group___u_c_p___w_o_r_k_e_r.html#a2c277d353e134219265887c4f5339159',1,'ucp_worker_params::user_data()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a202ee8e08e637b9e868387ab294a684c',1,'ucp_stream_poll_ep::user_data()'],['../group___u_c_p___c_o_n_t_e_x_t.html#aa9092d65a2e4e55368ca4f88775c190b',1,'ucp_request_param_t::user_data()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#adaf49e16ee05400f715f432e442336cb',1,'ucp_ep_params::user_data()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a107bb6eec86e0f877d2f256378ea0df8',1,'uct_ep_params::user_data()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8a9d41566f96e942418c48139ccede90',1,'uct_listener_params::user_data()']]] +]; diff --git a/api/v1.14/html/search/all_12.html b/api/v1.14/html/search/all_12.html new file mode 100644 index 00000000000..abd082a5e7e --- /dev/null +++ b/api/v1.14/html/search/all_12.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_12.js b/api/v1.14/html/search/all_12.js new file mode 100644 index 00000000000..60d3ea64513 --- /dev/null +++ b/api/v1.14/html/search/all_12.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['worker_5fuid',['worker_uid',['../group___u_c_p___w_o_r_k_e_r.html#a682d3477655dc66072e03530d95239f2',1,'ucp_worker_address_attr']]] +]; diff --git a/api/v1.14/html/search/all_2.html b/api/v1.14/html/search/all_2.html new file mode 100644 index 00000000000..d15ac65f7c5 --- /dev/null +++ b/api/v1.14/html/search/all_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_2.js b/api/v1.14/html/search/all_2.js new file mode 100644 index 00000000000..7fc60bbb889 --- /dev/null +++ b/api/v1.14/html/search/all_2.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['cap',['cap',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aff010f596f41cdceae41e6c46652e1ca',1,'uct_iface_attr::cap()'],['../group___u_c_t___m_d.html#a9f50173ce8d0a0303e7f480fb7e024e8',1,'uct_md_attr::cap()']]], + ['cb',['cb',['../group___u_c_p___c_o_n_t_e_x_t.html#a43bb8fd4782ff74f3d93d4356ce0242d',1,'ucp_request_param_t::cb()'],['../group___u_c_p___w_o_r_k_e_r.html#acd54cdefba3f3f5e145dfe2360485659',1,'ucp_am_handler_param::cb()'],['../group___u_c_p___w_o_r_k_e_r.html#a3017ef77fb807d87b60667df14f6c0b0',1,'ucp_listener_accept_handler::cb()'],['../group___u_c_p___c_o_m_m.html#a0bf3f446a1821a62dd3a300584792e33',1,'ucp_err_handler::cb()'],['../group___u_c_p___w_o_r_k_e_r.html#a55ac5ba9e07ca64d55e22730038a4018',1,'ucp_listener_conn_handler::cb()'],['../namespace_3global_scope_4.html#a57233b5af77231c4fb6e8d0c7a9cf279',1,'ucs_callbackq_elem::cb()']]], + ['client_5faddress',['client_address',['../group___u_c_p___w_o_r_k_e_r.html#a8ca1dc70d395335dc9f8fe20e9de1a0d',1,'ucp_conn_request_attr::client_address()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab9e98cce78462e28a6593a891f2aa3bc',1,'uct_cm_listener_conn_request_args::client_address()']]], + ['client_5fid',['client_id',['../group___u_c_p___w_o_r_k_e_r.html#a41afbbfba922c2bdc4f35e2c4ecfcaa4',1,'ucp_worker_params::client_id()'],['../group___u_c_p___w_o_r_k_e_r.html#aff4d88d6fd3b2613e058bbcf43d0815b',1,'ucp_conn_request_attr::client_id()']]], + ['cm',['cm',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aa8133488ec45605b0c825e66d12ba1a8',1,'uct_ep_params']]], + ['cm_5fresolve_5fcb',['cm_resolve_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a84e49366f4967ac76fad12d27295ec87',1,'uct_ep_params']]], + ['completed_5fcb',['completed_cb',['../structuct__tag__context.html#a8a872809ba82414123000deeb3f8dd2f',1,'uct_tag_context']]], + ['component_5fname',['component_name',['../group___u_c_t___m_d.html#a1f337f217f10d019529e79d9fe60af5c',1,'uct_md_attr']]], + ['conn_5fhandler',['conn_handler',['../group___u_c_p___w_o_r_k_e_r.html#a0694aacde5fff09dc75e556e8116098a',1,'ucp_listener_params']]], + ['conn_5fpriv_5fdata',['conn_priv_data',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3557ea63ebf0f959c06ad78a592cd311',1,'uct_cm_remote_data']]], + ['conn_5fpriv_5fdata_5flength',['conn_priv_data_length',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad68a816000641cdaab8b7bae782c005d',1,'uct_cm_remote_data']]], + ['conn_5frequest',['conn_request',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a9fbba62cd4a470f2bc7c6f7e55fe3db1',1,'ucp_ep_params::conn_request()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad852c3138b06acb342e7f9c78ade8e41',1,'uct_ep_params::conn_request()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#aec2a2194a329ef66262756de423a3cb2',1,'uct_cm_listener_conn_request_args::conn_request()']]], + ['conn_5frequest_5fcb',['conn_request_cb',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a84a1de42f58965886c5d457480be3b2d',1,'uct_listener_params']]], + ['count',['count',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a03dd4423d8570e5b33af6a2f2a4c164e',1,'ucp_datatype_attr::count()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ac80f9b64f46a8a3a9de6cb0b121667ab',1,'uct_completion::count()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#addb247a8d80907156df00159bbafcda5',1,'uct_iov::count()']]], + ['cpu_5fmask',['cpu_mask',['../group___u_c_p___w_o_r_k_e_r.html#afc8f70f3ff12f36ea34ad40ff12de61e',1,'ucp_worker_params::cpu_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7093f64ec5efe2f1c3833dbe90b9099a',1,'uct_iface_params::cpu_mask()']]], + ['conventions_20and_20notations',['Conventions and Notations',['../md_docs_doxygen_conventions.html',1,'']]] +]; diff --git a/api/v1.14/html/search/all_3.html b/api/v1.14/html/search/all_3.html new file mode 100644 index 00000000000..9f526c67cd4 --- /dev/null +++ b/api/v1.14/html/search/all_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_3.js b/api/v1.14/html/search/all_3.js new file mode 100644 index 00000000000..22060668a65 --- /dev/null +++ b/api/v1.14/html/search/all_3.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['datatype',['datatype',['../group___u_c_p___c_o_n_t_e_x_t.html#a3988d603154f90eb5405785cac62b65f',1,'ucp_request_param_t']]], + ['debug_5fstring',['debug_string',['../group___u_c_p___c_o_m_m.html#aa284657c27e1a8d6d2653f12cfb61bc5',1,'ucp_request_attr_t']]], + ['debug_5fstring_5fsize',['debug_string_size',['../group___u_c_p___c_o_m_m.html#a871b3929bfe0b97d249016e57fd2fdd7',1,'ucp_request_attr_t']]], + ['dedicated',['dedicated',['../namespace_3global_scope_4.html#ab415588ec7332c0264ac81d883dd7a8c',1,'uct_ppn_bandwidth']]], + ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]], + ['dev_5faddr',['dev_addr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a273d48d73a6813f2fe097026d739e9d9',1,'uct_ep_params::dev_addr()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ada382f435e44b388e3e29b16a04c3808',1,'uct_cm_remote_data::dev_addr()']]], + ['dev_5faddr_5flength',['dev_addr_length',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a05768f24babff9b522b4845dc2672c55',1,'uct_cm_remote_data']]], + ['dev_5fname',['dev_name',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a19260a4faff281f45363008cbcaa0f41',1,'uct_tl_resource_desc::dev_name()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a10c637e00793a55862826870bfe6499d',1,'uct_cm_ep_priv_data_pack_args::dev_name()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af750fc4d3be08d8dcd81f452b1ba5ab4',1,'uct_cm_ep_resolve_args::dev_name()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a718770a6c8d147fadd63490c029de6d2',1,'uct_cm_listener_conn_request_args::dev_name()']]], + ['dev_5fnum_5fpaths',['dev_num_paths',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ac9c279de0e13a96a683baf04d3c40c46',1,'uct_iface_attr']]], + ['dev_5ftype',['dev_type',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a83b6513b96f2a97a82dcd3ab751c996a',1,'uct_tl_resource_desc']]], + ['device_5faddr_5flen',['device_addr_len',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a150fb2fb81e47e2a97571147cdc1647e',1,'uct_iface_attr']]], + ['device_5fname',['device_name',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a5a1ae736a47936285f9cf51ad61b0821',1,'ucp_transport_entry_t']]], + ['disconnect_5fcb',['disconnect_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ac270000f4e5a1bbcba955098ea7e8e6a',1,'uct_ep_params']]], + ['dmabuf_5ffd',['dmabuf_fd',['../group___u_c_t___m_d.html#a84fd9cd1ae1fcdbaa0bd6e5cf8ac32a5',1,'uct_md_mem_attr']]], + ['dmabuf_5foffset',['dmabuf_offset',['../group___u_c_t___m_d.html#aa91e5831a71cbe0b19c274178cbb1353',1,'uct_md_mem_attr']]], + ['design',['Design',['../md_docs_doxygen_design.html',1,'']]] +]; diff --git a/api/v1.14/html/search/all_4.html b/api/v1.14/html/search/all_4.html new file mode 100644 index 00000000000..7b814aa9477 --- /dev/null +++ b/api/v1.14/html/search/all_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_4.js b/api/v1.14/html/search/all_4.js new file mode 100644 index 00000000000..c55b474d3b1 --- /dev/null +++ b/api/v1.14/html/search/all_4.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['eager_5farg',['eager_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7c6b1ea224405a00438306212d30a172',1,'uct_iface_params']]], + ['eager_5fcb',['eager_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3e70569e1bf8a8d62fbc686dd147fd56',1,'uct_iface_params']]], + ['entries',['entries',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a4603a2147c2627572889484eeed7a32e',1,'ucp_transports_t']]], + ['entry_5fsize',['entry_size',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a0f09e5a459259f70ee7644f62daa2adc',1,'ucp_transports_t']]], + ['ep',['ep',['../group___u_c_p___e_n_d_p_o_i_n_t.html#aa9703a325b9dc242facae719f6cef8a7',1,'ucp_stream_poll_ep']]], + ['ep_5faddr_5flen',['ep_addr_len',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a70955f4d39111b0a48c85e0ff65768a0',1,'uct_iface_attr']]], + ['err_5fhandler',['err_handler',['../group___u_c_p___e_n_d_p_o_i_n_t.html#aaf329de9e2b45311099cee8c9df43a20',1,'ucp_ep_params::err_handler()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#afc90f76dc754aa478af524ac7c9d3f51',1,'uct_iface_params::err_handler()']]], + ['err_5fhandler_5farg',['err_handler_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#abd1425d7ce0507acc97361abc56ea66d',1,'uct_iface_params']]], + ['err_5fhandler_5fflags',['err_handler_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a01b7ef6558dbe6f91ac5c59b63d5e0dd',1,'uct_iface_params']]], + ['err_5fmode',['err_mode',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a50ce29893509695caa5b70ab4525a4d6',1,'ucp_ep_params']]], + ['estimated_5fnum_5feps',['estimated_num_eps',['../group___u_c_p___c_o_n_f_i_g.html#a5881757ea71d8c3ff7c15632a6cbd699',1,'ucp_params']]], + ['estimated_5fnum_5fppn',['estimated_num_ppn',['../group___u_c_p___c_o_n_f_i_g.html#ab5966a27f9f4cf476560f9c87ac839cc',1,'ucp_params']]], + ['estimated_5ftime',['estimated_time',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ac8864d77a5f8d333c2de912ad621626a',1,'ucp_ep_evaluate_perf_attr_t']]], + ['event_5ffd',['event_fd',['../group___u_c_p___w_o_r_k_e_r.html#aaeaf0e7ec196ed72ee2b52183f8d1d7d',1,'ucp_worker_params']]], + ['events',['events',['../group___u_c_p___w_o_r_k_e_r.html#a89b9add865222b57caee81874704ba89',1,'ucp_worker_params']]], + ['exported_5fmemh_5fbuffer',['exported_memh_buffer',['../group___u_c_p___m_e_m.html#af4b12bd23e90295c7503e6dc19063a6b',1,'ucp_mem_map_params']]] +]; diff --git a/api/v1.14/html/search/all_5.html b/api/v1.14/html/search/all_5.html new file mode 100644 index 00000000000..d8de5560e28 --- /dev/null +++ b/api/v1.14/html/search/all_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_5.js b/api/v1.14/html/search/all_5.js new file mode 100644 index 00000000000..18810c85c93 --- /dev/null +++ b/api/v1.14/html/search/all_5.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['fast_5felems',['fast_elems',['../namespace_3global_scope_4.html#a00e13bcee0aa60124620ed02e5cd9116',1,'ucs_callbackq']]], + ['features',['features',['../group___u_c_p___c_o_n_f_i_g.html#afe7ed2a6c6ceb48e18a04f524d844e67',1,'ucp_params::features()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a967dbb2a49191e0b028f7058938293c6',1,'uct_iface_params::features()']]], + ['field_5fmask',['field_mask',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a416b16fac9ac4cc99a06833eb6dbdfa9',1,'ucp_datatype_attr::field_mask()'],['../group___u_c_p___c_o_n_f_i_g.html#a62d432cd22de13ccc9bb12edeb9c566b',1,'ucp_params::field_mask()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a529751be1cb45aff76dde0e5bf22b6d9',1,'ucp_lib_attr::field_mask()'],['../group___u_c_p___c_o_n_t_e_x_t.html#ae4603d33274d3dd0bf41e1d759513601',1,'ucp_context_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#af0f34f82bba00221aa22ec54fa5efc0f',1,'ucp_worker_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#a33863ec848e47f79d2e14181fe2aa921',1,'ucp_worker_params::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#a596a9aee8bfbd1c232c6d63549c75f08',1,'ucp_worker_address_attr::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#afffe0975a57573bd318e72e59bd53957',1,'ucp_ep_evaluate_perf_param_t::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a3506b654e12be644d0ffe96368106142',1,'ucp_ep_evaluate_perf_attr_t::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#aaaa6353f56fd585d7c83c363380703f4',1,'ucp_listener_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#ad6a97d8268992c34631ac773a6c2148b',1,'ucp_conn_request_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#afb01e3b0d3c0a04cef0cde4f849fcc1d',1,'ucp_listener_params::field_mask()'],['../group___u_c_p___m_e_m.html#aaeaeceb96d57c6cd5048abeda3fcb87f',1,'ucp_mem_map_params::field_mask()'],['../group___u_c_p___c_o_m_m.html#a311396d670dcb5ca9941dc17a8ad23d7',1,'ucp_request_attr_t::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#a8f31d53e411769961286865cb9332f6f',1,'ucp_am_handler_param::field_mask()'],['../group___u_c_p___m_e_m.html#a01c09d6fdafcd62e733cece26166e036',1,'ucp_mem_advise_params::field_mask()'],['../group___u_c_p___m_e_m.html#aafd1c1f51c5170b30695d9f73aad1f99',1,'ucp_memh_pack_params::field_mask()'],['../group___u_c_p___m_e_m.html#a29dab951ef791f596be6a08e7fc88cb6',1,'ucp_memh_buffer_release_params::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a385c4a4337266da2a874e5ff533fbab2',1,'ucp_ep_attr::field_mask()'],['../group___u_c_p___m_e_m.html#ac2b9b68d716c78b3750f50f599259e66',1,'ucp_mem_attr::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#ab7b3f3ba1d402a621b8ea708dcf2387b',1,'ucp_ep_params::field_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad95df67b474d3f51629e0a6d0ee2537e',1,'uct_component_attr::field_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a9e1d45a55b7e9629eb548f27bea940a0',1,'uct_iface_params::field_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a9c1ea4678d33fd3f741856135ad61d23',1,'uct_ep_params::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a360893687dea33e2451afc89b89cf858',1,'uct_ep_connect_params::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a384bf8b975a0d90b7117f4e393684e3d',1,'uct_cm_attr::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abd499e7b852c6af527c8db5a010040b6',1,'uct_listener_attr::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2106149ec63faa5e1aebe7c7b1f941d6',1,'uct_listener_params::field_mask()'],['../group___u_c_t___m_d.html#a95cf319a4733fed89f7b52b66f82f84a',1,'uct_md_mem_attr::field_mask()'],['../group___u_c_t___m_d.html#ab06683bb31a585ea60b85f6f0f3126c8',1,'uct_mem_alloc_params_t::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2c613c2ce5d4a428c87a0d83849875ca',1,'uct_cm_ep_priv_data_pack_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abca562cc9e4c45a606ae464815d6cf1a',1,'uct_cm_ep_resolve_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af27cfe2f1146f9e7f8481d192728640e',1,'uct_cm_remote_data::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad79f7025c8f43a961b3f8d0501b45188',1,'uct_cm_listener_conn_request_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a07453861a47b7c717f6e89356f75398e',1,'uct_cm_ep_client_connect_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a96b97f088ce727e04b1de822227b3283',1,'uct_cm_ep_server_conn_notify_args::field_mask()']]], + ['file_5ffilter',['file_filter',['../namespace_3global_scope_4.html#a24ae3d6f63dc62e024f4dc9b3af519d2',1,'ucs_log_component_config']]], + ['finish',['finish',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga09ee4ed178f4c27feec4e37f52a8e17b',1,'ucp_generic_dt_ops']]], + ['flags',['flags',['../group___u_c_p___w_o_r_k_e_r.html#adbd9725024f5138a693196f11dab124c',1,'ucp_worker_params::flags()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a1e761ffd7b8edf7399ab497600200266',1,'ucp_stream_poll_ep::flags()'],['../group___u_c_p___m_e_m.html#a668567560d65f2e0458159d444fb89ca',1,'ucp_mem_map_params::flags()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a55a8ff2559470c5def6077a86ee9d898',1,'ucp_request_param_t::flags()'],['../group___u_c_p___w_o_r_k_e_r.html#a061115b2dc01fb803ae8082bd41f8730',1,'ucp_am_handler_param::flags()'],['../group___u_c_p___m_e_m.html#a3e9ba8e33dd1daf74e341dee2abacff7',1,'ucp_memh_pack_params::flags()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a9bb65021187347fe311535857e19e6c3',1,'ucp_ep_params::flags()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad2800e9666be0be84926f768eac792a2',1,'uct_component_attr::flags()'],['../group___u_c_t___m_d.html#a8180ccc5d99649919a9061c9ebb2504f',1,'uct_mem_alloc_params_t::flags()'],['../namespace_3global_scope_4.html#a3a0d3c938fef66985c8cf44071d23fd6',1,'ucs_callbackq_elem::flags()']]], + ['func',['func',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a34d9a5e03c0d9199a2d540f1a2cee5a2',1,'uct_completion::func()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a638accaa60c4c3f373c6d12c2ea74c6c',1,'uct_pending_req::func()']]] +]; diff --git a/api/v1.14/html/search/all_6.html b/api/v1.14/html/search/all_6.html new file mode 100644 index 00000000000..9ba0cc2b4d1 --- /dev/null +++ b/api/v1.14/html/search/all_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_6.js b/api/v1.14/html/search/all_6.js new file mode 100644 index 00000000000..76993ce92a2 --- /dev/null +++ b/api/v1.14/html/search/all_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['handle',['handle',['../group___u_c_t___m_d.html#ab42e33b02da0cc7023495793fae7f569',1,'uct_rkey_bundle']]] +]; diff --git a/api/v1.14/html/search/all_7.html b/api/v1.14/html/search/all_7.html new file mode 100644 index 00000000000..9384ec9b3b1 --- /dev/null +++ b/api/v1.14/html/search/all_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_7.js b/api/v1.14/html/search/all_7.js new file mode 100644 index 00000000000..dc4f3561354 --- /dev/null +++ b/api/v1.14/html/search/all_7.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['id',['id',['../group___u_c_p___w_o_r_k_e_r.html#ad0c6157f387e18cb4d92a37a638274af',1,'ucp_am_handler_param::id()'],['../namespace_3global_scope_4.html#a12ff9e4e3560d4371a71e0549a6237d4',1,'ucs_callbackq_elem::id()']]], + ['iface',['iface',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a21e3628c5ffcafcdeb732f4f9687aa30',1,'uct_ep_params']]], + ['iface_5faddr',['iface_addr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ae8c9ada98be19a83ab9cd2af30203d5f',1,'uct_ep_params']]], + ['iface_5faddr_5flen',['iface_addr_len',['../group___u_c_t___r_e_s_o_u_r_c_e.html#adaeded4e728f80628ff6d29eeae7a5b0',1,'uct_iface_attr']]], + ['introduction',['Introduction',['../md_docs_doxygen_intro.html',1,'']]] +]; diff --git a/api/v1.14/html/search/all_8.html b/api/v1.14/html/search/all_8.html new file mode 100644 index 00000000000..37566c5d838 --- /dev/null +++ b/api/v1.14/html/search/all_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_8.js b/api/v1.14/html/search/all_8.js new file mode 100644 index 00000000000..c69ef5080af --- /dev/null +++ b/api/v1.14/html/search/all_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['keepalive_5finterval',['keepalive_interval',['../group___u_c_t___r_e_s_o_u_r_c_e.html#afbbbea17089ee8ff5ef0ef6ef3199cfe',1,'uct_iface_params']]] +]; diff --git a/api/v1.14/html/search/all_9.html b/api/v1.14/html/search/all_9.html new file mode 100644 index 00000000000..c8c51023c26 --- /dev/null +++ b/api/v1.14/html/search/all_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_9.js b/api/v1.14/html/search/all_9.js new file mode 100644 index 00000000000..e5d6df31224 --- /dev/null +++ b/api/v1.14/html/search/all_9.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['latency',['latency',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ace9cf2c31674223b000dff0e72c5d533',1,'uct_iface_attr']]], + ['length',['length',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a776d38e0b127efb673685644b6816663',1,'ucp_dt_iov::length()'],['../group___u_c_p___m_e_m.html#a36d735fe974dd85677474c028edb2af8',1,'ucp_mem_map_params::length()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a6fd83122b93c677e702dc37b39e8351b',1,'ucp_tag_recv_info::length()'],['../group___u_c_p___m_e_m.html#a33e763e90d0cc7aad526a69dee8ef900',1,'ucp_mem_advise_params::length()'],['../group___u_c_p___m_e_m.html#ae807002e05a4a269a74c767e23f49fa8',1,'ucp_mem_attr::length()'],['../group___u_c_t___m_d.html#ae867afdf079a09edbbb03134e9d32489',1,'uct_allocated_memory::length()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad00b6e55c209c6abc87b091f4c776cd5',1,'uct_iov::length()']]], + ['listen_5fsockaddr',['listen_sockaddr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3a5bb921af4157bc96d39aa580ff978f',1,'uct_iface_attr']]], + ['local_5fcpus',['local_cpus',['../group___u_c_t___m_d.html#aade634758ea5ea9fc7f64b17d66507d7',1,'uct_md_attr']]], + ['local_5fsockaddr',['local_sockaddr',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ae54665498f1f7c019e716e7bf9d56531',1,'ucp_ep_attr::local_sockaddr()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#ac7e00eea58053f718b67d92236c7a4b9',1,'ucp_ep_params::local_sockaddr()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#acd106a47629c2dffb844fbdb15a050f6',1,'uct_ep_params::local_sockaddr()']]], + ['log_5flevel',['log_level',['../namespace_3global_scope_4.html#ae279af7e4a426fe21bde0e83a2c423ae',1,'ucs_log_component_config']]] +]; diff --git a/api/v1.14/html/search/all_a.html b/api/v1.14/html/search/all_a.html new file mode 100644 index 00000000000..4cb31f0c97d --- /dev/null +++ b/api/v1.14/html/search/all_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_a.js b/api/v1.14/html/search/all_a.js new file mode 100644 index 00000000000..ab590f144ac --- /dev/null +++ b/api/v1.14/html/search/all_a.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['max_5fam_5fheader',['max_am_header',['../group___u_c_p___w_o_r_k_e_r.html#a7678aa8d4fb18b0d6e2a0276b03e2cb4',1,'ucp_worker_attr']]], + ['max_5fconn_5fpriv',['max_conn_priv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a5612c3ad1e7a46dd6add669e32364424',1,'uct_iface_attr::max_conn_priv()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adb462d4f30c639f7fb5a8a7d9702ddcf',1,'uct_cm_attr::max_conn_priv()']]], + ['max_5fdebug_5fstring',['max_debug_string',['../group___u_c_p___w_o_r_k_e_r.html#a79406f6545efcaefffaa34ca99bfdc04',1,'ucp_worker_attr']]], + ['max_5fnum_5feps',['max_num_eps',['../group___u_c_t___r_e_s_o_u_r_c_e.html#af6baead12f87707af1b3e56024b2b2e5',1,'uct_iface_attr']]], + ['max_5fthread_5flevel',['max_thread_level',['../group___u_c_p___c_o_n_t_e_x_t.html#a3cfd1d293ca29602ae799f7c52607c86',1,'ucp_lib_attr']]], + ['md',['md',['../group___u_c_t___m_d.html#afdf7da800a504f0da8f59874d9b71823',1,'uct_allocated_memory']]], + ['md_5fname',['md_name',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a44245b18bf7151a4bde8cb4c0112f8cb',1,'uct_md_resource_desc']]], + ['md_5fresource_5fcount',['md_resource_count',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a4add45e93acd44e434624726caaf9efb',1,'uct_component_attr']]], + ['md_5fresources',['md_resources',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a75c51f7e16d827cc4c848016f5365404',1,'uct_component_attr']]], + ['mds',['mds',['../group___u_c_t___m_d.html#a611c24b16eb6131e02ccffe37fbaaa97',1,'uct_mem_alloc_params_t']]], + ['mem_5ftype',['mem_type',['../group___u_c_p___c_o_m_m.html#a86e23d8d22c973be0f86ea56adfd5678',1,'ucp_request_attr_t::mem_type()'],['../group___u_c_p___m_e_m.html#ac88b3fb764dd2af1a77bbe90161b2896',1,'ucp_mem_attr::mem_type()'],['../group___u_c_t___m_d.html#a9b20dd26a01412d61bea8f5cc4ee02a2',1,'uct_md_mem_attr::mem_type()'],['../group___u_c_t___m_d.html#ae6002ec224af4efa796246bfce7180fd',1,'uct_allocated_memory::mem_type()'],['../group___u_c_t___m_d.html#ac6a68b6fb669135688c594a58a6e3955',1,'uct_mem_alloc_params_t::mem_type()']]], + ['memh',['memh',['../group___u_c_p___c_o_n_t_e_x_t.html#a815bd876629909195b15c6b246de2900',1,'ucp_request_param_t::memh()'],['../group___u_c_t___m_d.html#a4b9171caf237f0f2884d548c395e47ea',1,'uct_allocated_memory::memh()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a9a24e4be8303ebd6906bcaff37ab31f7',1,'uct_iov::memh()']]], + ['memory_5ftype',['memory_type',['../group___u_c_p___m_e_m.html#a71916e12e0fa7706355965de2edd7fc9',1,'ucp_mem_map_params::memory_type()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a52b53447384778b16b3b91d6abeb0f86',1,'ucp_request_param_t::memory_type()']]], + ['memory_5ftypes',['memory_types',['../group___u_c_p___c_o_n_t_e_x_t.html#a59917e3a7e709c62e77d0acabbb0a24d',1,'ucp_context_attr']]], + ['message_5fsize',['message_size',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ac6bc2d095c3c631324646cd9ac6a5a0f',1,'ucp_ep_evaluate_perf_param_t']]], + ['method',['method',['../group___u_c_t___m_d.html#ac0c1c5a5cd287f176e81650816138a55',1,'uct_allocated_memory']]], + ['mode',['mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7fa862d179a7605eef34de73e11869fe',1,'uct_iface_params::mode()'],['../namespace_3global_scope_4.html#a080bacced54b2014f148e933d4dc3347',1,'ucs_config_allow_list_t::mode()']]], + ['mt_5fworkers_5fshared',['mt_workers_shared',['../group___u_c_p___c_o_n_f_i_g.html#ac81f2d8a179df5fd39786a4b08b26faf',1,'ucp_params']]] +]; diff --git a/api/v1.14/html/search/all_b.html b/api/v1.14/html/search/all_b.html new file mode 100644 index 00000000000..d34a612eccd --- /dev/null +++ b/api/v1.14/html/search/all_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_b.js b/api/v1.14/html/search/all_b.js new file mode 100644 index 00000000000..9ea5d8b1867 --- /dev/null +++ b/api/v1.14/html/search/all_b.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['name',['name',['../group___u_c_p___c_o_n_f_i_g.html#ac1aa15f430f0f273ff4f6055f9cfdea2',1,'ucp_params::name()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a958c850cc721fdadeae598928bbc8270',1,'ucp_context_attr::name()'],['../group___u_c_p___w_o_r_k_e_r.html#a3123aa88fefa33c972da4c2bda3bebee',1,'ucp_worker_attr::name()'],['../group___u_c_p___w_o_r_k_e_r.html#a7ea9a6700ec1393aaa95c4b1e1df04e1',1,'ucp_worker_params::name()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#acdaee980b44ce00d608c3b9812049db6',1,'ucp_ep_attr::name()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a2434487b2597678b8b8c6a6b6fdd11ac',1,'ucp_ep_params::name()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a4d186d55814dbe82c4403564d38d084e',1,'uct_component_attr::name()'],['../group___u_c_t___m_d.html#ad67ee098d7dff61b637e20d67dc184ec',1,'uct_mem_alloc_params_t::name()'],['../namespace_3global_scope_4.html#ad3c3436563841e129767778aae615f8f',1,'ucs_log_component_config::name()']]], + ['num_5fentries',['num_entries',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a21eabc3b6df3b0c6964de56ab7784304',1,'ucp_transports_t']]] +]; diff --git a/api/v1.14/html/search/all_c.html b/api/v1.14/html/search/all_c.html new file mode 100644 index 00000000000..c1ae2cae73d --- /dev/null +++ b/api/v1.14/html/search/all_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_c.js b/api/v1.14/html/search/all_c.js new file mode 100644 index 00000000000..2945990b2d7 --- /dev/null +++ b/api/v1.14/html/search/all_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['op_5fattr_5fmask',['op_attr_mask',['../group___u_c_p___c_o_n_t_e_x_t.html#a97e9444548efb351db6a07130fb69c28',1,'ucp_request_param_t']]], + ['open_5fmode',['open_mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7db3b0fb2bbde6b4625ad5a6c5e1a043',1,'uct_iface_params']]], + ['overhead',['overhead',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ab802bc3cc95cc67e176efeb2fe1c14c4',1,'uct_iface_attr']]] +]; diff --git a/api/v1.14/html/search/all_d.html b/api/v1.14/html/search/all_d.html new file mode 100644 index 00000000000..712223c6617 --- /dev/null +++ b/api/v1.14/html/search/all_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_d.js b/api/v1.14/html/search/all_d.js new file mode 100644 index 00000000000..261bb8f70f1 --- /dev/null +++ b/api/v1.14/html/search/all_d.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['preface',['Preface',['../index.html',1,'']]], + ['pack',['pack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga347b6c1b7243047f3e069a70626a1e89',1,'ucp_generic_dt_ops']]], + ['packed_5fsize',['packed_size',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gafa434c93350838be8da6480b2a68f83b',1,'ucp_generic_dt_ops::packed_size()'],['../group___u_c_p___d_a_t_a_t_y_p_e.html#a2e3822b2beb1cd2df7b0423a5a9c3a9c',1,'ucp_datatype_attr::packed_size()']]], + ['path_5findex',['path_index',['../group___u_c_t___r_e_s_o_u_r_c_e.html#af271b2f02d31b2a1fcbf34076b83a796',1,'uct_ep_params']]], + ['priority',['priority',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a97534f4af50032a82c02b76bdb47a96d',1,'uct_iface_attr']]], + ['priv',['priv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3541a702c8158a6d557ce30cec1863b1',1,'uct_pending_req::priv()'],['../structuct__tag__context.html#a50355288112c6e3218f9b63f3b49be91',1,'uct_tag_context::priv()'],['../namespace_3global_scope_4.html#a328050e3952f5d3888c26b32946f3627',1,'ucs_callbackq::priv()']]], + ['private_5fdata',['private_data',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a4ad36475338e8aee2577fa4535c01dfc',1,'uct_ep_params::private_data()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#affe9b0a217e8e706f08da5b2efee3665',1,'uct_ep_connect_params::private_data()']]], + ['private_5fdata_5flength',['private_data_length',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a287105cfd0e1922f7975efa4bba08ead',1,'uct_ep_params::private_data_length()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3db99efa74cecf7060aad87e73922572',1,'uct_ep_connect_params::private_data_length()']]], + ['prot',['prot',['../group___u_c_p___m_e_m.html#af8bb06187e2c1f180a24d867a4922b2e',1,'ucp_mem_map_params']]] +]; diff --git a/api/v1.14/html/search/all_e.html b/api/v1.14/html/search/all_e.html new file mode 100644 index 00000000000..d553ffa22d8 --- /dev/null +++ b/api/v1.14/html/search/all_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_e.js b/api/v1.14/html/search/all_e.js new file mode 100644 index 00000000000..0c3ecb6c923 --- /dev/null +++ b/api/v1.14/html/search/all_e.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['recv_5fattr',['recv_attr',['../group___u_c_p___w_o_r_k_e_r.html#a53a8777a31faf7e65289bcc1d710fb19',1,'ucp_am_recv_param']]], + ['recv_5finfo',['recv_info',['../group___u_c_p___c_o_n_t_e_x_t.html#a49d828d5802110c4f268762ec4dd9ca4',1,'ucp_request_param_t']]], + ['reg_5fcost',['reg_cost',['../group___u_c_t___m_d.html#aa8e4e4f1f063347094ea721a0ccb8952',1,'uct_md_attr']]], + ['remote_5fdata',['remote_data',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a333308d1c7eda2e28111dbe05b288746',1,'uct_cm_listener_conn_request_args::remote_data()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adebf71af7948cb58f3724d1b0c4151bb',1,'uct_cm_ep_client_connect_args::remote_data()']]], + ['remote_5fsockaddr',['remote_sockaddr',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a8e0e9e1e5a9295f93073ae3fd3d9a612',1,'ucp_ep_attr']]], + ['reply_5fbuffer',['reply_buffer',['../group___u_c_p___c_o_n_t_e_x_t.html#ad41bfb73053537d40830d52b3f380f02',1,'ucp_request_param_t']]], + ['reply_5fep',['reply_ep',['../group___u_c_p___w_o_r_k_e_r.html#a5e4629812b7b7737beb6f7f7332b7d7f',1,'ucp_am_recv_param']]], + ['request',['request',['../group___u_c_p___c_o_n_t_e_x_t.html#a746646123a460ed9a115c3fe21f194b0',1,'ucp_request_param_t']]], + ['request_5fcleanup',['request_cleanup',['../group___u_c_p___c_o_n_f_i_g.html#ad2aadf27367f4cc64e91e1dd2b52b8b8',1,'ucp_params']]], + ['request_5finit',['request_init',['../group___u_c_p___c_o_n_f_i_g.html#ac1f0a25d794111217af5e0e6b9865458',1,'ucp_params']]], + ['request_5fsize',['request_size',['../group___u_c_p___c_o_n_f_i_g.html#a3125e61440123f639c024d75b5edc0d6',1,'ucp_params::request_size()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a9b2ad3af27e1e94d4189ecc6fb1512ef',1,'ucp_context_attr::request_size()']]], + ['reserved',['reserved',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a00c2ee7b309e8c2a45d7e7c83911d707',1,'ucp_stream_poll_ep']]], + ['rkey',['rkey',['../group___u_c_t___m_d.html#a750c92c67b9203752b04894893b91bbc',1,'uct_rkey_bundle']]], + ['rkey_5fpacked_5fsize',['rkey_packed_size',['../group___u_c_t___m_d.html#a95f941f6d800ef57a183d1f9c75a221c',1,'uct_md_attr']]], + ['rndv_5farg',['rndv_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#afbeb49c7a773e6d61eaba872535809e8',1,'uct_iface_params']]], + ['rndv_5fcb',['rndv_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aee589d588ff4207d4fcf0d147479facd',1,'uct_iface_params::rndv_cb()'],['../structuct__tag__context.html#a64008d8faf823d5d2be97cb16854c308',1,'uct_tag_context::rndv_cb()']]], + ['rx_5fheadroom',['rx_headroom',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aea4ca94171e8dfe3e80abb74a06fe333',1,'uct_iface_params']]] +]; diff --git a/api/v1.14/html/search/all_f.html b/api/v1.14/html/search/all_f.html new file mode 100644 index 00000000000..c77391a0462 --- /dev/null +++ b/api/v1.14/html/search/all_f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/all_f.js b/api/v1.14/html/search/all_f.js new file mode 100644 index 00000000000..edc95367bae --- /dev/null +++ b/api/v1.14/html/search/all_f.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['sender_5ftag',['sender_tag',['../group___u_c_p___c_o_n_t_e_x_t.html#a19ac36808d83d348b23cd34fe997a7c9',1,'ucp_tag_recv_info']]], + ['shared',['shared',['../namespace_3global_scope_4.html#ad2a5875d9c5c32357a72b42ec00c3b6d',1,'uct_ppn_bandwidth']]], + ['sockaddr',['sockaddr',['../group___u_c_p___w_o_r_k_e_r.html#affcc213cd4305412937974eefb95bc32',1,'ucp_listener_attr::sockaddr()'],['../group___u_c_p___w_o_r_k_e_r.html#a88be57709393e7bf27d10d8a5238b544',1,'ucp_listener_params::sockaddr()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#aa23fd9a6a092266371258bd285c96816',1,'ucp_ep_params::sockaddr()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3eeadaece922904cae592889db563977',1,'uct_ep_params::sockaddr()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8cc6f13deda40a11ae98cae547869342',1,'uct_listener_attr::sockaddr()']]], + ['sockaddr_5fcb_5fclient',['sockaddr_cb_client',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a375c999b7326f631877deae2bf24ccf6',1,'uct_ep_params']]], + ['sockaddr_5fcb_5fflags',['sockaddr_cb_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a1471e0cef36287e0b37645beba2d792c',1,'uct_ep_params']]], + ['sockaddr_5fcb_5fserver',['sockaddr_cb_server',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aa290e652d57da6ee3bc5d1efff43a2fe',1,'uct_ep_params']]], + ['sockaddr_5fpack_5fcb',['sockaddr_pack_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7d44f52031c50abc0b6636421c82bbf1',1,'uct_ep_params']]], + ['start_5fpack',['start_pack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaf59e41a131f620d3b71f3aa7b9bb4801',1,'ucp_generic_dt_ops']]], + ['start_5funpack',['start_unpack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaec412b924f1cf491fbc570927f77c7e6',1,'ucp_generic_dt_ops']]], + ['stats_5froot',['stats_root',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a6d87dd22dc349557a706bb25d49975f0',1,'uct_iface_params']]], + ['status',['status',['../group___u_c_p___c_o_m_m.html#a3df010dde5b9a67b62bd354f0af3fc93',1,'ucp_request_attr_t::status()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#aa3b099f011e78bd23c8768264576314d',1,'uct_completion::status()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#afc75b0697e4624831532a20013eb4c98',1,'uct_cm_ep_resolve_args::status()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab34b457dd1e16034378445aeac010d4b',1,'uct_cm_ep_client_connect_args::status()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a0deb70821df070090ebef30cb70b66c2',1,'uct_cm_ep_server_conn_notify_args::status()']]], + ['stride',['stride',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a21ea5b278cab407db05eaa3dce3b2824',1,'uct_iov']]], + ['sys_5fdev',['sys_dev',['../group___u_c_t___m_d.html#aacc6d26ea7f15b8cd19cb9b10eb4603c',1,'uct_md_mem_attr']]], + ['sys_5fdevice',['sys_device',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a1e3ce2607f86f8faf1eacf0b91636e27',1,'uct_tl_resource_desc']]] +]; diff --git a/api/v1.14/html/search/classes_0.html b/api/v1.14/html/search/classes_0.html new file mode 100644 index 00000000000..025587a7162 --- /dev/null +++ b/api/v1.14/html/search/classes_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/classes_0.js b/api/v1.14/html/search/classes_0.js new file mode 100644 index 00000000000..31ee0b2c492 --- /dev/null +++ b/api/v1.14/html/search/classes_0.js @@ -0,0 +1,83 @@ +var searchData= +[ + ['ucp_5fam_5fhandler_5fparam',['ucp_am_handler_param',['../group___u_c_p___w_o_r_k_e_r.html#structucp__am__handler__param',1,'']]], + ['ucp_5fam_5frecv_5fparam',['ucp_am_recv_param',['../group___u_c_p___w_o_r_k_e_r.html#structucp__am__recv__param',1,'']]], + ['ucp_5fconn_5frequest_5fattr',['ucp_conn_request_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__conn__request__attr',1,'']]], + ['ucp_5fcontext_5fattr',['ucp_context_attr',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__context__attr',1,'']]], + ['ucp_5fdatatype_5fattr',['ucp_datatype_attr',['../group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__datatype__attr',1,'']]], + ['ucp_5fdt_5fiov',['ucp_dt_iov',['../group___u_c_p___d_a_t_a_t_y_p_e.html#structucp__dt__iov',1,'']]], + ['ucp_5fep_5fattr',['ucp_ep_attr',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__attr',1,'']]], + ['ucp_5fep_5fevaluate_5fperf_5fattr_5ft',['ucp_ep_evaluate_perf_attr_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__attr__t',1,'']]], + ['ucp_5fep_5fevaluate_5fperf_5fparam_5ft',['ucp_ep_evaluate_perf_param_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__evaluate__perf__param__t',1,'']]], + ['ucp_5fep_5fparams',['ucp_ep_params',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__ep__params',1,'']]], + ['ucp_5ferr_5fhandler',['ucp_err_handler',['../group___u_c_p___c_o_m_m.html#structucp__err__handler',1,'']]], + ['ucp_5fgeneric_5fdt_5fops',['ucp_generic_dt_ops',['../structucp__generic__dt__ops.html',1,'']]], + ['ucp_5flib_5fattr',['ucp_lib_attr',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__lib__attr',1,'']]], + ['ucp_5flistener_5faccept_5fhandler',['ucp_listener_accept_handler',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__accept__handler',1,'']]], + ['ucp_5flistener_5fattr',['ucp_listener_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__attr',1,'']]], + ['ucp_5flistener_5fconn_5fhandler',['ucp_listener_conn_handler',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__conn__handler',1,'']]], + ['ucp_5flistener_5fparams',['ucp_listener_params',['../group___u_c_p___w_o_r_k_e_r.html#structucp__listener__params',1,'']]], + ['ucp_5fmem_5fadvise_5fparams',['ucp_mem_advise_params',['../group___u_c_p___m_e_m.html#structucp__mem__advise__params',1,'']]], + ['ucp_5fmem_5fattr',['ucp_mem_attr',['../group___u_c_p___m_e_m.html#structucp__mem__attr',1,'']]], + ['ucp_5fmem_5fmap_5fparams',['ucp_mem_map_params',['../group___u_c_p___m_e_m.html#structucp__mem__map__params',1,'']]], + ['ucp_5fmemh_5fbuffer_5frelease_5fparams',['ucp_memh_buffer_release_params',['../group___u_c_p___m_e_m.html#structucp__memh__buffer__release__params',1,'']]], + ['ucp_5fmemh_5fpack_5fparams',['ucp_memh_pack_params',['../group___u_c_p___m_e_m.html#structucp__memh__pack__params',1,'']]], + ['ucp_5fparams',['ucp_params',['../group___u_c_p___c_o_n_f_i_g.html#structucp__params',1,'']]], + ['ucp_5frequest_5fattr_5ft',['ucp_request_attr_t',['../group___u_c_p___c_o_m_m.html#structucp__request__attr__t',1,'']]], + ['ucp_5frequest_5fparam_5ft',['ucp_request_param_t',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__request__param__t',1,'']]], + ['ucp_5frequest_5fparam_5ft_2ecb',['ucp_request_param_t.cb',['../group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8cb',1,'']]], + ['ucp_5frequest_5fparam_5ft_2erecv_5finfo',['ucp_request_param_t.recv_info',['../group___u_c_p___c_o_n_t_e_x_t.html#unionucp__request__param__t_8recv__info',1,'']]], + ['ucp_5fstream_5fpoll_5fep',['ucp_stream_poll_ep',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__stream__poll__ep',1,'']]], + ['ucp_5ftag_5frecv_5finfo',['ucp_tag_recv_info',['../group___u_c_p___c_o_n_t_e_x_t.html#structucp__tag__recv__info',1,'']]], + ['ucp_5ftransport_5fentry_5ft',['ucp_transport_entry_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transport__entry__t',1,'']]], + ['ucp_5ftransports_5ft',['ucp_transports_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#structucp__transports__t',1,'']]], + ['ucp_5fworker_5faddress_5fattr',['ucp_worker_address_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__worker__address__attr',1,'']]], + ['ucp_5fworker_5fattr',['ucp_worker_attr',['../group___u_c_p___w_o_r_k_e_r.html#structucp__worker__attr',1,'']]], + ['ucp_5fworker_5fparams',['ucp_worker_params',['../group___u_c_p___w_o_r_k_e_r.html#structucp__worker__params',1,'']]], + ['ucs_5fcallbackq',['ucs_callbackq',['../namespace_3global_scope_4.html#structucs__callbackq',1,'']]], + ['ucs_5fcallbackq_5felem',['ucs_callbackq_elem',['../namespace_3global_scope_4.html#structucs__callbackq__elem',1,'']]], + ['ucs_5fconfig_5fallow_5flist_5ft',['ucs_config_allow_list_t',['../namespace_3global_scope_4.html#structucs__config__allow__list__t',1,'']]], + ['ucs_5flog_5fcomponent_5fconfig',['ucs_log_component_config',['../namespace_3global_scope_4.html#structucs__log__component__config',1,'']]], + ['ucs_5fsock_5faddr',['ucs_sock_addr',['../group___u_c_s___r_e_s_o_u_r_c_e.html#structucs__sock__addr',1,'']]], + ['uct_5fallocated_5fmemory',['uct_allocated_memory',['../group___u_c_t___m_d.html#structuct__allocated__memory',1,'']]], + ['uct_5fcm_5fattr',['uct_cm_attr',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__attr',1,'']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs',['uct_cm_ep_client_connect_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__client__connect__args',1,'']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs',['uct_cm_ep_priv_data_pack_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__priv__data__pack__args',1,'']]], + ['uct_5fcm_5fep_5fresolve_5fargs',['uct_cm_ep_resolve_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__resolve__args',1,'']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs',['uct_cm_ep_server_conn_notify_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__ep__server__conn__notify__args',1,'']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs',['uct_cm_listener_conn_request_args',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__listener__conn__request__args',1,'']]], + ['uct_5fcm_5fremote_5fdata',['uct_cm_remote_data',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__cm__remote__data',1,'']]], + ['uct_5fcompletion',['uct_completion',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__completion',1,'']]], + ['uct_5fcomponent_5fattr',['uct_component_attr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__component__attr',1,'']]], + ['uct_5fep_5fconnect_5fparams',['uct_ep_connect_params',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__ep__connect__params',1,'']]], + ['uct_5fep_5fparams',['uct_ep_params',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__ep__params',1,'']]], + ['uct_5fiface_5fattr',['uct_iface_attr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr',1,'']]], + ['uct_5fiface_5fattr_2ecap',['uct_iface_attr.cap',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eam',['uct_iface_attr.cap.am',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8am',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eatomic32',['uct_iface_attr.cap.atomic32',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic32',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eatomic64',['uct_iface_attr.cap.atomic64',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8atomic64',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eget',['uct_iface_attr.cap.get',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8get',1,'']]], + ['uct_5fiface_5fattr_2ecap_2eput',['uct_iface_attr.cap.put',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8put',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag',['uct_iface_attr.cap.tag',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag_2eeager',['uct_iface_attr.cap.tag.eager',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8eager',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag_2erecv',['uct_iface_attr.cap.tag.recv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8recv',1,'']]], + ['uct_5fiface_5fattr_2ecap_2etag_2erndv',['uct_iface_attr.cap.tag.rndv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__attr_8cap_8tag_8rndv',1,'']]], + ['uct_5fiface_5fparams',['uct_iface_params',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params',1,'']]], + ['uct_5fiface_5fparams_2emode',['uct_iface_params.mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#unionuct__iface__params_8mode',1,'']]], + ['uct_5fiface_5fparams_2emode_2edevice',['uct_iface_params.mode.device',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8device',1,'']]], + ['uct_5fiface_5fparams_2emode_2esockaddr',['uct_iface_params.mode.sockaddr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iface__params_8mode_8sockaddr',1,'']]], + ['uct_5fiov',['uct_iov',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__iov',1,'']]], + ['uct_5flistener_5fattr',['uct_listener_attr',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__attr',1,'']]], + ['uct_5flistener_5fparams',['uct_listener_params',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#structuct__listener__params',1,'']]], + ['uct_5fmd_5fattr',['uct_md_attr',['../group___u_c_t___m_d.html#structuct__md__attr',1,'']]], + ['uct_5fmd_5fattr_2ecap',['uct_md_attr.cap',['../group___u_c_t___m_d.html#structuct__md__attr_8cap',1,'']]], + ['uct_5fmd_5fmem_5fattr',['uct_md_mem_attr',['../group___u_c_t___m_d.html#structuct__md__mem__attr',1,'']]], + ['uct_5fmd_5fresource_5fdesc',['uct_md_resource_desc',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__md__resource__desc',1,'']]], + ['uct_5fmem_5falloc_5fparams_5ft',['uct_mem_alloc_params_t',['../group___u_c_t___m_d.html#structuct__mem__alloc__params__t',1,'']]], + ['uct_5fmem_5falloc_5fparams_5ft_2emds',['uct_mem_alloc_params_t.mds',['../group___u_c_t___m_d.html#structuct__mem__alloc__params__t_8mds',1,'']]], + ['uct_5fpending_5freq',['uct_pending_req',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__pending__req',1,'']]], + ['uct_5fppn_5fbandwidth',['uct_ppn_bandwidth',['../namespace_3global_scope_4.html#structuct__ppn__bandwidth',1,'']]], + ['uct_5frkey_5fbundle',['uct_rkey_bundle',['../group___u_c_t___m_d.html#structuct__rkey__bundle',1,'']]], + ['uct_5ftag_5fcontext',['uct_tag_context',['../structuct__tag__context.html',1,'']]], + ['uct_5ftl_5fresource_5fdesc',['uct_tl_resource_desc',['../group___u_c_t___r_e_s_o_u_r_c_e.html#structuct__tl__resource__desc',1,'']]] +]; diff --git a/api/v1.14/html/search/close.png b/api/v1.14/html/search/close.png new file mode 100644 index 00000000000..9342d3dfeea Binary files /dev/null and b/api/v1.14/html/search/close.png differ diff --git a/api/v1.14/html/search/enums_0.html b/api/v1.14/html/search/enums_0.html new file mode 100644 index 00000000000..aba8d799d12 --- /dev/null +++ b/api/v1.14/html/search/enums_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/enums_0.js b/api/v1.14/html/search/enums_0.js new file mode 100644 index 00000000000..9323671d2e8 --- /dev/null +++ b/api/v1.14/html/search/enums_0.js @@ -0,0 +1,76 @@ +var searchData= +[ + ['ucp_5fam_5fcb_5fflags',['ucp_am_cb_flags',['../group___u_c_p___w_o_r_k_e_r.html#ga41d5b7b408c7546c7cb8b38d72f8653f',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield',['ucp_am_handler_param_field',['../group___u_c_p___c_o_m_m.html#gaeae021145933ffa033b8327bb7bf2533',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5ft',['ucp_am_recv_attr_t',['../group___u_c_p___c_o_m_m.html#ga487a3c588a11e42b9f313f0c9e2ead3b',1,'ucp.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ft',['ucp_atomic_fetch_op_t',['../group___u_c_p___c_o_m_m.html#gabd91e0300a53e38d28dbb53dfbb66c55',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fop_5ft',['ucp_atomic_op_t',['../group___u_c_p___c_o_m_m.html#ga5c2ee7516e48146c044e3d9e2a2ed380',1,'ucp.h']]], + ['ucp_5fatomic_5fpost_5fop_5ft',['ucp_atomic_post_op_t',['../group___u_c_p___c_o_m_m.html#gac5d94ea07dc4feae2708e67378ba2ad0',1,'ucp_compat.h']]], + ['ucp_5fcb_5fparam_5fflags',['ucp_cb_param_flags',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga4a9af9e36e3256933869d6699be25874',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fattr_5ffield',['ucp_conn_request_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#ga31119b42b06b185822699697bd7a1018',1,'ucp.h']]], + ['ucp_5fcontext_5fattr_5ffield',['ucp_context_attr_field',['../group___u_c_p___c_o_n_t_e_x_t.html#ga446a95e55ba52251d2ca4bf61ff916bf',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield',['ucp_datatype_attr_field',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaca9402381313d69cee7d0c90c634a18e',1,'ucp.h']]], + ['ucp_5fdt_5ftype',['ucp_dt_type',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga50b3b4e641a197264e963d91be480b6c',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield',['ucp_ep_attr_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gaa24832a718990ceb558ab5a1d4abfc41',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fflags_5ft',['ucp_ep_close_flags_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gacef728a5ee7a11f50794544aa259fe71',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fmode',['ucp_ep_close_mode',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga3be4aa93d76e41c80c780965f2f8ae57',1,'ucp.h']]], + ['ucp_5fep_5fparams_5ffield',['ucp_ep_params_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gabb6ce0b3189f415dadc7f99727751d60',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5ffield',['ucp_ep_params_flags_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga4a1f422dc1e81495b4aee1da8939459f',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fattr_5ffield',['ucp_ep_perf_attr_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga806d286165cdbe6d6c63d52b06b16406',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fparam_5ffield',['ucp_ep_perf_param_field',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga4abce355cbaf6b31b1aaa88b68154f13',1,'ucp.h']]], + ['ucp_5ferr_5fhandling_5fmode_5ft',['ucp_err_handling_mode_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga7c69a28724d5ae3e49490e23e64df167',1,'ucp_def.h']]], + ['ucp_5ffeature',['ucp_feature',['../group___u_c_p___c_o_n_t_e_x_t.html#gaca5990bc015e7e9ac3e3be4e3611c5be',1,'ucp.h']]], + ['ucp_5flib_5fattr_5ffield',['ucp_lib_attr_field',['../group___u_c_p___c_o_n_t_e_x_t.html#ga2791b2b44c55fdb685dcd4dad8c8ae3c',1,'ucp.h']]], + ['ucp_5flistener_5fattr_5ffield',['ucp_listener_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#ga54059507b51041359aedffbe75635720',1,'ucp.h']]], + ['ucp_5flistener_5fparams_5ffield',['ucp_listener_params_field',['../group___u_c_p___w_o_r_k_e_r.html#ga36d95269fcce844261494cbd4f5e26fc',1,'ucp.h']]], + ['ucp_5fmem_5fadvice',['ucp_mem_advice',['../group___u_c_p___m_e_m.html#ga1a73c4a7fc1d8a6d75e6b53256eec0b8',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparams_5ffield',['ucp_mem_advise_params_field',['../group___u_c_p___m_e_m.html#ga3c0f7ca217c77fa0ae8649e21b24a1fc',1,'ucp.h']]], + ['ucp_5fmem_5fattr_5ffield',['ucp_mem_attr_field',['../group___u_c_p___m_e_m.html#gab0d7a54391c964c59b2cfbf30e23dc14',1,'ucp_def.h']]], + ['ucp_5fmem_5fmap_5fparams_5ffield',['ucp_mem_map_params_field',['../group___u_c_p___m_e_m.html#ga1b78010c24c834aadc9fb8f1083e226f',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fflags',['ucp_memh_pack_flags',['../group___u_c_p___m_e_m.html#ga83ac2dbb4fe6b93948b00c9a2ad16efe',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fparams_5ffield',['ucp_memh_pack_params_field',['../group___u_c_p___m_e_m.html#ga9143b85c7c40d6b13020a13bc13f9dbf',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ft',['ucp_op_attr_t',['../group___u_c_p___c_o_m_m.html#ga67fae646dd1668efba6efe49a35a6610',1,'ucp.h']]], + ['ucp_5fparams_5ffield',['ucp_params_field',['../group___u_c_p___c_o_n_t_e_x_t.html#gab43f613a2365147415abf66f571cfa71',1,'ucp.h']]], + ['ucp_5freq_5fattr_5ffield',['ucp_req_attr_field',['../group___u_c_p___c_o_m_m.html#gab383d860475f8917f51afb542e7d02ff',1,'ucp.h']]], + ['ucp_5fsend_5fam_5fflags',['ucp_send_am_flags',['../group___u_c_p___w_o_r_k_e_r.html#ga583228e89cd5c882025ed04c76106aa6',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fflags_5ft',['ucp_stream_recv_flags_t',['../group___u_c_p___c_o_m_m.html#gab471a9c7ab815e3d3ad7af80253f5cc2',1,'ucp.h']]], + ['ucp_5fwakeup_5fevent_5ftypes',['ucp_wakeup_event_types',['../group___u_c_p___w_o_r_k_e_r.html#ga66be8946dcd33051d40ceca65ba28e22',1,'ucp_def.h']]], + ['ucp_5fworker_5faddress_5fattr_5ffield',['ucp_worker_address_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#gaadc74e7e271c4e181263115b08bf71c8',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fflags_5ft',['ucp_worker_address_flags_t',['../group___u_c_p___w_o_r_k_e_r.html#gab1ec638cc4a7498a85017d132492d195',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield',['ucp_worker_attr_field',['../group___u_c_p___w_o_r_k_e_r.html#gacf03ee299a48c2f9c776516cc82c7194',1,'ucp.h']]], + ['ucp_5fworker_5fflags_5ft',['ucp_worker_flags_t',['../group___u_c_p___w_o_r_k_e_r.html#ga11a37476d021e1ad36c1b727373212b4',1,'ucp.h']]], + ['ucp_5fworker_5fparams_5ffield',['ucp_worker_params_field',['../group___u_c_p___w_o_r_k_e_r.html#gadbfc8fd5eaa65351d1617f2f158b80f6',1,'ucp.h']]], + ['ucs_5fcallbackq_5fflags',['ucs_callbackq_flags',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gaa693580c739b1ba94bd6218d00222110',1,'callbackq.h']]], + ['ucs_5fmemory_5ftype',['ucs_memory_type',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga5cfcc524f5dc586101a3e7caff8d982d',1,'memory_type.h']]], + ['ucs_5fstatus_5ft',['ucs_status_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga88ca72d7294772e7d2edb70a2df15558',1,'status.h']]], + ['ucs_5fthread_5fmode_5ft',['ucs_thread_mode_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga40e9f363c389e702ad9920f5d52525ce',1,'thread_mode.h']]], + ['uct_5falloc_5fmethod_5ft',['uct_alloc_method_t',['../group___u_c_t___c_o_n_t_e_x_t.html#ga019362c62f98ff7935b05c512eb0ab09',1,'uct.h']]], + ['uct_5fam_5ftrace_5ftype',['uct_am_trace_type',['../group___u_c_t___a_m.html#gacbe4c7fdcaf25cd7bd004a3c2d54f067',1,'uct_def.h']]], + ['uct_5fcb_5fflags',['uct_cb_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaca1e07b69024fec26746e3a19b4de9d0',1,'uct.h']]], + ['uct_5fcb_5fparam_5fflags',['uct_cb_param_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga36bfc11c722b01a11e1949e8329262c9',1,'uct_def.h']]], + ['uct_5fcm_5fattr_5ffield',['uct_cm_attr_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga2b308be867e1e13dcb7d941b07835431',1,'uct.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ffield',['uct_cm_ep_client_connect_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga6746759cc1850c6e260fca7e3de008ad',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs_5ffield',['uct_cm_ep_priv_data_pack_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga405dee8e814ebc33f14c5f44e80d008c',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ffield',['uct_cm_ep_resolve_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga6c342b6c43e178b73f567bd0fb253e62',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs_5ffield',['uct_cm_ep_server_conn_notify_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf1cffc53a9b63fb98a77503917f5fd79',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield',['uct_cm_listener_conn_request_args_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga9e97a59a0593244e730734d592b642df',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield',['uct_cm_remote_data_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga3e023485a86ad4092497ffe58cddef37',1,'uct_def.h']]], + ['uct_5fcomponent_5fattr_5ffield',['uct_component_attr_field',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga246ded5e20aa09c590673c771c74b68b',1,'uct.h']]], + ['uct_5fdevice_5ftype_5ft',['uct_device_type_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae0c25b8c160e49fbb9cc122c9807f20d',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparams_5ffield',['uct_ep_connect_params_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa821e2f4247cd5e72632e5ea7008e6e1',1,'uct.h']]], + ['uct_5fep_5fparams_5ffield',['uct_ep_params_field',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8e76f363d8805669fb5371b404c5658b',1,'uct.h']]], + ['uct_5fflush_5fflags',['uct_flush_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga84ba23c28fda1c96f5018bbafb7ffed6',1,'uct.h']]], + ['uct_5fiface_5fevent_5ftypes',['uct_iface_event_types',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaef09139f303b0a3d28a1cea524dc3bd2',1,'uct.h']]], + ['uct_5fiface_5ffeature',['uct_iface_feature',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga078dd84cff9d6b1cda5692fbf6b1e7c7',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode',['uct_iface_open_mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8bc9c95ee7fbd76321940e2853d08bb5',1,'uct.h']]], + ['uct_5fiface_5fparams_5ffield',['uct_iface_params_field',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga896baeefc7933d925202c32b0d09f596',1,'uct.h']]], + ['uct_5flistener_5fattr_5ffield',['uct_listener_attr_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad253d9c2e4116f9a137a2d2450afbe66',1,'uct.h']]], + ['uct_5flistener_5fparams_5ffield',['uct_listener_params_field',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf716bd7cdc636377ef78c258886693c7',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield',['uct_md_mem_attr_field',['../group___u_c_t___m_d.html#gac4f1c9728c529e4f35eaf03bc14c6977',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflags',['uct_md_mem_flags',['../group___u_c_t___m_d.html#ga3b0345adc84e4b3224366502aca5e11a',1,'uct.h']]], + ['uct_5fmem_5fadvice_5ft',['uct_mem_advice_t',['../group___u_c_t___m_d.html#ga72172b231f5e9df777cb130b9f908397',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparams_5ffield_5ft',['uct_mem_alloc_params_field_t',['../group___u_c_t___m_d.html#ga3421ca55bc67f5752ca6164f678a7923',1,'uct.h']]], + ['uct_5fmsg_5fflags',['uct_msg_flags',['../group___u_c_t___a_m.html#ga139e5d124e16d412200bf64bdbccab1c',1,'uct.h']]], + ['uct_5fprogress_5ftypes',['uct_progress_types',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga71bfe6e07ebbcc036f883b31db1e9e51',1,'uct.h']]], + ['uct_5fsockaddr_5faccessibility_5ft',['uct_sockaddr_accessibility_t',['../group___u_c_t___m_d.html#gacb560e35a1b169ca88792200817e219e',1,'uct.h']]] +]; diff --git a/api/v1.14/html/search/enumvalues_0.html b/api/v1.14/html/search/enumvalues_0.html new file mode 100644 index 00000000000..83192d354d5 --- /dev/null +++ b/api/v1.14/html/search/enumvalues_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/enumvalues_0.js b/api/v1.14/html/search/enumvalues_0.js new file mode 100644 index 00000000000..848e24d668d --- /dev/null +++ b/api/v1.14/html/search/enumvalues_0.js @@ -0,0 +1,354 @@ +var searchData= +[ + ['ucp_5fam_5fflag_5fpersistent_5fdata',['UCP_AM_FLAG_PERSISTENT_DATA',['../group___u_c_p___w_o_r_k_e_r.html#gga41d5b7b408c7546c7cb8b38d72f8653faa15bbd02f0d9e0afd2e979b89669fbe2',1,'ucp.h']]], + ['ucp_5fam_5fflag_5fwhole_5fmsg',['UCP_AM_FLAG_WHOLE_MSG',['../group___u_c_p___w_o_r_k_e_r.html#gga41d5b7b408c7546c7cb8b38d72f8653fab8e0a400e8017b571682b853c8ff0559',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5farg',['UCP_AM_HANDLER_PARAM_FIELD_ARG',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a23622f1a9046a0b59d1519732e2b73ff',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5fcb',['UCP_AM_HANDLER_PARAM_FIELD_CB',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a6c2a2d3fe9c7118d3513833ad452cb69',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5fflags',['UCP_AM_HANDLER_PARAM_FIELD_FLAGS',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a99854985610ec532f0c83e36b3cadb3d',1,'ucp.h']]], + ['ucp_5fam_5fhandler_5fparam_5ffield_5fid',['UCP_AM_HANDLER_PARAM_FIELD_ID',['../group___u_c_p___c_o_m_m.html#ggaeae021145933ffa033b8327bb7bf2533a4b9788659b793630cee9bc027add35ad',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5ffield_5freply_5fep',['UCP_AM_RECV_ATTR_FIELD_REPLY_EP',['../group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3ba7a4057be7a4cc3bba470da4f8ed63259',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5fflag_5fdata',['UCP_AM_RECV_ATTR_FLAG_DATA',['../group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3baf77ecce2987e81bf773a48363767b77e',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fattr_5fflag_5frndv',['UCP_AM_RECV_ATTR_FLAG_RNDV',['../group___u_c_p___c_o_m_m.html#gga487a3c588a11e42b9f313f0c9e2ead3baf9a8d75af5b826d7563863591a98714f',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5fcopy_5fheader',['UCP_AM_SEND_FLAG_COPY_HEADER',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a0654f3da5be1bc517d45307b6a21cbdf',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5feager',['UCP_AM_SEND_FLAG_EAGER',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6af29f97eb0938984f627be7989c35079c',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5freply',['UCP_AM_SEND_FLAG_REPLY',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6ace99c327865c6f2294f800099d467b16',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fflag_5frndv',['UCP_AM_SEND_FLAG_RNDV',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a3174d72844f5488bee9e0b35c75f68e5',1,'ucp.h']]], + ['ucp_5fam_5fsend_5freply',['UCP_AM_SEND_REPLY',['../group___u_c_p___w_o_r_k_e_r.html#gga583228e89cd5c882025ed04c76106aa6a1794c5ef851a147688d783532f1ec7bb',1,'ucp.h']]], + ['ucp_5fatomic_5ffetch_5fop_5fcswap',['UCP_ATOMIC_FETCH_OP_CSWAP',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55adc79d547543b1803dace41a6bdea043c',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffadd',['UCP_ATOMIC_FETCH_OP_FADD',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55ae7540b3c7046a454f750f816bdfa1037',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffand',['UCP_ATOMIC_FETCH_OP_FAND',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a072b82e2e35a90b7ed3e113423e6d5e3',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffor',['UCP_ATOMIC_FETCH_OP_FOR',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a2b0b3779905ea67eea996ae8e296ed59',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5ffxor',['UCP_ATOMIC_FETCH_OP_FXOR',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a86930c2cddc0a884cbf88ced6c330049',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5flast',['UCP_ATOMIC_FETCH_OP_LAST',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55a2532883ac97f4ee8178b52318f978a05',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fop_5fswap',['UCP_ATOMIC_FETCH_OP_SWAP',['../group___u_c_p___c_o_m_m.html#ggabd91e0300a53e38d28dbb53dfbb66c55ad5a1d6d5e5cb563b477258a4656c9069',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fop_5fadd',['UCP_ATOMIC_OP_ADD',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380a9386a4cc004f74e89bb069096ff1e43b',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fand',['UCP_ATOMIC_OP_AND',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380adf96b275090535fca4d7c1bedaef7da3',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fcswap',['UCP_ATOMIC_OP_CSWAP',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380ae5da2927554be21b16aa65f9e46f762a',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5flast',['UCP_ATOMIC_OP_LAST',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380a0983496b62f2d28cf043966793c6bb0b',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5for',['UCP_ATOMIC_OP_OR',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380abf085a4df55bbd6109e3fb849e0d123e',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fswap',['UCP_ATOMIC_OP_SWAP',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380af72a4149b8c55e187bdfdcbd8d201eeb',1,'ucp.h']]], + ['ucp_5fatomic_5fop_5fxor',['UCP_ATOMIC_OP_XOR',['../group___u_c_p___c_o_m_m.html#gga5c2ee7516e48146c044e3d9e2a2ed380ac723509b3a97de7b43d1736bf9d79243',1,'ucp.h']]], + ['ucp_5fatomic_5fpost_5fop_5fadd',['UCP_ATOMIC_POST_OP_ADD',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0ac9bbe0e18afb3ffc3f308feb0a2343c0',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5fand',['UCP_ATOMIC_POST_OP_AND',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0a429b49ede714d04c4675a6e3966964e4',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5flast',['UCP_ATOMIC_POST_OP_LAST',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0a97ee6dd65f14dc12791831435329c38d',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5for',['UCP_ATOMIC_POST_OP_OR',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0afddd2f7287b622caf220503a6ae38460',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fpost_5fop_5fxor',['UCP_ATOMIC_POST_OP_XOR',['../group___u_c_p___c_o_m_m.html#ggac5d94ea07dc4feae2708e67378ba2ad0ac498a55f8365e9a0821187367bc2cf89',1,'ucp_compat.h']]], + ['ucp_5fattr_5ffield_5fmemory_5ftypes',['UCP_ATTR_FIELD_MEMORY_TYPES',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa13fe8e11d8c372a446e00cf559c78b88',1,'ucp.h']]], + ['ucp_5fattr_5ffield_5fname',['UCP_ATTR_FIELD_NAME',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa35fd67165561f70728f6ec1c8e53ff80',1,'ucp.h']]], + ['ucp_5fattr_5ffield_5frequest_5fsize',['UCP_ATTR_FIELD_REQUEST_SIZE',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfa84237b8beaee9aff1013ae6b87721ce2',1,'ucp.h']]], + ['ucp_5fattr_5ffield_5fthread_5fmode',['UCP_ATTR_FIELD_THREAD_MODE',['../group___u_c_p___c_o_n_t_e_x_t.html#gga446a95e55ba52251d2ca4bf61ff916bfab5f79c9d9c309562d4e7edb60e5855d6',1,'ucp.h']]], + ['ucp_5fcb_5fparam_5fflag_5fdata',['UCP_CB_PARAM_FLAG_DATA',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a9af9e36e3256933869d6699be25874a55d40d13674830156e15f6b6289b0d12',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fattr_5ffield_5fclient_5faddr',['UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR',['../group___u_c_p___w_o_r_k_e_r.html#gga31119b42b06b185822699697bd7a1018a98d3bca4557571d8ccb56ae2d29b2ad6',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fattr_5ffield_5fclient_5fid',['UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID',['../group___u_c_p___w_o_r_k_e_r.html#gga31119b42b06b185822699697bd7a1018a2dbcf2ed5576bf2721ca550d34361f1d',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield_5fbuffer',['UCP_DATATYPE_ATTR_FIELD_BUFFER',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea19731103ccab2b0c1f0a93a38177b7b2',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield_5fcount',['UCP_DATATYPE_ATTR_FIELD_COUNT',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea510ae956055e56169315fef18082cf3c',1,'ucp.h']]], + ['ucp_5fdatatype_5fattr_5ffield_5fpacked_5fsize',['UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ggaca9402381313d69cee7d0c90c634a18ea488b99fc01c366b5bb2b14360908a9f5',1,'ucp.h']]], + ['ucp_5fdatatype_5fclass_5fmask',['UCP_DATATYPE_CLASS_MASK',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca63ddce22a2292935f40122def246ffa8',1,'ucp.h']]], + ['ucp_5fdatatype_5fcontig',['UCP_DATATYPE_CONTIG',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca42f91fe8586a858f8e6cf9b2b0128048',1,'ucp.h']]], + ['ucp_5fdatatype_5fgeneric',['UCP_DATATYPE_GENERIC',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6caeb9bca341a1f16a56bff64f9889a4567',1,'ucp.h']]], + ['ucp_5fdatatype_5fiov',['UCP_DATATYPE_IOV',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca3b5515fddd08f075a8b74eca562bcb50',1,'ucp.h']]], + ['ucp_5fdatatype_5fshift',['UCP_DATATYPE_SHIFT',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6ca5c657c620df6580669917914217b2cda',1,'ucp.h']]], + ['ucp_5fdatatype_5fstrided',['UCP_DATATYPE_STRIDED',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gga50b3b4e641a197264e963d91be480b6caa6bc9a1df8eb865e71f2b90d3e4d97ad',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5flocal_5fsockaddr',['UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a1f04baee4cd992c08b62716558eb6013',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5fname',['UCP_EP_ATTR_FIELD_NAME',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41ac78de8cbed80cdb833a6ae5ddcd270fd',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5fremote_5fsockaddr',['UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a2b85f61bc437c3b277e360afaa058bf3',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ffield_5ftransports',['UCP_EP_ATTR_FIELD_TRANSPORTS',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggaa24832a718990ceb558ab5a1d4abfc41a0eeddc2e29662e9ab046ac862757d11e',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fflag_5fforce',['UCP_EP_CLOSE_FLAG_FORCE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggacef728a5ee7a11f50794544aa259fe71a5b827bc555062bcba501faa3f40e789b',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fmode_5fflush',['UCP_EP_CLOSE_MODE_FLUSH',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga3be4aa93d76e41c80c780965f2f8ae57ab0b1f6dcac5f54dff76c87fcf0c55c8b',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fmode_5fforce',['UCP_EP_CLOSE_MODE_FORCE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga3be4aa93d76e41c80c780965f2f8ae57ad78eab8ac29d813247b3cca01c3194db',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fconn_5frequest',['UCP_EP_PARAM_FIELD_CONN_REQUEST',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a88c2cf7c57a1cddc6b2cf9bcdc99e64e',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5ferr_5fhandler',['UCP_EP_PARAM_FIELD_ERR_HANDLER',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60adc6619f5e4bf3f68190f918ee064036d',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5ferr_5fhandling_5fmode',['UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a1b0e70c12efabe6a2cab3c9bc66db340',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fflags',['UCP_EP_PARAM_FIELD_FLAGS',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a1b53a3d4eaee470bcb3e23c60f1f7794',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5flocal_5fsock_5faddr',['UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60ade6d1e89c4a39f44f8c088d3e79c59f5',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fname',['UCP_EP_PARAM_FIELD_NAME',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60aad52a9473f7b47dd7dddc43062e16436',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fremote_5faddress',['UCP_EP_PARAM_FIELD_REMOTE_ADDRESS',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60ae1c4a9617dea28b56c486ac357299f4c',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fsock_5faddr',['UCP_EP_PARAM_FIELD_SOCK_ADDR',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60a8149dfb8648b2b248825020c63449a80',1,'ucp.h']]], + ['ucp_5fep_5fparam_5ffield_5fuser_5fdata',['UCP_EP_PARAM_FIELD_USER_DATA',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ggabb6ce0b3189f415dadc7f99727751d60afc6cbbfabd368438e5d6afd36f389d1b',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5fclient_5fserver',['UCP_EP_PARAMS_FLAGS_CLIENT_SERVER',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459fad42871a591a0a34bccf5c8203a0b32bb',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5fno_5floopback',['UCP_EP_PARAMS_FLAGS_NO_LOOPBACK',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459fa519d4e4a7237ae543f72ddeaef6864ec',1,'ucp.h']]], + ['ucp_5fep_5fparams_5fflags_5fsend_5fclient_5fid',['UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4a1f422dc1e81495b4aee1da8939459faddc3dea615010520ff2fa9d214eabcd3',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fattr_5ffield_5festimated_5ftime',['UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga806d286165cdbe6d6c63d52b06b16406a6bfbf6be343cb78ca8bb7ad9c602ad1a',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fparam_5ffield_5fmessage_5fsize',['UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga4abce355cbaf6b31b1aaa88b68154f13a3d545405c1d0a3fec8050d1f985f3360',1,'ucp.h']]], + ['ucp_5ferr_5fhandling_5fmode_5fnone',['UCP_ERR_HANDLING_MODE_NONE',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga7c69a28724d5ae3e49490e23e64df167a18c7855c2e1dea33e0be32d9ef841ffe',1,'ucp_def.h']]], + ['ucp_5ferr_5fhandling_5fmode_5fpeer',['UCP_ERR_HANDLING_MODE_PEER',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gga7c69a28724d5ae3e49490e23e64df167aa31630259732e700b6ce0fe612cf0a6f',1,'ucp_def.h']]], + ['ucp_5ffeature_5fam',['UCP_FEATURE_AM',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea685931b9f438fa9a2faaf9eccf47b097',1,'ucp.h']]], + ['ucp_5ffeature_5famo32',['UCP_FEATURE_AMO32',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beab127e1eabe5779ad82bc1ad4c5b47007',1,'ucp.h']]], + ['ucp_5ffeature_5famo64',['UCP_FEATURE_AMO64',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beada4b36191b39ef8615f657d370baead1',1,'ucp.h']]], + ['ucp_5ffeature_5fexported_5fmemh',['UCP_FEATURE_EXPORTED_MEMH',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beafb42f40309d4d14d32b8b7992b48ef68',1,'ucp.h']]], + ['ucp_5ffeature_5frma',['UCP_FEATURE_RMA',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beaf374a837508d798fb36abd22a7a0a033',1,'ucp.h']]], + ['ucp_5ffeature_5fstream',['UCP_FEATURE_STREAM',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea0c3896ead0887f9c650b221831e16b5c',1,'ucp.h']]], + ['ucp_5ffeature_5ftag',['UCP_FEATURE_TAG',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5bea244187ad85296b3784d302db00f66b9e',1,'ucp.h']]], + ['ucp_5ffeature_5fwakeup',['UCP_FEATURE_WAKEUP',['../group___u_c_p___c_o_n_t_e_x_t.html#ggaca5990bc015e7e9ac3e3be4e3611c5beabc3fea5aff6b7453e24235bceb102b5a',1,'ucp.h']]], + ['ucp_5flib_5fattr_5ffield_5fmax_5fthread_5flevel',['UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL',['../group___u_c_p___c_o_n_t_e_x_t.html#gga2791b2b44c55fdb685dcd4dad8c8ae3ca96a3edd65a30f00765d330342d3c1267',1,'ucp.h']]], + ['ucp_5flistener_5fattr_5ffield_5fsockaddr',['UCP_LISTENER_ATTR_FIELD_SOCKADDR',['../group___u_c_p___w_o_r_k_e_r.html#gga54059507b51041359aedffbe75635720a5a58fea3f5a4daa6b055306a6798ec26',1,'ucp.h']]], + ['ucp_5flistener_5fparam_5ffield_5faccept_5fhandler',['UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER',['../group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca3cdf187536d998c115377f8de396ac66',1,'ucp.h']]], + ['ucp_5flistener_5fparam_5ffield_5fconn_5fhandler',['UCP_LISTENER_PARAM_FIELD_CONN_HANDLER',['../group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca6f28cd3c96e0ada4fafc63d6f67e48bc',1,'ucp.h']]], + ['ucp_5flistener_5fparam_5ffield_5fsock_5faddr',['UCP_LISTENER_PARAM_FIELD_SOCK_ADDR',['../group___u_c_p___w_o_r_k_e_r.html#gga36d95269fcce844261494cbd4f5e26fca0eed5ab19654fabc0afceb5b439c6f05',1,'ucp.h']]], + ['ucp_5fmadv_5fnormal',['UCP_MADV_NORMAL',['../group___u_c_p___m_e_m.html#gga1a73c4a7fc1d8a6d75e6b53256eec0b8a3a335aa51dc934e57f4ccbd26fb32fb0',1,'ucp.h']]], + ['ucp_5fmadv_5fwillneed',['UCP_MADV_WILLNEED',['../group___u_c_p___m_e_m.html#gga1a73c4a7fc1d8a6d75e6b53256eec0b8a882711eaac0fe1172570783e9824e12f',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparam_5ffield_5faddress',['UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS',['../group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fca19cd431b1a46a62abaf904d0358ffaad',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparam_5ffield_5fadvice',['UCP_MEM_ADVISE_PARAM_FIELD_ADVICE',['../group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fca8834ee80833e5509eea118807dc1a213',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparam_5ffield_5flength',['UCP_MEM_ADVISE_PARAM_FIELD_LENGTH',['../group___u_c_p___m_e_m.html#gga3c0f7ca217c77fa0ae8649e21b24a1fcac60bdd12018a716587c71883ae408b60',1,'ucp.h']]], + ['ucp_5fmem_5fattr_5ffield_5faddress',['UCP_MEM_ATTR_FIELD_ADDRESS',['../group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14a7255d71b73495f3466b2b3938f85630f',1,'ucp_def.h']]], + ['ucp_5fmem_5fattr_5ffield_5flength',['UCP_MEM_ATTR_FIELD_LENGTH',['../group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14aaf7684459badd65a4e70a65813ae1e35',1,'ucp_def.h']]], + ['ucp_5fmem_5fattr_5ffield_5fmem_5ftype',['UCP_MEM_ATTR_FIELD_MEM_TYPE',['../group___u_c_p___m_e_m.html#ggab0d7a54391c964c59b2cfbf30e23dc14a97c63bcd6332d0556e4439bc65531116',1,'ucp_def.h']]], + ['ucp_5fmem_5fmap_5fallocate',['UCP_MEM_MAP_ALLOCATE',['../group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba8cb2c18c15da7e8da9aa2de5b407957a',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5ffixed',['UCP_MEM_MAP_FIXED',['../group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba937051276d5a7825211189c84d7f2922',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fnonblock',['UCP_MEM_MAP_NONBLOCK',['../group___u_c_p___m_e_m.html#gga06fc87d81c62e9abb8790b6e5713c55ba31fa3f795110becccb25734067b5e203',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5faddress',['UCP_MEM_MAP_PARAM_FIELD_ADDRESS',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faa3ddd6c11c7610ae3c97fcb4473d9332',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fexported_5fmemh_5fbuffer',['UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faf130e704ffef248e615f5aeb25208ce9',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fflags',['UCP_MEM_MAP_PARAM_FIELD_FLAGS',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fafc2e699ec811b6848bfc40d4a6c1b049',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5flength',['UCP_MEM_MAP_PARAM_FIELD_LENGTH',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226faa4aa7e36cd51262837f9179cb74fb22a',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fmemory_5ftype',['UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fab5d6cd1e76f334a4ae5d10d5955d51b7',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fparam_5ffield_5fprot',['UCP_MEM_MAP_PARAM_FIELD_PROT',['../group___u_c_p___m_e_m.html#gga1b78010c24c834aadc9fb8f1083e226fa349ca907322a708479795afef1fe28ff',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5flocal_5fread',['UCP_MEM_MAP_PROT_LOCAL_READ',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a78c92c33fb131e7084b6a2933632ec17',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5flocal_5fwrite',['UCP_MEM_MAP_PROT_LOCAL_WRITE',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a6961fd2dcb7ff1fd5980f2d09bb40c39',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5fremote_5fread',['UCP_MEM_MAP_PROT_REMOTE_READ',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a2dc03b7f80ce18c5ec948d1039342bdb',1,'ucp.h']]], + ['ucp_5fmem_5fmap_5fprot_5fremote_5fwrite',['UCP_MEM_MAP_PROT_REMOTE_WRITE',['../group___u_c_p___m_e_m.html#ggadf764cbdea00d65edcd07bb9953ad2b7a4d1429c096e17c691ca710aeb6385fe8',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fflag_5fexport',['UCP_MEMH_PACK_FLAG_EXPORT',['../group___u_c_p___m_e_m.html#gga83ac2dbb4fe6b93948b00c9a2ad16efead1933cc321da0f7ab0428070d36d1e00',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fparam_5ffield_5fflags',['UCP_MEMH_PACK_PARAM_FIELD_FLAGS',['../group___u_c_p___m_e_m.html#gga9143b85c7c40d6b13020a13bc13f9dbfaa88937590bafafda1088444634173fa8',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fcallback',['UCP_OP_ATTR_FIELD_CALLBACK',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a73e3a6e8b96b37ec1b0764e67dd13602',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fdatatype',['UCP_OP_ATTR_FIELD_DATATYPE',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a354ef92dd9352dfccc859cd2ca3558d8',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fflags',['UCP_OP_ATTR_FIELD_FLAGS',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a2f2586686e21b2700fd7cd4a8efb5a1b',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fmemh',['UCP_OP_ATTR_FIELD_MEMH',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a84426c4dea4dceee1b015c3ccdcb7a78',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fmemory_5ftype',['UCP_OP_ATTR_FIELD_MEMORY_TYPE',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a768b4c6759502c34b0051ba33c0d05b3',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5frecv_5finfo',['UCP_OP_ATTR_FIELD_RECV_INFO',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610ac5a4c17a81a2efefae5e338479ae06cb',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5freply_5fbuffer',['UCP_OP_ATTR_FIELD_REPLY_BUFFER',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a8eb660399c093d89d5deae5c847019f0',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5frequest',['UCP_OP_ATTR_FIELD_REQUEST',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610acfac7dfc3e7b5967870f5376c334b996',1,'ucp.h']]], + ['ucp_5fop_5fattr_5ffield_5fuser_5fdata',['UCP_OP_ATTR_FIELD_USER_DATA',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610af6f932f15331fe7c9efacbfe2578e5ec',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5ffast_5fcmpl',['UCP_OP_ATTR_FLAG_FAST_CMPL',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a69a2066ee5f68e57021f622b0cc859a8',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5fforce_5fimm_5fcmpl',['UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610aeb35a090d86119cfd25d4e82753e943f',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5fmulti_5fsend',['UCP_OP_ATTR_FLAG_MULTI_SEND',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a405517272bc4319aa3b49638f5626c7b',1,'ucp.h']]], + ['ucp_5fop_5fattr_5fflag_5fno_5fimm_5fcmpl',['UCP_OP_ATTR_FLAG_NO_IMM_CMPL',['../group___u_c_p___c_o_m_m.html#gga67fae646dd1668efba6efe49a35a6610a8805045d48573e9aa5751b439be114d0',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5festimated_5fnum_5feps',['UCP_PARAM_FIELD_ESTIMATED_NUM_EPS',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a834c5a969e0d41a90d54a6955b7414eb',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5festimated_5fnum_5fppn',['UCP_PARAM_FIELD_ESTIMATED_NUM_PPN',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a22fcdc29e68f36d97a0f389712529976',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5ffeatures',['UCP_PARAM_FIELD_FEATURES',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a454f1e90a324095192d87d97b8a4321f',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5fmt_5fworkers_5fshared',['UCP_PARAM_FIELD_MT_WORKERS_SHARED',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71aa8d5e573f9d52358f50ae2725a08e10e',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5fname',['UCP_PARAM_FIELD_NAME',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a9bf23645413cc4f5e753cf99b4379eb6',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5frequest_5fcleanup',['UCP_PARAM_FIELD_REQUEST_CLEANUP',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a9e2c9cebfbf51d47df31ffd019eb01c6',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5frequest_5finit',['UCP_PARAM_FIELD_REQUEST_INIT',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71ac95d94f94370df6cd79db8e830505738',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5frequest_5fsize',['UCP_PARAM_FIELD_REQUEST_SIZE',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a8385ca52048353e69b90fb7c6b0799ee',1,'ucp.h']]], + ['ucp_5fparam_5ffield_5ftag_5fsender_5fmask',['UCP_PARAM_FIELD_TAG_SENDER_MASK',['../group___u_c_p___c_o_n_t_e_x_t.html#ggab43f613a2365147415abf66f571cfa71a030b9866b2b6167cbdcfe9ce321d1f28',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5finfo_5fstring',['UCP_REQUEST_ATTR_FIELD_INFO_STRING',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa45086e70d5035d92a601605a689178b9',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5finfo_5fstring_5fsize',['UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffaaae11c040c811d14362cbbc47ea9f772',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5fmem_5ftype',['UCP_REQUEST_ATTR_FIELD_MEM_TYPE',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa7a1764b4ce21085ecbbdd13a1f183df5',1,'ucp.h']]], + ['ucp_5frequest_5fattr_5ffield_5fstatus',['UCP_REQUEST_ATTR_FIELD_STATUS',['../group___u_c_p___c_o_m_m.html#ggab383d860475f8917f51afb542e7d02ffa9d41f03b4a79e21265ad15f87d3ff8ed',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fflag_5fwaitall',['UCP_STREAM_RECV_FLAG_WAITALL',['../group___u_c_p___c_o_m_m.html#ggab471a9c7ab815e3d3ad7af80253f5cc2a5fb4ed4f8009d969ea9a8b3f3542424c',1,'ucp.h']]], + ['ucp_5fwakeup_5famo',['UCP_WAKEUP_AMO',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a1f8891a39fe63593947811936a9af8f7',1,'ucp_def.h']]], + ['ucp_5fwakeup_5fedge',['UCP_WAKEUP_EDGE',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a474ecc6ca013d28f71ade5d85aafd1c8',1,'ucp_def.h']]], + ['ucp_5fwakeup_5frma',['UCP_WAKEUP_RMA',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a80fc6d63077023d905d9f3adfb37c50a',1,'ucp_def.h']]], + ['ucp_5fwakeup_5frx',['UCP_WAKEUP_RX',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a182a353c533fc335e638e41fdaf7c6b5',1,'ucp_def.h']]], + ['ucp_5fwakeup_5ftag_5frecv',['UCP_WAKEUP_TAG_RECV',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a15bd79b8acc9815513dccf43fc350435',1,'ucp_def.h']]], + ['ucp_5fwakeup_5ftag_5fsend',['UCP_WAKEUP_TAG_SEND',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22a136d0a608b0dcceb731d3022f1cb0e91',1,'ucp_def.h']]], + ['ucp_5fwakeup_5ftx',['UCP_WAKEUP_TX',['../group___u_c_p___w_o_r_k_e_r.html#gga66be8946dcd33051d40ceca65ba28e22ad70899effbabed3294c35b9b0f2a747b',1,'ucp_def.h']]], + ['ucp_5fworker_5faddress_5fattr_5ffield_5fuid',['UCP_WORKER_ADDRESS_ATTR_FIELD_UID',['../group___u_c_p___w_o_r_k_e_r.html#ggaadc74e7e271c4e181263115b08bf71c8af5d5293830102fa30e1e26cfbdde0772',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fflag_5fnet_5fonly',['UCP_WORKER_ADDRESS_FLAG_NET_ONLY',['../group___u_c_p___w_o_r_k_e_r.html#ggab1ec638cc4a7498a85017d132492d195af9fe9ee3edc7fe21c889437941bb4117',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5faddress',['UCP_WORKER_ATTR_FIELD_ADDRESS',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a0dde53e12c0ab222ddcf2a52984fddd2',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5faddress_5fflags',['UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a9b007ce57d2935817f86b4c4c6aad8c9',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fmax_5fam_5fheader',['UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a4ad76742671a6282274e48dc904f145e',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fmax_5finfo_5fstring',['UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194aa92fba4ea095cc171b1153b88684213d',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fname',['UCP_WORKER_ATTR_FIELD_NAME',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a806d5f1afd1e673b78888588b03ae95e',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ffield_5fthread_5fmode',['UCP_WORKER_ATTR_FIELD_THREAD_MODE',['../group___u_c_p___w_o_r_k_e_r.html#ggacf03ee299a48c2f9c776516cc82c7194a6d3178929ef9e6570999384991fbd42d',1,'ucp.h']]], + ['ucp_5fworker_5fflag_5fignore_5frequest_5fleak',['UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK',['../group___u_c_p___w_o_r_k_e_r.html#gga11a37476d021e1ad36c1b727373212b4a367a4eddbf55c75a186584fef73a484a',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fam_5falignment',['UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a68376de940e85a5ee4ffa6359c5ee2bc',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fclient_5fid',['UCP_WORKER_PARAM_FIELD_CLIENT_ID',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a20b21817e31db3e2ef52b507abbfa0bb',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fcpu_5fmask',['UCP_WORKER_PARAM_FIELD_CPU_MASK',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a0ba499461804b26850d6a530609e228d',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fevent_5ffd',['UCP_WORKER_PARAM_FIELD_EVENT_FD',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6ae743c2d23a0d7b0a9a8c6362a7611139',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fevents',['UCP_WORKER_PARAM_FIELD_EVENTS',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6ac756667325d053bd1cc11cccf853b0c9',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fflags',['UCP_WORKER_PARAM_FIELD_FLAGS',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a4a43ec7752c45629a3fc229a31d33617',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fname',['UCP_WORKER_PARAM_FIELD_NAME',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a57069c65941e47f35bea0478ddf0a829',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fthread_5fmode',['UCP_WORKER_PARAM_FIELD_THREAD_MODE',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a651598f7340d42cafb0876d918c83ec8',1,'ucp.h']]], + ['ucp_5fworker_5fparam_5ffield_5fuser_5fdata',['UCP_WORKER_PARAM_FIELD_USER_DATA',['../group___u_c_p___w_o_r_k_e_r.html#ggadbfc8fd5eaa65351d1617f2f158b80f6a1243d403aeceab36eee6d9cb985e8eb0',1,'ucp.h']]], + ['ucs_5fcallbackq_5fflag_5ffast',['UCS_CALLBACKQ_FLAG_FAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ggaa693580c739b1ba94bd6218d00222110a05c5239629fdbfb4dc63a2b354b93e93',1,'callbackq.h']]], + ['ucs_5fcallbackq_5fflag_5foneshot',['UCS_CALLBACKQ_FLAG_ONESHOT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ggaa693580c739b1ba94bd6218d00222110aabec96aecc786be2edb8f16c5034c493',1,'callbackq.h']]], + ['ucs_5ferr_5falready_5fexists',['UCS_ERR_ALREADY_EXISTS',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a8295b85b654e3145ee08a94714832112',1,'status.h']]], + ['ucs_5ferr_5fbuffer_5ftoo_5fsmall',['UCS_ERR_BUFFER_TOO_SMALL',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a2ab3b7e6c60cb0afe80c2e11cc39122f',1,'status.h']]], + ['ucs_5ferr_5fbusy',['UCS_ERR_BUSY',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a331d8719f76965a4514684c570110105',1,'status.h']]], + ['ucs_5ferr_5fcanceled',['UCS_ERR_CANCELED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a446ce3cf260eab2465e9f7adfbad1f11',1,'status.h']]], + ['ucs_5ferr_5fconnection_5freset',['UCS_ERR_CONNECTION_RESET',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a3845462922a8704ddca8be0dafc47cd5',1,'status.h']]], + ['ucs_5ferr_5fendpoint_5ftimeout',['UCS_ERR_ENDPOINT_TIMEOUT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558adc9adfec2d408b4efd95be36dcb119cf',1,'status.h']]], + ['ucs_5ferr_5fexceeds_5flimit',['UCS_ERR_EXCEEDS_LIMIT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a45d1cd8512f1ba4391f91b0bc399f1fb',1,'status.h']]], + ['ucs_5ferr_5ffirst_5fendpoint_5ffailure',['UCS_ERR_FIRST_ENDPOINT_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a2441db0c09803ed41453968577e29446',1,'status.h']]], + ['ucs_5ferr_5ffirst_5flink_5ffailure',['UCS_ERR_FIRST_LINK_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a8356f94996c7759a785f8d508ff58779',1,'status.h']]], + ['ucs_5ferr_5finvalid_5faddr',['UCS_ERR_INVALID_ADDR',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aaebc6a3a7f1626b431f80ff66e9a4922',1,'status.h']]], + ['ucs_5ferr_5finvalid_5fparam',['UCS_ERR_INVALID_PARAM',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab5a5c5278c83f957a096444de28db597',1,'status.h']]], + ['ucs_5ferr_5fio_5ferror',['UCS_ERR_IO_ERROR',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aaaf39ceea715057fdec5736443e0265b',1,'status.h']]], + ['ucs_5ferr_5flast',['UCS_ERR_LAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a359c2fe5ffba5911f340ec8a750917bb',1,'status.h']]], + ['ucs_5ferr_5flast_5fendpoint_5ffailure',['UCS_ERR_LAST_ENDPOINT_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa54339cfd8cefc96aa4e9d5d0b824284',1,'status.h']]], + ['ucs_5ferr_5flast_5flink_5ffailure',['UCS_ERR_LAST_LINK_FAILURE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a9e4aac3283309260e9b8f34bca72209c',1,'status.h']]], + ['ucs_5ferr_5fmessage_5ftruncated',['UCS_ERR_MESSAGE_TRUNCATED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aef3defd5d754266db882e079fad7c544',1,'status.h']]], + ['ucs_5ferr_5fno_5fdevice',['UCS_ERR_NO_DEVICE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558af42564cbfb39953294f80d782404a3bf',1,'status.h']]], + ['ucs_5ferr_5fno_5felem',['UCS_ERR_NO_ELEM',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab67faa1abcd824b5bb47a094491524ba',1,'status.h']]], + ['ucs_5ferr_5fno_5fmemory',['UCS_ERR_NO_MEMORY',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a9919ffd4eaf870612c4aa63df65ae0a6',1,'status.h']]], + ['ucs_5ferr_5fno_5fmessage',['UCS_ERR_NO_MESSAGE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a1bbd2445646883a1ef758fe2ef75e586',1,'status.h']]], + ['ucs_5ferr_5fno_5fprogress',['UCS_ERR_NO_PROGRESS',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa3e6111410197f82888c6527258a5149',1,'status.h']]], + ['ucs_5ferr_5fno_5fresource',['UCS_ERR_NO_RESOURCE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a83fc93632e7b3e3251410985aab27edc',1,'status.h']]], + ['ucs_5ferr_5fnot_5fconnected',['UCS_ERR_NOT_CONNECTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a19ed4a30ff1b25ffdc00adeb8cd211fa',1,'status.h']]], + ['ucs_5ferr_5fnot_5fimplemented',['UCS_ERR_NOT_IMPLEMENTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a623f715116a8d8986c737bf626e956b4',1,'status.h']]], + ['ucs_5ferr_5fout_5fof_5frange',['UCS_ERR_OUT_OF_RANGE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a7ce30c5ce3f9b06ed9d51a618dc76920',1,'status.h']]], + ['ucs_5ferr_5frejected',['UCS_ERR_REJECTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a7ebfa416cd741e37ec1a0371feaaa10a',1,'status.h']]], + ['ucs_5ferr_5fshmem_5fsegment',['UCS_ERR_SHMEM_SEGMENT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a5cfb884e5be55df1f4acf19990f4029d',1,'status.h']]], + ['ucs_5ferr_5fsome_5fconnects_5ffailed',['UCS_ERR_SOME_CONNECTS_FAILED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558aa74d2a7cf7aeeaaaff6724bf0d700743',1,'status.h']]], + ['ucs_5ferr_5ftimed_5fout',['UCS_ERR_TIMED_OUT',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a28655a75087757c2b6c28adcae5562c7',1,'status.h']]], + ['ucs_5ferr_5funreachable',['UCS_ERR_UNREACHABLE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558ab56647f308360ef22316ed42a700e057',1,'status.h']]], + ['ucs_5ferr_5funsupported',['UCS_ERR_UNSUPPORTED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a252c38290855ceaf849c04b7fa52dc23',1,'status.h']]], + ['ucs_5finprogress',['UCS_INPROGRESS',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a77aa02620851779729e4ad6ceb41f84a',1,'status.h']]], + ['ucs_5fmemory_5ftype_5fcuda',['UCS_MEMORY_TYPE_CUDA',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dafc4cb4732ebd0539e364bb6a4466c2fc',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5fcuda_5fmanaged',['UCS_MEMORY_TYPE_CUDA_MANAGED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dab61ccfc729e22de60f4831cc60ef1e16',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5fhost',['UCS_MEMORY_TYPE_HOST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da4bebe1325d9a3be9b5821bec4f78a55f',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5flast',['UCS_MEMORY_TYPE_LAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da6105aba9983dc25cbf7cbf4d03f655d7',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5frocm',['UCS_MEMORY_TYPE_ROCM',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982da84a165376983da6abbdf0e9cc7d3d546',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5frocm_5fmanaged',['UCS_MEMORY_TYPE_ROCM_MANAGED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dabc097618d75594ac6df460592561cd77',1,'memory_type.h']]], + ['ucs_5fmemory_5ftype_5funknown',['UCS_MEMORY_TYPE_UNKNOWN',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga5cfcc524f5dc586101a3e7caff8d982dab0e5609f442bf33d5447c6e8b5928215',1,'memory_type.h']]], + ['ucs_5fok',['UCS_OK',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga88ca72d7294772e7d2edb70a2df15558a1a7fbae02ac33fb94f519c7c773f419a',1,'status.h']]], + ['ucs_5fthread_5fmode_5flast',['UCS_THREAD_MODE_LAST',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525ceaf7b465a8a13f216fd6c35a828a8c7986',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5fmulti',['UCS_THREAD_MODE_MULTI',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525cea8f8e252ce479d99c7cdc708321534904',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5fserialized',['UCS_THREAD_MODE_SERIALIZED',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525cea95d2ddb2144f8cfebfe305be13bd6776',1,'thread_mode.h']]], + ['ucs_5fthread_5fmode_5fsingle',['UCS_THREAD_MODE_SINGLE',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gga40e9f363c389e702ad9920f5d52525ceabc2f71e39a3527f7abe6a1c47f0a5a25',1,'thread_mode.h']]], + ['uct_5falloc_5fmethod_5fdefault',['UCT_ALLOC_METHOD_DEFAULT',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09aee732738d1b13520beeefda125e40665',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fheap',['UCT_ALLOC_METHOD_HEAP',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ab026ce58725388c3dca9d1a5d152250c',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fhuge',['UCT_ALLOC_METHOD_HUGE',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ad542185f2c8f7a7ff89f3a1b0581439d',1,'uct.h']]], + ['uct_5falloc_5fmethod_5flast',['UCT_ALLOC_METHOD_LAST',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a3b9f6f050e19d2d85425d2c87d4bdbb8',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fmd',['UCT_ALLOC_METHOD_MD',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a2036e15fb7da79b6cb7af6e8bda700c7',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fmmap',['UCT_ALLOC_METHOD_MMAP',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09a496187eba67f49a27e0017a4290505cc',1,'uct.h']]], + ['uct_5falloc_5fmethod_5fthp',['UCT_ALLOC_METHOD_THP',['../group___u_c_t___c_o_n_t_e_x_t.html#gga019362c62f98ff7935b05c512eb0ab09ae4e651614b0a020b351b94f4a589fd07',1,'uct.h']]], + ['uct_5fam_5ftrace_5ftype_5flast',['UCT_AM_TRACE_TYPE_LAST',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a74589340125a9634d4f1cba73da0b0a1',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5frecv',['UCT_AM_TRACE_TYPE_RECV',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a02b0b980c43b7d66823bb0169d03f98f',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5frecv_5fdrop',['UCT_AM_TRACE_TYPE_RECV_DROP',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067aa2125f63177d657998f381a60e60e8fd',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5fsend',['UCT_AM_TRACE_TYPE_SEND',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067aef58a6db54a952e5e34edd91325a83ed',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5fsend_5fdrop',['UCT_AM_TRACE_TYPE_SEND_DROP',['../group___u_c_t___a_m.html#ggacbe4c7fdcaf25cd7bd004a3c2d54f067a70335ae779aaa99685d6842f9e85a6db',1,'uct_def.h']]], + ['uct_5fcb_5fflag_5fasync',['UCT_CB_FLAG_ASYNC',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaca1e07b69024fec26746e3a19b4de9d0a2de3b7622afcabd645878e0540f062aa',1,'uct.h']]], + ['uct_5fcb_5fflag_5freserved',['UCT_CB_FLAG_RESERVED',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaca1e07b69024fec26746e3a19b4de9d0a93c65c155511b258449363ea8cad8f7f',1,'uct.h']]], + ['uct_5fcb_5fparam_5fflag_5fdesc',['UCT_CB_PARAM_FLAG_DESC',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9a741f6a62c34d5484fa6999b1e097e42a',1,'uct_def.h']]], + ['uct_5fcb_5fparam_5fflag_5ffirst',['UCT_CB_PARAM_FLAG_FIRST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9aef5b11372c919dfcdc55602d48e67135',1,'uct_def.h']]], + ['uct_5fcb_5fparam_5fflag_5fmore',['UCT_CB_PARAM_FLAG_MORE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga36bfc11c722b01a11e1949e8329262c9a2d9bb153789aeae6d1ecf0173cf483e9',1,'uct_def.h']]], + ['uct_5fcm_5fattr_5ffield_5fmax_5fconn_5fpriv',['UCT_CM_ATTR_FIELD_MAX_CONN_PRIV',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga2b308be867e1e13dcb7d941b07835431a2521b69fbc5dd8dff615878729572978',1,'uct.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ffield_5fremote_5fdata',['UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_REMOTE_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6746759cc1850c6e260fca7e3de008ada9657c720a60df0b6b89bd9b019ac01cc',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ffield_5fstatus',['UCT_CM_EP_CLIENT_CONNECT_ARGS_FIELD_STATUS',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6746759cc1850c6e260fca7e3de008ada21ad19d697d3ff1b5a3acb0fcb4a7cfc',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs_5ffield_5fdevice_5fname',['UCT_CM_EP_PRIV_DATA_PACK_ARGS_FIELD_DEVICE_NAME',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga405dee8e814ebc33f14c5f44e80d008ca39e1834470a48aaaa5b9e6fbef11b5f1',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ffield_5fdev_5fname',['UCT_CM_EP_RESOLVE_ARGS_FIELD_DEV_NAME',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6c342b6c43e178b73f567bd0fb253e62ab617fac24c5437d6acd095c84eb0a6a1',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ffield_5fstatus',['UCT_CM_EP_RESOLVE_ARGS_FIELD_STATUS',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga6c342b6c43e178b73f567bd0fb253e62ad7cc5818b0812933a99f25378be77cb5',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs_5ffield_5fstatus',['UCT_CM_EP_SERVER_CONN_NOTIFY_ARGS_FIELD_STATUS',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf1cffc53a9b63fb98a77503917f5fd79a84648af7a2470a6869bd8d05e894b0a5',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fclient_5faddr',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CLIENT_ADDR',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfae396fa228bfaf18e554eaa2e91f19333',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fconn_5frequest',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_CONN_REQUEST',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfadf438afd4aa996a342ddb1e69894882b',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fdev_5fname',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_DEV_NAME',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfab3c57e4db473538c60b5feaf094833d9',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ffield_5fremote_5fdata',['UCT_CM_LISTENER_CONN_REQUEST_ARGS_FIELD_REMOTE_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga9e97a59a0593244e730734d592b642dfab87a184e4a1684ba337aaff9547c2753',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fconn_5fpriv_5fdata',['UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a86ed1d1f02236dd9467176b2130fba32',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fconn_5fpriv_5fdata_5flength',['UCT_CM_REMOTE_DATA_FIELD_CONN_PRIV_DATA_LENGTH',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a550619037bb2bad0ad2a46dfe68f6cc3',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fdev_5faddr',['UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37af5ba4b8423006af3e3b0342b9cea533b',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ffield_5fdev_5faddr_5flength',['UCT_CM_REMOTE_DATA_FIELD_DEV_ADDR_LENGTH',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gga3e023485a86ad4092497ffe58cddef37a22ac6bf59b6b07381c25ba808254092b',1,'uct_def.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fflags',['UCT_COMPONENT_ATTR_FIELD_FLAGS',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68baf29cd3b384fbddeccc937d42abbd6b41',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fmd_5fresource_5fcount',['UCT_COMPONENT_ATTR_FIELD_MD_RESOURCE_COUNT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba25d44baf92c5c7673dbbf44de35fdc84',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fmd_5fresources',['UCT_COMPONENT_ATTR_FIELD_MD_RESOURCES',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba4ffc9f65e0b3d7cb07db745e7e61ba47',1,'uct.h']]], + ['uct_5fcomponent_5fattr_5ffield_5fname',['UCT_COMPONENT_ATTR_FIELD_NAME',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga246ded5e20aa09c590673c771c74b68ba45f30f9f196f5f75309882d48c435a26',1,'uct.h']]], + ['uct_5fcomponent_5fflag_5fcm',['UCT_COMPONENT_FLAG_CM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggadc29c2ff13d900c2f185ee95427fb06cac3f00c23358624b53732e413433f1d8d',1,'uct.h']]], + ['uct_5fcomponent_5fflag_5frkey_5fptr',['UCT_COMPONENT_FLAG_RKEY_PTR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggadc29c2ff13d900c2f185ee95427fb06cab20fb035dcd4f2aa6eee77dd501880c3',1,'uct.h']]], + ['uct_5fdevice_5ftype_5facc',['UCT_DEVICE_TYPE_ACC',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da4830aee82331272d4acfc027d733613f',1,'uct.h']]], + ['uct_5fdevice_5ftype_5flast',['UCT_DEVICE_TYPE_LAST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20dacd8f593dedbce6ce4d40115b593451e1',1,'uct.h']]], + ['uct_5fdevice_5ftype_5fnet',['UCT_DEVICE_TYPE_NET',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da5996d835fc60fcdca9c03539b99a0a2d',1,'uct.h']]], + ['uct_5fdevice_5ftype_5fself',['UCT_DEVICE_TYPE_SELF',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da86a97f09cfba66ff7170f77faaa2d89b',1,'uct.h']]], + ['uct_5fdevice_5ftype_5fshm',['UCT_DEVICE_TYPE_SHM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggae0c25b8c160e49fbb9cc122c9807f20da3d586e5bccd77cfe8bb3c87ce3fcce06',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparam_5ffield_5fprivate_5fdata',['UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaa821e2f4247cd5e72632e5ea7008e6e1a51f30ec2f30a63bdea6660a0ad61305e',1,'uct.h']]], + ['uct_5fep_5fconnect_5fparam_5ffield_5fprivate_5fdata_5flength',['UCT_EP_CONNECT_PARAM_FIELD_PRIVATE_DATA_LENGTH',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaa821e2f4247cd5e72632e5ea7008e6e1accc8d70e4ee5ee60283e1b53456963e1',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fcm',['UCT_EP_PARAM_FIELD_CM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bab089df3f421f6fc0ccdda8b36ecd4e42',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fcm_5fresolve_5fcb',['UCT_EP_PARAM_FIELD_CM_RESOLVE_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bab8af49c5286ab9f6b6f6f62743960f8f',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fconn_5frequest',['UCT_EP_PARAM_FIELD_CONN_REQUEST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba313aa3f8e5e089fc57a0c53fa48ee72d',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fdev_5faddr',['UCT_EP_PARAM_FIELD_DEV_ADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba14fb24fafcf9fdd0418a5dd348ab828c',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fiface',['UCT_EP_PARAM_FIELD_IFACE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba082065ffa8866740ca6418a9c38b503d',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fiface_5faddr',['UCT_EP_PARAM_FIELD_IFACE_ADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658baef938215a002d0b59812c737db0a965d',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5flocal_5fsockaddr',['UCT_EP_PARAM_FIELD_LOCAL_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bafdb48e56bfcdd0b9439329568885f8df',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fpath_5findex',['UCT_EP_PARAM_FIELD_PATH_INDEX',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658baf1b7df888b75b42a627b327003bffdb6',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fpriv_5fdata',['UCT_EP_PARAM_FIELD_PRIV_DATA',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba43b2ccfee5e1811447b1902e6d9962c4',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fpriv_5fdata_5flength',['UCT_EP_PARAM_FIELD_PRIV_DATA_LENGTH',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bac5bd575d5dddf9dd99e90251bb56faea',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr',['UCT_EP_PARAM_FIELD_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bae4c4f4f2110b170ed4920529821387e6',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fcb_5fflags',['UCT_EP_PARAM_FIELD_SOCKADDR_CB_FLAGS',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba6489f1bcbdd0de8e2aee80661aa37ec1',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fconnect_5fcb_5fclient',['UCT_EP_PARAM_FIELD_SOCKADDR_CONNECT_CB_CLIENT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bad59d4bae36d22a6d5da01512d9861256',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fdisconnect_5fcb',['UCT_EP_PARAM_FIELD_SOCKADDR_DISCONNECT_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba148d1e23de6d640612457216ad81da29',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fnotify_5fcb_5fserver',['UCT_EP_PARAM_FIELD_SOCKADDR_NOTIFY_CB_SERVER',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658bad86327449165ad945e6ae8a7c36c1c8c',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fsockaddr_5fpack_5fcb',['UCT_EP_PARAM_FIELD_SOCKADDR_PACK_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658ba61e749dca15775eb4cbc492c020027ca',1,'uct.h']]], + ['uct_5fep_5fparam_5ffield_5fuser_5fdata',['UCT_EP_PARAM_FIELD_USER_DATA',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8e76f363d8805669fb5371b404c5658babbff9b7d6a5114860d6b40f3b0c445dc',1,'uct.h']]], + ['uct_5fevent_5frecv',['UCT_EVENT_RECV',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2a1381e135252b79646cdb3a6f3d15431e',1,'uct.h']]], + ['uct_5fevent_5frecv_5fsig',['UCT_EVENT_RECV_SIG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2ab5b97562ce555a0979a56bd1d9810eaf',1,'uct.h']]], + ['uct_5fevent_5fsend_5fcomp',['UCT_EVENT_SEND_COMP',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ggaef09139f303b0a3d28a1cea524dc3bd2aba611824db8eb31b9eb07111f987e011',1,'uct.h']]], + ['uct_5fflush_5fflag_5fcancel',['UCT_FLUSH_FLAG_CANCEL',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6a556a8cb417f5b6e21b0be93297eb2f45',1,'uct.h']]], + ['uct_5fflush_5fflag_5flocal',['UCT_FLUSH_FLAG_LOCAL',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6ad0b221329684853b22a60d88e0dd8bac',1,'uct.h']]], + ['uct_5fflush_5fflag_5fremote',['UCT_FLUSH_FLAG_REMOTE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga84ba23c28fda1c96f5018bbafb7ffed6a0c1b82dd17faf5ece84a69702168afe7',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fam',['UCT_IFACE_FEATURE_AM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a4bce30860f36cee1a7b74f6cd2c061ad',1,'uct.h']]], + ['uct_5fiface_5ffeature_5famo32',['UCT_IFACE_FEATURE_AMO32',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a06a813eb45714bc70e154691d82e5e81',1,'uct.h']]], + ['uct_5fiface_5ffeature_5famo64',['UCT_IFACE_FEATURE_AMO64',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7af6bebc50b5e4169f38cddaacc7ba7a7a',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fflush_5fremote',['UCT_IFACE_FEATURE_FLUSH_REMOTE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ac161e1b9f69409f4e2238af1c6d4d155',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fget',['UCT_IFACE_FEATURE_GET',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ae80cd4ab8043e2df41d2d81854686415',1,'uct.h']]], + ['uct_5fiface_5ffeature_5flast',['UCT_IFACE_FEATURE_LAST',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7ab317c0279d872516f011df628d67dd9f',1,'uct.h']]], + ['uct_5fiface_5ffeature_5fput',['UCT_IFACE_FEATURE_PUT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a59d0a64607692e3ff39fa61a899c7633',1,'uct.h']]], + ['uct_5fiface_5ffeature_5ftag',['UCT_IFACE_FEATURE_TAG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga078dd84cff9d6b1cda5692fbf6b1e7c7a08d34bf9a962d1b27b0c92865c773854',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode_5fdevice',['UCT_IFACE_OPEN_MODE_DEVICE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5a504bef9a8574445a0dfdcf517160fef0',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode_5fsockaddr_5fclient',['UCT_IFACE_OPEN_MODE_SOCKADDR_CLIENT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5ab596bc437bc4e84500039aafcf5adfeb',1,'uct.h']]], + ['uct_5fiface_5fopen_5fmode_5fsockaddr_5fserver',['UCT_IFACE_OPEN_MODE_SOCKADDR_SERVER',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga8bc9c95ee7fbd76321940e2853d08bb5a9b2655b644fae2cf20d5b673854c9ad0',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fam_5falign_5foffset',['UCT_IFACE_PARAM_FIELD_AM_ALIGN_OFFSET',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a22a9554ccdc8209f81d7d5b5a8e39780',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fam_5falignment',['UCT_IFACE_PARAM_FIELD_AM_ALIGNMENT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a8d676d1b40253cacf1abb4302d448d3a',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fasync_5fevent_5farg',['UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a8d6361b77aae50f66b88b13826375aed',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fasync_5fevent_5fcb',['UCT_IFACE_PARAM_FIELD_ASYNC_EVENT_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a83e8eb07f6d7e357001a0ac826857ebd',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fcpu_5fmask',['UCT_IFACE_PARAM_FIELD_CPU_MASK',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a80cd3b1a8f9de031df8aa12e7a0eb08b',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fdevice',['UCT_IFACE_PARAM_FIELD_DEVICE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a0f56ae54f7fcd7a002588a75e207f8a2',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ferr_5fhandler',['UCT_IFACE_PARAM_FIELD_ERR_HANDLER',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a57771259693749559910cbf8256ef7a1',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ferr_5fhandler_5farg',['UCT_IFACE_PARAM_FIELD_ERR_HANDLER_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ab0a406683b45f265eaf9edc794e72e7e',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ferr_5fhandler_5fflags',['UCT_IFACE_PARAM_FIELD_ERR_HANDLER_FLAGS',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a2f97be5b7ef0e542fc39fe778c85097e',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5ffeatures',['UCT_IFACE_PARAM_FIELD_FEATURES',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ad5efe451d0f04d6929f39b66cdc8d889',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5feager_5farg',['UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596ad4afd13a4a6e36adb6e5576de666ab64',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5feager_5fcb',['UCT_IFACE_PARAM_FIELD_HW_TM_EAGER_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a9dcb103f9b93d5c37d5b1ff401fda324',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5frndv_5farg',['UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_ARG',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a5b7da96e1cd28639f489bcf08194ecd7',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fhw_5ftm_5frndv_5fcb',['UCT_IFACE_PARAM_FIELD_HW_TM_RNDV_CB',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a2c2b16ef1c537d1596ceb7b72fbf3145',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fkeepalive_5finterval',['UCT_IFACE_PARAM_FIELD_KEEPALIVE_INTERVAL',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a3b05690f0c5ae7cf346a1e7a00186953',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fopen_5fmode',['UCT_IFACE_PARAM_FIELD_OPEN_MODE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a436751cf65204ec8d37e649b0913eff7',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5frx_5fheadroom',['UCT_IFACE_PARAM_FIELD_RX_HEADROOM',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596aabb0425ec3c58345ba973683b72dc255',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fsockaddr',['UCT_IFACE_PARAM_FIELD_SOCKADDR',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596af01913e91929ae3c52c465e5df97bec3',1,'uct.h']]], + ['uct_5fiface_5fparam_5ffield_5fstats_5froot',['UCT_IFACE_PARAM_FIELD_STATS_ROOT',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga896baeefc7933d925202c32b0d09f596a7af1c01a0aa6c8d7ddc167cd516f3272',1,'uct.h']]], + ['uct_5flistener_5fattr_5ffield_5fsockaddr',['UCT_LISTENER_ATTR_FIELD_SOCKADDR',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggad253d9c2e4116f9a137a2d2450afbe66af566cba098163f464bdad7c392232c3f',1,'uct.h']]], + ['uct_5flistener_5fparam_5ffield_5fbacklog',['UCT_LISTENER_PARAM_FIELD_BACKLOG',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7aa2a3bbfd550dc87ed8bba5cf960068fa',1,'uct.h']]], + ['uct_5flistener_5fparam_5ffield_5fconn_5frequest_5fcb',['UCT_LISTENER_PARAM_FIELD_CONN_REQUEST_CB',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7a8a9ba7427c813614e65f29c38225ab44',1,'uct.h']]], + ['uct_5flistener_5fparam_5ffield_5fuser_5fdata',['UCT_LISTENER_PARAM_FIELD_USER_DATA',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ggaf716bd7cdc636377ef78c258886693c7af6172e01a7919f4afd27fa5e0aa0b794',1,'uct.h']]], + ['uct_5fmadv_5fnormal',['UCT_MADV_NORMAL',['../group___u_c_t___m_d.html#gga72172b231f5e9df777cb130b9f908397a44cc1f4e9d750610f872680ad83a5693',1,'uct.h']]], + ['uct_5fmadv_5fwillneed',['UCT_MADV_WILLNEED',['../group___u_c_t___m_d.html#gga72172b231f5e9df777cb130b9f908397af2f40857cea090977db8a5994b334594',1,'uct.h']]], + ['uct_5fmd_5fflag_5fadvise',['UCT_MD_FLAG_ADVISE',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea489e86d8c4f7630c5b15ba37c11e8598',1,'uct.h']]], + ['uct_5fmd_5fflag_5falloc',['UCT_MD_FLAG_ALLOC',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eace1638df732eb289b9dd6255101c6532',1,'uct.h']]], + ['uct_5fmd_5fflag_5fexported_5fmkey',['UCT_MD_FLAG_EXPORTED_MKEY',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8aad09237d801dbd3a7636ebb18c40e4',1,'uct.h']]], + ['uct_5fmd_5fflag_5ffixed',['UCT_MD_FLAG_FIXED',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eae948128d19128010bff52f39b2ea8528',1,'uct.h']]], + ['uct_5fmd_5fflag_5finvalidate',['UCT_MD_FLAG_INVALIDATE',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea3b11ef8fb3fcf99c71ce1f91b03ecd2d',1,'uct.h']]], + ['uct_5fmd_5fflag_5fneed_5fmemh',['UCT_MD_FLAG_NEED_MEMH',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8badc53da14cdd45fa70178483091e55',1,'uct.h']]], + ['uct_5fmd_5fflag_5fneed_5frkey',['UCT_MD_FLAG_NEED_RKEY',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eafc6830135c641eecf0200f9990257e10',1,'uct.h']]], + ['uct_5fmd_5fflag_5freg',['UCT_MD_FLAG_REG',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9eac2a33833ce3c103c3de54332c512eba7',1,'uct.h']]], + ['uct_5fmd_5fflag_5freg_5fdmabuf',['UCT_MD_FLAG_REG_DMABUF',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea88f4343ee73e7b4da46e98d07023b9f5',1,'uct.h']]], + ['uct_5fmd_5fflag_5frkey_5fptr',['UCT_MD_FLAG_RKEY_PTR',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea8e6750832a6a17fc5aff65c767d0e5b5',1,'uct.h']]], + ['uct_5fmd_5fflag_5fsockaddr',['UCT_MD_FLAG_SOCKADDR',['../group___u_c_t___m_d.html#gga61dadd085c1777f559549e05962b2c9ea1ef79afc094919112724f8eb82c2484b',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fall',['UCT_MD_MEM_ACCESS_ALL',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa8de9fc3e5e9a93abee846dbce6f51471',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5flocal_5fread',['UCT_MD_MEM_ACCESS_LOCAL_READ',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aaec71b48ac78529034432e702ae2497af',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5flocal_5fwrite',['UCT_MD_MEM_ACCESS_LOCAL_WRITE',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa3da522cc5178d7330279de64c6d8a42d',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fremote_5fatomic',['UCT_MD_MEM_ACCESS_REMOTE_ATOMIC',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa4478fefd476fe66f7a1721161e3773e1',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fremote_5fget',['UCT_MD_MEM_ACCESS_REMOTE_GET',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa4a699e49e99a57afab4fb7b4825e8a5e',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5fremote_5fput',['UCT_MD_MEM_ACCESS_REMOTE_PUT',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa107516b36500372eac7e05bdb71cf4a1',1,'uct.h']]], + ['uct_5fmd_5fmem_5faccess_5frma',['UCT_MD_MEM_ACCESS_RMA',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa53c0d5770a5c69086d0aaa58e7398fa8',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5falloc_5flength',['UCT_MD_MEM_ATTR_FIELD_ALLOC_LENGTH',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a7f5f99bb05148218a1855f3f8344aabb',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fbase_5faddress',['UCT_MD_MEM_ATTR_FIELD_BASE_ADDRESS',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a132548201e6dba2fca6b03385eed2356',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fdmabuf_5ffd',['UCT_MD_MEM_ATTR_FIELD_DMABUF_FD',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a1178afc62486924f953e18fbf1613754',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fdmabuf_5foffset',['UCT_MD_MEM_ATTR_FIELD_DMABUF_OFFSET',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a7511ff87de4e1dcd4140acc9a6131df4',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fmem_5ftype',['UCT_MD_MEM_ATTR_FIELD_MEM_TYPE',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a873fb4c4b884a7598873badb63a8caf9',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5fsys_5fdev',['UCT_MD_MEM_ATTR_FIELD_SYS_DEV',['../group___u_c_t___m_d.html#ggac4f1c9728c529e4f35eaf03bc14c6977a1b869b2080c1ab765fa0b67a86dabb24',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5ffixed',['UCT_MD_MEM_FLAG_FIXED',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aac91502fd80954a19287b56c82d8c15e8',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5fhide_5ferrors',['UCT_MD_MEM_FLAG_HIDE_ERRORS',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aac9affab2e3fc8ce0237b8b7800731c49',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5flock',['UCT_MD_MEM_FLAG_LOCK',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa177416f1bc52ecf58571f2320ea860f4',1,'uct.h']]], + ['uct_5fmd_5fmem_5fflag_5fnonblock',['UCT_MD_MEM_FLAG_NONBLOCK',['../group___u_c_t___m_d.html#gga3b0345adc84e4b3224366502aca5e11aa156afde3449517fd4d518148df8e3e24',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5faddress',['UCT_MEM_ALLOC_PARAM_FIELD_ADDRESS',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923abcfd9def1c725531f11cbbcde9fedd6f',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fflags',['UCT_MEM_ALLOC_PARAM_FIELD_FLAGS',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923ae179d3ffed3e53b0e2cda2d6a62280d3',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fmds',['UCT_MEM_ALLOC_PARAM_FIELD_MDS',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a122274e877d32afcfafd10cde3c0b8e7',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fmem_5ftype',['UCT_MEM_ALLOC_PARAM_FIELD_MEM_TYPE',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a0f09a88dc239026aefa08e4597e0d9e6',1,'uct.h']]], + ['uct_5fmem_5falloc_5fparam_5ffield_5fname',['UCT_MEM_ALLOC_PARAM_FIELD_NAME',['../group___u_c_t___m_d.html#gga3421ca55bc67f5752ca6164f678a7923a97de3a2b66f4cd940a271df1b9632f83',1,'uct.h']]], + ['uct_5fprogress_5frecv',['UCT_PROGRESS_RECV',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a13a7d7c06d204f61b5de0cdf3ede1957',1,'uct.h']]], + ['uct_5fprogress_5fsend',['UCT_PROGRESS_SEND',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a5a00ade1aed7157a0662d8a4ae9cc2f5',1,'uct.h']]], + ['uct_5fprogress_5fthread_5fsafe',['UCT_PROGRESS_THREAD_SAFE',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga71bfe6e07ebbcc036f883b31db1e9e51a8cba06626715c4be748d16a7baf90b77',1,'uct.h']]], + ['uct_5fsend_5fflag_5fpeer_5fcheck',['UCT_SEND_FLAG_PEER_CHECK',['../group___u_c_t___a_m.html#gga139e5d124e16d412200bf64bdbccab1ca222442e08a093d34d6266e810346f4d8',1,'uct.h']]], + ['uct_5fsend_5fflag_5fsignaled',['UCT_SEND_FLAG_SIGNALED',['../group___u_c_t___a_m.html#gga139e5d124e16d412200bf64bdbccab1ca5af3a2c43c1e989a4f21f97188f38b06',1,'uct.h']]], + ['uct_5fsockaddr_5facc_5flocal',['UCT_SOCKADDR_ACC_LOCAL',['../group___u_c_t___m_d.html#ggacb560e35a1b169ca88792200817e219ea0f21e1dc1e98d3ee0291cc345bfe1fde',1,'uct.h']]], + ['uct_5fsockaddr_5facc_5fremote',['UCT_SOCKADDR_ACC_REMOTE',['../group___u_c_t___m_d.html#ggacb560e35a1b169ca88792200817e219ea4e0f66a27582dfec8698a77102fb368e',1,'uct.h']]], + ['uct_5ftag_5frecv_5fcb_5finline_5fdata',['UCT_TAG_RECV_CB_INLINE_DATA',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gga726ca809ffd3d67ab4b8476646f26635a5dcb013c4470abbabc764c473898df3e',1,'uct.h']]] +]; diff --git a/api/v1.14/html/search/functions_0.html b/api/v1.14/html/search/functions_0.html new file mode 100644 index 00000000000..6bc52b6198f --- /dev/null +++ b/api/v1.14/html/search/functions_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/functions_0.js b/api/v1.14/html/search/functions_0.js new file mode 100644 index 00000000000..ad3eb37c004 --- /dev/null +++ b/api/v1.14/html/search/functions_0.js @@ -0,0 +1,218 @@ +var searchData= +[ + ['ucp_5fam_5fdata_5frelease',['ucp_am_data_release',['../group___u_c_p___c_o_m_m.html#ga45570903fc3ce01e7e5c0cd241f516f9',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fdata_5fnbx',['ucp_am_recv_data_nbx',['../group___u_c_p___c_o_m_m.html#gaefaaa5e0a154efe496ae5bb7f2bf71f3',1,'ucp.h']]], + ['ucp_5fam_5fsend_5fnb',['ucp_am_send_nb',['../group___u_c_p___c_o_m_m.html#ga94ec21811930b6b6fb8eab500b8c730d',1,'ucp_compat.h']]], + ['ucp_5fam_5fsend_5fnbx',['ucp_am_send_nbx',['../group___u_c_p___c_o_m_m.html#ga4b8ab214f35828ee4608d73442e8c372',1,'ucp.h']]], + ['ucp_5fatomic_5fadd32',['ucp_atomic_add32',['../group___u_c_p___c_o_m_m.html#gaa042d7e76314e1d7ea9717d4adacde7b',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fadd64',['ucp_atomic_add64',['../group___u_c_p___c_o_m_m.html#gaa80cd3f104b920c0c2f6bf7cff50fc15',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fcswap32',['ucp_atomic_cswap32',['../group___u_c_p___c_o_m_m.html#ga6078dddaa93c8dfdab3c18014064f0c0',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fcswap64',['ucp_atomic_cswap64',['../group___u_c_p___c_o_m_m.html#gafa365c16d4c2b4fd2aba6e94fec2c92b',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffadd32',['ucp_atomic_fadd32',['../group___u_c_p___c_o_m_m.html#ga0c777d7d1c59e01151ef5e3fcd7e5b94',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffadd64',['ucp_atomic_fadd64',['../group___u_c_p___c_o_m_m.html#ga7435bc5d5e2c4fb6b491d457ab65596b',1,'ucp_compat.h']]], + ['ucp_5fatomic_5ffetch_5fnb',['ucp_atomic_fetch_nb',['../group___u_c_p___c_o_m_m.html#ga43a1a4a517797eb8c5c96ac8841437de',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fop_5fnbx',['ucp_atomic_op_nbx',['../group___u_c_p___c_o_m_m.html#ga087e2cad02e84cf1230684362562aa46',1,'ucp.h']]], + ['ucp_5fatomic_5fpost',['ucp_atomic_post',['../group___u_c_p___c_o_m_m.html#ga839312fb4de5e786daacb4fa071d61df',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fswap32',['ucp_atomic_swap32',['../group___u_c_p___c_o_m_m.html#ga43118f9d5e6d8fdfa518887218468bb3',1,'ucp_compat.h']]], + ['ucp_5fatomic_5fswap64',['ucp_atomic_swap64',['../group___u_c_p___c_o_m_m.html#gaa2913e345505195a183ccc2583fb4ebc',1,'ucp_compat.h']]], + ['ucp_5fcleanup',['ucp_cleanup',['../group___u_c_p___c_o_n_t_e_x_t.html#gaaa7a90069ad6e0f3e227402db265299e',1,'ucp.h']]], + ['ucp_5fconfig_5fmodify',['ucp_config_modify',['../group___u_c_p___c_o_n_f_i_g.html#ga94828d175f4abd87d48b54f32dc74703',1,'ucp.h']]], + ['ucp_5fconfig_5fprint',['ucp_config_print',['../group___u_c_p___c_o_n_f_i_g.html#ga52f4d762c9f3a61c98fb7ba95a00809e',1,'ucp.h']]], + ['ucp_5fconfig_5fread',['ucp_config_read',['../group___u_c_p___c_o_n_f_i_g.html#gab2a5bd39a60f5326771c7a46f5f93319',1,'ucp.h']]], + ['ucp_5fconfig_5frelease',['ucp_config_release',['../group___u_c_p___c_o_n_f_i_g.html#ga12d1b29c55e927a22de92431efa0d82a',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fquery',['ucp_conn_request_query',['../group___u_c_p___w_o_r_k_e_r.html#ga440c99f2462ba8201280687a76fd8569',1,'ucp.h']]], + ['ucp_5fcontext_5fprint_5finfo',['ucp_context_print_info',['../group___u_c_p___c_o_n_t_e_x_t.html#ga91684cf77b8dc8cbb62af0c3741b36ea',1,'ucp.h']]], + ['ucp_5fcontext_5fquery',['ucp_context_query',['../group___u_c_p___c_o_n_t_e_x_t.html#ga3485fb61663f4cc6f32e801654aedcff',1,'ucp.h']]], + ['ucp_5fdisconnect_5fnb',['ucp_disconnect_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga22cf67f74ae06242cc26e6ca6ecd100b',1,'ucp_compat.h']]], + ['ucp_5fdt_5fcreate_5fgeneric',['ucp_dt_create_generic',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gad786aa1a5250b22d4c35d82801aef254',1,'ucp.h']]], + ['ucp_5fdt_5fdestroy',['ucp_dt_destroy',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga00337159ebd75640d55be501b7fcc5e7',1,'ucp.h']]], + ['ucp_5fdt_5fquery',['ucp_dt_query',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga23b6c6fbfbee7669ec2abb3ee572ac0e',1,'ucp.h']]], + ['ucp_5fep_5fclose_5fnb',['ucp_ep_close_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gaa7293ad4dc72858b2594686d1c553015',1,'ucp_compat.h']]], + ['ucp_5fep_5fclose_5fnbx',['ucp_ep_close_nbx',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga6756b434213a424abb0d542fda1d82a1',1,'ucp.h']]], + ['ucp_5fep_5fcreate',['ucp_ep_create',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga6cc5ffb2ba1b0ccd510848de0a779f7b',1,'ucp.h']]], + ['ucp_5fep_5fdestroy',['ucp_ep_destroy',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gac63b3fe87c001dd965ca42943ea04bb1',1,'ucp_compat.h']]], + ['ucp_5fep_5fevaluate_5fperf',['ucp_ep_evaluate_perf',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga654a8402e9a3d657f5226ac4e8866994',1,'ucp.h']]], + ['ucp_5fep_5fflush',['ucp_ep_flush',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga046d87a26389c7adecd177111a65cd31',1,'ucp_compat.h']]], + ['ucp_5fep_5fflush_5fnb',['ucp_ep_flush_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga599c9b9272bfdd662afaa247d8e4dfd6',1,'ucp_compat.h']]], + ['ucp_5fep_5fflush_5fnbx',['ucp_ep_flush_nbx',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga28d61bf53320bd0f5d741147447251a4',1,'ucp.h']]], + ['ucp_5fep_5fmodify_5fnb',['ucp_ep_modify_nb',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga034aff7bd27e3b932d4bb7b964db759e',1,'ucp_compat.h']]], + ['ucp_5fep_5fprint_5finfo',['ucp_ep_print_info',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gacc9e967b69f48d6223e921831181f3ee',1,'ucp.h']]], + ['ucp_5fep_5fquery',['ucp_ep_query',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga5074a508e2ae53e00d2bd7e728336f30',1,'ucp.h']]], + ['ucp_5fep_5frkey_5funpack',['ucp_ep_rkey_unpack',['../group___u_c_p___m_e_m.html#ga92353d1cb038a4e281f0a1973937079d',1,'ucp.h']]], + ['ucp_5fget',['ucp_get',['../group___u_c_p___c_o_m_m.html#gaf4a465cff6c1691106430564899f6f3e',1,'ucp_compat.h']]], + ['ucp_5fget_5fnb',['ucp_get_nb',['../group___u_c_p___c_o_m_m.html#ga7cb68811f53a69d37fd16e8ddb46e23b',1,'ucp_compat.h']]], + ['ucp_5fget_5fnbi',['ucp_get_nbi',['../group___u_c_p___c_o_m_m.html#gae3597f699227d598651f6630fbd7968b',1,'ucp_compat.h']]], + ['ucp_5fget_5fnbx',['ucp_get_nbx',['../group___u_c_p___c_o_m_m.html#gaa06c6521592661a8123c11426074d880',1,'ucp.h']]], + ['ucp_5fget_5fversion',['ucp_get_version',['../group___u_c_p___c_o_n_t_e_x_t.html#gae57b8eee6087f5e1d056d8075751042e',1,'ucp.h']]], + ['ucp_5fget_5fversion_5fstring',['ucp_get_version_string',['../group___u_c_p___c_o_n_t_e_x_t.html#gad53f3f2fe0e47cf54ac4f41b2687850b',1,'ucp.h']]], + ['ucp_5finit',['ucp_init',['../group___u_c_p___c_o_n_t_e_x_t.html#ga3ad3662ebafac88ec666be4caeb76cb2',1,'ucp.h']]], + ['ucp_5flib_5fquery',['ucp_lib_query',['../group___u_c_p___c_o_n_t_e_x_t.html#ga4f8c11637791304bd7fcc9aceafbb1dd',1,'ucp.h']]], + ['ucp_5flistener_5fcreate',['ucp_listener_create',['../group___u_c_p___w_o_r_k_e_r.html#ga7a8943f89a7b49c1f1abc562fb5178ad',1,'ucp.h']]], + ['ucp_5flistener_5fdestroy',['ucp_listener_destroy',['../group___u_c_p___w_o_r_k_e_r.html#gae45c609cd659bdd0e205d30627b7af21',1,'ucp.h']]], + ['ucp_5flistener_5fquery',['ucp_listener_query',['../group___u_c_p___w_o_r_k_e_r.html#ga785a8cc6adab6c01bb2354a38bcd9928',1,'ucp.h']]], + ['ucp_5flistener_5freject',['ucp_listener_reject',['../group___u_c_p___w_o_r_k_e_r.html#ga1f1620fdbae11ea076875fd6ac644241',1,'ucp.h']]], + ['ucp_5fmem_5fadvise',['ucp_mem_advise',['../group___u_c_p___m_e_m.html#ga455313831b8734fe1a824109c3ffc588',1,'ucp.h']]], + ['ucp_5fmem_5fmap',['ucp_mem_map',['../group___u_c_p___m_e_m.html#ga1af508a609cc7f2cebf4b33f9ee6ac66',1,'ucp.h']]], + ['ucp_5fmem_5fprint_5finfo',['ucp_mem_print_info',['../group___u_c_p___m_e_m.html#ga3240a60d906b2ecf5d0a19acdf13850f',1,'ucp.h']]], + ['ucp_5fmem_5fquery',['ucp_mem_query',['../group___u_c_p___m_e_m.html#ga080c10aaf347682594092d796bbc913f',1,'ucp.h']]], + ['ucp_5fmem_5funmap',['ucp_mem_unmap',['../group___u_c_p___m_e_m.html#gac8bd616375fe05594690b5e0cddd6318',1,'ucp.h']]], + ['ucp_5fmemh_5fbuffer_5frelease',['ucp_memh_buffer_release',['../group___u_c_p___m_e_m.html#gab016c446e78e171c03a2fe11ab5fe48d',1,'ucp.h']]], + ['ucp_5fmemh_5fpack',['ucp_memh_pack',['../group___u_c_p___m_e_m.html#ga8540eb3c5b885dfddbca0e39e00117ad',1,'ucp.h']]], + ['ucp_5fput',['ucp_put',['../group___u_c_p___c_o_m_m.html#ga85b0a27cf8a3239decabad6a9104eb31',1,'ucp_compat.h']]], + ['ucp_5fput_5fnb',['ucp_put_nb',['../group___u_c_p___c_o_m_m.html#ga1ba986b2bde69c215abd5766dbceeb18',1,'ucp_compat.h']]], + ['ucp_5fput_5fnbi',['ucp_put_nbi',['../group___u_c_p___c_o_m_m.html#ga77f3d5def7a77c4ba88f9e1eefa4b7e6',1,'ucp_compat.h']]], + ['ucp_5fput_5fnbx',['ucp_put_nbx',['../group___u_c_p___c_o_m_m.html#ga29e7b9b70b782140e63544b8613a5fe7',1,'ucp.h']]], + ['ucp_5frequest_5falloc',['ucp_request_alloc',['../group___u_c_p___c_o_m_m.html#gac6f75654d74e7e24881252fbff6bb9b2',1,'ucp.h']]], + ['ucp_5frequest_5fcancel',['ucp_request_cancel',['../group___u_c_p___c_o_m_m.html#ga3553f89a61d6b40af4633a2e7c84fc1d',1,'ucp.h']]], + ['ucp_5frequest_5fcheck_5fstatus',['ucp_request_check_status',['../group___u_c_p___c_o_m_m.html#gae082ad7af428645ebe6e469d3d06a757',1,'ucp.h']]], + ['ucp_5frequest_5ffree',['ucp_request_free',['../group___u_c_p___c_o_m_m.html#ga0e8e46f5953d464382b21edef3ec9994',1,'ucp.h']]], + ['ucp_5frequest_5fis_5fcompleted',['ucp_request_is_completed',['../group___u_c_p___c_o_m_m.html#ga432e478b97575b21855074a45d54520d',1,'ucp_compat.h']]], + ['ucp_5frequest_5fquery',['ucp_request_query',['../group___u_c_p___c_o_m_m.html#gafc247802373bbe39e9866745e102a064',1,'ucp.h']]], + ['ucp_5frequest_5frelease',['ucp_request_release',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gaabf569a298946627fbc8d66814c35e68',1,'ucp_compat.h']]], + ['ucp_5frequest_5ftest',['ucp_request_test',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga3802a983138ed27034b7d52026dccb2f',1,'ucp_compat.h']]], + ['ucp_5frkey_5fbuffer_5frelease',['ucp_rkey_buffer_release',['../group___u_c_p___m_e_m.html#ga8bc005f53da015f4a062087e6eb064e9',1,'ucp_compat.h']]], + ['ucp_5frkey_5fdestroy',['ucp_rkey_destroy',['../group___u_c_p___m_e_m.html#gae33d7cc264e0fe1b11e27ae4289fba39',1,'ucp.h']]], + ['ucp_5frkey_5fpack',['ucp_rkey_pack',['../group___u_c_p___m_e_m.html#gadbb6b3ace4ab988cd7660319123407b4',1,'ucp_compat.h']]], + ['ucp_5frkey_5fptr',['ucp_rkey_ptr',['../group___u_c_p___m_e_m.html#ga68f3458805ba15d6a5883219ecd56c1e',1,'ucp.h']]], + ['ucp_5fstream_5fdata_5frelease',['ucp_stream_data_release',['../group___u_c_p___c_o_m_m.html#ga1d1c1c1b2caf4f26c9872e1d708d5f68',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fdata_5fnb',['ucp_stream_recv_data_nb',['../group___u_c_p___c_o_m_m.html#ga47f307f4765eb5410f24ac27986b59d7',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fnb',['ucp_stream_recv_nb',['../group___u_c_p___c_o_m_m.html#gadf3b4504a329a46d2d4ec0a8cec08130',1,'ucp_compat.h']]], + ['ucp_5fstream_5frecv_5fnbx',['ucp_stream_recv_nbx',['../group___u_c_p___c_o_m_m.html#ga30494ce33e63823c81c2c5b3656d25c3',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5frequest_5ftest',['ucp_stream_recv_request_test',['../group___u_c_p___c_o_m_m.html#ga4d8d8823b24cb25dcab8bf44c72fa25e',1,'ucp.h']]], + ['ucp_5fstream_5fsend_5fnb',['ucp_stream_send_nb',['../group___u_c_p___c_o_m_m.html#ga9022ff0ebb56cac81f6ba81bb28f71b3',1,'ucp_compat.h']]], + ['ucp_5fstream_5fsend_5fnbx',['ucp_stream_send_nbx',['../group___u_c_p___c_o_m_m.html#gae9fe6efe6b05e4e78f58bee68c68b252',1,'ucp.h']]], + ['ucp_5fstream_5fworker_5fpoll',['ucp_stream_worker_poll',['../group___u_c_p___w_o_r_k_e_r.html#gaacff2409268fc6620d9a2bca4fa01950',1,'ucp.h']]], + ['ucp_5ftag_5fmsg_5frecv_5fnb',['ucp_tag_msg_recv_nb',['../group___u_c_p___c_o_m_m.html#gac335b3ae4c9577728d9c0f2ecd44c084',1,'ucp_compat.h']]], + ['ucp_5ftag_5fmsg_5frecv_5fnbx',['ucp_tag_msg_recv_nbx',['../group___u_c_p___c_o_m_m.html#ga48c61d44f18362bdaf8fca3122efcea6',1,'ucp.h']]], + ['ucp_5ftag_5fprobe_5fnb',['ucp_tag_probe_nb',['../group___u_c_p___c_o_m_m.html#ga41668f468dc37a7634116b8210815f22',1,'ucp.h']]], + ['ucp_5ftag_5frecv_5fnb',['ucp_tag_recv_nb',['../group___u_c_p___c_o_m_m.html#gaeb24cdfc33dfb2886551b51843aa6304',1,'ucp_compat.h']]], + ['ucp_5ftag_5frecv_5fnbr',['ucp_tag_recv_nbr',['../group___u_c_p___c_o_m_m.html#ga5a86663a4a144fd81d7a4e3378c5edd2',1,'ucp_compat.h']]], + ['ucp_5ftag_5frecv_5fnbx',['ucp_tag_recv_nbx',['../group___u_c_p___c_o_m_m.html#gaa842f8ca8ad1363ed857ab938285a16f',1,'ucp.h']]], + ['ucp_5ftag_5frecv_5frequest_5ftest',['ucp_tag_recv_request_test',['../group___u_c_p___c_o_m_m.html#ga707cbbef8cdcf90fa7cf63c922ef2c7f',1,'ucp.h']]], + ['ucp_5ftag_5fsend_5fnb',['ucp_tag_send_nb',['../group___u_c_p___c_o_m_m.html#gaae7343bd638924e5518041311d5c1dfc',1,'ucp_compat.h']]], + ['ucp_5ftag_5fsend_5fnbr',['ucp_tag_send_nbr',['../group___u_c_p___c_o_m_m.html#gad90aa964e14fef59b4e3bd9120cca669',1,'ucp_compat.h']]], + ['ucp_5ftag_5fsend_5fnbx',['ucp_tag_send_nbx',['../group___u_c_p___c_o_m_m.html#ga8323878b60f426c630d4ff8996ede3cc',1,'ucp.h']]], + ['ucp_5ftag_5fsend_5fsync_5fnb',['ucp_tag_send_sync_nb',['../group___u_c_p___c_o_m_m.html#gabd3e1ccae2ef34463e8313d09d3db17f',1,'ucp_compat.h']]], + ['ucp_5ftag_5fsend_5fsync_5fnbx',['ucp_tag_send_sync_nbx',['../group___u_c_p___c_o_m_m.html#ga0d96a2aac42fe99ce0c79f15dda8bd06',1,'ucp.h']]], + ['ucp_5fworker_5faddress_5fquery',['ucp_worker_address_query',['../group___u_c_p___w_o_r_k_e_r.html#ga0fac7f3d7bf9970e837732557e4277b0',1,'ucp.h']]], + ['ucp_5fworker_5farm',['ucp_worker_arm',['../group___u_c_p___w_a_k_e_u_p.html#gadce97937294aae0f5f599d58d68904d6',1,'ucp.h']]], + ['ucp_5fworker_5fcreate',['ucp_worker_create',['../group___u_c_p___w_o_r_k_e_r.html#ga0aec01ed3dad646ca6cd3814b13054b1',1,'ucp.h']]], + ['ucp_5fworker_5fdestroy',['ucp_worker_destroy',['../group___u_c_p___w_o_r_k_e_r.html#ga6b6c5bf97d16e7fc4b7c815875e92676',1,'ucp.h']]], + ['ucp_5fworker_5ffence',['ucp_worker_fence',['../group___u_c_p___w_o_r_k_e_r.html#ga05b3b5887475966631c62119d64c6182',1,'ucp.h']]], + ['ucp_5fworker_5fflush',['ucp_worker_flush',['../group___u_c_p___w_o_r_k_e_r.html#gae20b8bc9fbbde208ea266490bde4cbcb',1,'ucp_compat.h']]], + ['ucp_5fworker_5fflush_5fnb',['ucp_worker_flush_nb',['../group___u_c_p___w_o_r_k_e_r.html#gac461d1034a3313612243a5829b7e3847',1,'ucp_compat.h']]], + ['ucp_5fworker_5fflush_5fnbx',['ucp_worker_flush_nbx',['../group___u_c_p___w_o_r_k_e_r.html#ga57fedddf88d4b777f5c16b39b5fcf52e',1,'ucp.h']]], + ['ucp_5fworker_5fget_5faddress',['ucp_worker_get_address',['../group___u_c_p___w_o_r_k_e_r.html#ga41aaa5fb8fbd3de50a39b1fda12977cc',1,'ucp_compat.h']]], + ['ucp_5fworker_5fget_5fefd',['ucp_worker_get_efd',['../group___u_c_p___w_a_k_e_u_p.html#gadf849649110fa338fd891548198a578b',1,'ucp.h']]], + ['ucp_5fworker_5fprint_5finfo',['ucp_worker_print_info',['../group___u_c_p___w_o_r_k_e_r.html#gab746c6cccbfe8d25a892eb415bcedd97',1,'ucp.h']]], + ['ucp_5fworker_5fprogress',['ucp_worker_progress',['../group___u_c_p___w_o_r_k_e_r.html#ga340784a8528d4932916651460dc481c0',1,'ucp.h']]], + ['ucp_5fworker_5fquery',['ucp_worker_query',['../group___u_c_p___w_o_r_k_e_r.html#gaab678930b792e328eb4f0a17654e5e42',1,'ucp.h']]], + ['ucp_5fworker_5frelease_5faddress',['ucp_worker_release_address',['../group___u_c_p___w_o_r_k_e_r.html#ga94260829739496267d2c8d86414b863d',1,'ucp.h']]], + ['ucp_5fworker_5fset_5fam_5fhandler',['ucp_worker_set_am_handler',['../group___u_c_p___w_o_r_k_e_r.html#gab8e272749e7a396643caf8775889df4e',1,'ucp_compat.h']]], + ['ucp_5fworker_5fset_5fam_5frecv_5fhandler',['ucp_worker_set_am_recv_handler',['../group___u_c_p___w_o_r_k_e_r.html#ga410d5e90c2abc6997924cbf7dee4a1f3',1,'ucp.h']]], + ['ucp_5fworker_5fsignal',['ucp_worker_signal',['../group___u_c_p___w_a_k_e_u_p.html#ga4f83bf7620a2ea765fb7167c756b8e48',1,'ucp.h']]], + ['ucp_5fworker_5fwait',['ucp_worker_wait',['../group___u_c_p___w_a_k_e_u_p.html#gaa6d1fba4d8a2525b74174a8c344ae9aa',1,'ucp.h']]], + ['ucp_5fworker_5fwait_5fmem',['ucp_worker_wait_mem',['../group___u_c_p___w_a_k_e_u_p.html#ga8b9a2ca2795f083e3b1250d698162aa6',1,'ucp.h']]], + ['ucs_5fasync_5fadd_5ftimer',['ucs_async_add_timer',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga11a624df0bff9513f87b273506a8f711',1,'async_fwd.h']]], + ['ucs_5fasync_5fcontext_5fcreate',['ucs_async_context_create',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga8c3ad862fef1d35af708628d778a5a5b',1,'async_fwd.h']]], + ['ucs_5fasync_5fcontext_5fdestroy',['ucs_async_context_destroy',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga65db07fbee18ab2bd46a738c89ccc8f7',1,'async_fwd.h']]], + ['ucs_5fasync_5fmodify_5fhandler',['ucs_async_modify_handler',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga46ac2384234000408d56065a8e43fc5a',1,'async_fwd.h']]], + ['ucs_5fasync_5fpoll',['ucs_async_poll',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga41fb5f0e0719d9b6d2c07358c6a9e6ae',1,'async_fwd.h']]], + ['ucs_5fasync_5fremove_5fhandler',['ucs_async_remove_handler',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga7253f7d2762b8d288e78d573f9948aef',1,'async_fwd.h']]], + ['ucs_5fasync_5fset_5fevent_5fhandler',['ucs_async_set_event_handler',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga4bd1833c4a212330cbdff7605858819c',1,'async_fwd.h']]], + ['uct_5fcm_5fclient_5fep_5fconn_5fnotify',['uct_cm_client_ep_conn_notify',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga45664fb4113fa1f2ddad4fc181e0d62a',1,'uct.h']]], + ['uct_5fcm_5fclose',['uct_cm_close',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga2d4b7947a338ad8721390f8c292a4dfa',1,'uct.h']]], + ['uct_5fcm_5fconfig_5fread',['uct_cm_config_read',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaec01265a1d6fbbeef49ca3bdb5bbf2b4',1,'uct.h']]], + ['uct_5fcm_5fopen',['uct_cm_open',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa388b4d447f77dbb9dcc45f4fff4e9b9',1,'uct.h']]], + ['uct_5fcm_5fquery',['uct_cm_query',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga4a47044a01e1cefbe7a1fd6a7e9a6857',1,'uct.h']]], + ['uct_5fcompletion_5fupdate_5fstatus',['uct_completion_update_status',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga6d517ca850e8bb367939139b6b24cc87',1,'uct.h']]], + ['uct_5fcomponent_5fquery',['uct_component_query',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga437597d034328ce061df61647add1891',1,'uct.h']]], + ['uct_5fconfig_5fget',['uct_config_get',['../group___u_c_t___c_o_n_t_e_x_t.html#ga711e3a72f282ad7d11d2945ea2dd7b4c',1,'uct.h']]], + ['uct_5fconfig_5fmodify',['uct_config_modify',['../group___u_c_t___c_o_n_t_e_x_t.html#ga00b51bffb44b91b256dd6d6e6e99f98f',1,'uct.h']]], + ['uct_5fconfig_5frelease',['uct_config_release',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga951ea184730bc0b9cf659b1038e999a4',1,'uct.h']]], + ['uct_5fep_5fam_5fbcopy',['uct_ep_am_bcopy',['../group___u_c_t___a_m.html#gae29dad6b69beaf21c19255906742e14d',1,'uct.h']]], + ['uct_5fep_5fam_5fshort',['uct_ep_am_short',['../group___u_c_t___a_m.html#ga0d170165e2d16dccbe45588ebad181f3',1,'uct.h']]], + ['uct_5fep_5fam_5fshort_5fiov',['uct_ep_am_short_iov',['../group___u_c_t___a_m.html#ga54b4c1f0426349ac9fc498736c53c0e7',1,'uct.h']]], + ['uct_5fep_5fam_5fzcopy',['uct_ep_am_zcopy',['../group___u_c_t___a_m.html#gae79d303f72e688df6d49bc44823c2210',1,'uct.h']]], + ['uct_5fep_5fatomic32_5ffetch',['uct_ep_atomic32_fetch',['../group___u_c_t___a_m_o.html#ga2d4fba85b9c7e5d70f09579bddbd91c6',1,'uct.h']]], + ['uct_5fep_5fatomic32_5fpost',['uct_ep_atomic32_post',['../group___u_c_t___a_m_o.html#ga81f59547148ece219e188d4196932e9f',1,'uct.h']]], + ['uct_5fep_5fatomic64_5ffetch',['uct_ep_atomic64_fetch',['../group___u_c_t___a_m_o.html#gae13c6bff2a3e26a133a3d17253fa3428',1,'uct.h']]], + ['uct_5fep_5fatomic64_5fpost',['uct_ep_atomic64_post',['../group___u_c_t___a_m_o.html#ga0e702db435215d222e12186cdcdf737c',1,'uct.h']]], + ['uct_5fep_5fatomic_5fcswap32',['uct_ep_atomic_cswap32',['../group___u_c_t___a_m_o.html#ga8c93ec75fb32dd52cda9cbe628b1077f',1,'uct.h']]], + ['uct_5fep_5fatomic_5fcswap64',['uct_ep_atomic_cswap64',['../group___u_c_t___a_m_o.html#ga84362057b7249456e00c00844fc60290',1,'uct.h']]], + ['uct_5fep_5fcheck',['uct_ep_check',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga45924a1e90cc4747fd23b36a21fc07af',1,'uct.h']]], + ['uct_5fep_5fconnect',['uct_ep_connect',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaec09721914083255f4856da1a9541880',1,'uct.h']]], + ['uct_5fep_5fconnect_5fto_5fep',['uct_ep_connect_to_ep',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga371685403748eb72784fdcb17f9e4bdf',1,'uct.h']]], + ['uct_5fep_5fcreate',['uct_ep_create',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga0b2d38bde2651977c2b476e6e8866acc',1,'uct.h']]], + ['uct_5fep_5fdestroy',['uct_ep_destroy',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac7d6537c7cdacdf24afeafe9c0085163',1,'uct.h']]], + ['uct_5fep_5fdisconnect',['uct_ep_disconnect',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga97049050f63eab653949cceef8fe4ba0',1,'uct.h']]], + ['uct_5fep_5ffence',['uct_ep_fence',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga34719e12b68f8ac890f261018aa6ddb3',1,'uct.h']]], + ['uct_5fep_5fflush',['uct_ep_flush',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2a7a12705b1f4af41792282b59fbc8c2',1,'uct.h']]], + ['uct_5fep_5fget_5faddress',['uct_ep_get_address',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga23773d9d87524cfa6dc6c2d1e094d487',1,'uct.h']]], + ['uct_5fep_5fget_5fbcopy',['uct_ep_get_bcopy',['../group___u_c_t___r_m_a.html#ga82b06eb1ca3be490d39c70a664f12742',1,'uct.h']]], + ['uct_5fep_5fget_5fshort',['uct_ep_get_short',['../group___u_c_t___r_m_a.html#gaed5201516e35d10605e5db1fd0dea674',1,'uct.h']]], + ['uct_5fep_5fget_5fzcopy',['uct_ep_get_zcopy',['../group___u_c_t___r_m_a.html#ga535095dfcb356cfab17c319f7993d53a',1,'uct.h']]], + ['uct_5fep_5fpending_5fadd',['uct_ep_pending_add',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga40f4b92dd4af8da92e138816d57dfece',1,'uct.h']]], + ['uct_5fep_5fpending_5fpurge',['uct_ep_pending_purge',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga11196076031e7c8601241a3adbe1e561',1,'uct.h']]], + ['uct_5fep_5fput_5fbcopy',['uct_ep_put_bcopy',['../group___u_c_t___r_m_a.html#gad0b6f7d4ad48f672e20ff70c8e0faadc',1,'uct.h']]], + ['uct_5fep_5fput_5fshort',['uct_ep_put_short',['../group___u_c_t___r_m_a.html#ga2dfc08ad6547e081cddd7457c19417b1',1,'uct.h']]], + ['uct_5fep_5fput_5fzcopy',['uct_ep_put_zcopy',['../group___u_c_t___r_m_a.html#gaed8c42bab761c97bc0a1516fbf552583',1,'uct.h']]], + ['uct_5fep_5ftag_5feager_5fbcopy',['uct_ep_tag_eager_bcopy',['../group___u_c_t___t_a_g.html#ga08d520cd093b8c661c3f5a3bd863b7c2',1,'uct.h']]], + ['uct_5fep_5ftag_5feager_5fshort',['uct_ep_tag_eager_short',['../group___u_c_t___t_a_g.html#ga5e595ff1d9e77bd5b4abe84fae3ac117',1,'uct.h']]], + ['uct_5fep_5ftag_5feager_5fzcopy',['uct_ep_tag_eager_zcopy',['../group___u_c_t___t_a_g.html#gaab6efb1df0527e53a0c1528cc80f64e4',1,'uct.h']]], + ['uct_5fep_5ftag_5frndv_5fcancel',['uct_ep_tag_rndv_cancel',['../group___u_c_t___t_a_g.html#gaee99ff7af5b69b653977e4db2b5fef8b',1,'uct.h']]], + ['uct_5fep_5ftag_5frndv_5frequest',['uct_ep_tag_rndv_request',['../group___u_c_t___t_a_g.html#ga0b01e46c59a9d713495e4be1cdc6edda',1,'uct.h']]], + ['uct_5fep_5ftag_5frndv_5fzcopy',['uct_ep_tag_rndv_zcopy',['../group___u_c_t___t_a_g.html#ga897e5cfaa4998fdcb36128624635460a',1,'uct.h']]], + ['uct_5fiface_5faccept',['uct_iface_accept',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaadcca33083e95033b161b4f5b1365dc9',1,'uct.h']]], + ['uct_5fiface_5fclose',['uct_iface_close',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga748bd92ba4e62fd86c6b002f9198e2aa',1,'uct.h']]], + ['uct_5fiface_5fevent_5farm',['uct_iface_event_arm',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaf15e9f37d3ce5273153861522a443acf',1,'uct.h']]], + ['uct_5fiface_5fevent_5ffd_5fget',['uct_iface_event_fd_get',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae3aa273c042171bee7292da0d7f774d1',1,'uct.h']]], + ['uct_5fiface_5ffence',['uct_iface_fence',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaa8d42856661922581a683030dd9c8990',1,'uct.h']]], + ['uct_5fiface_5fflush',['uct_iface_flush',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga6cda14e7c03e4f400be46fe97aa23bed',1,'uct.h']]], + ['uct_5fiface_5fget_5faddress',['uct_iface_get_address',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga7da50f02f6cfaaf16f11c620fba9f3b8',1,'uct.h']]], + ['uct_5fiface_5fget_5fdevice_5faddress',['uct_iface_get_device_address',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga67f64f9b1971622ab8e7c8410cc5ab44',1,'uct.h']]], + ['uct_5fiface_5fis_5freachable',['uct_iface_is_reachable',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gadf8829d8c85620cbc1ddfc0f3e8ec9a8',1,'uct.h']]], + ['uct_5fiface_5fmem_5falloc',['uct_iface_mem_alloc',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaa29727b03b244839f0c068d0785f0050',1,'uct.h']]], + ['uct_5fiface_5fmem_5ffree',['uct_iface_mem_free',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga198359eccf0ae85f1c13d4d8509f5532',1,'uct.h']]], + ['uct_5fiface_5fopen',['uct_iface_open',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga031e2c99f03585c0f4c7356c71f0fbb1',1,'uct.h']]], + ['uct_5fiface_5fprogress',['uct_iface_progress',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga56dd7c8b9f4b02ae5da179a3055bcb81',1,'uct.h']]], + ['uct_5fiface_5fprogress_5fdisable',['uct_iface_progress_disable',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga7acfd29e7d7bb8566cfbbf02916bc466',1,'uct.h']]], + ['uct_5fiface_5fprogress_5fenable',['uct_iface_progress_enable',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9f14d2694a06d5ea9e6434a52f8d3ff0',1,'uct.h']]], + ['uct_5fiface_5fquery',['uct_iface_query',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac2ec7cdee76fa075cc65185d7c134bc2',1,'uct.h']]], + ['uct_5fiface_5freject',['uct_iface_reject',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga31c30e35f43121d1715620931860dafe',1,'uct.h']]], + ['uct_5fiface_5frelease_5fdesc',['uct_iface_release_desc',['../group___u_c_t___a_m.html#gac894ed0c24a3481f316945a462d67921',1,'uct.h']]], + ['uct_5fiface_5fset_5fam_5fhandler',['uct_iface_set_am_handler',['../group___u_c_t___a_m.html#ga81dd3f74f8dc8c2c950d932fca0f799e',1,'uct.h']]], + ['uct_5fiface_5fset_5fam_5ftracer',['uct_iface_set_am_tracer',['../group___u_c_t___a_m.html#gaed13079973d867e4bb18be3696216a3a',1,'uct.h']]], + ['uct_5fiface_5ftag_5frecv_5fcancel',['uct_iface_tag_recv_cancel',['../group___u_c_t___t_a_g.html#gad2448d4cf5325dec5aa9c69ae4a025e1',1,'uct.h']]], + ['uct_5fiface_5ftag_5frecv_5fzcopy',['uct_iface_tag_recv_zcopy',['../group___u_c_t___t_a_g.html#gac4ba076343a68f330e5c4659d38bb383',1,'uct.h']]], + ['uct_5flistener_5fcreate',['uct_listener_create',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gadb87c52696a73feae4e1d6e0b9a01911',1,'uct.h']]], + ['uct_5flistener_5fdestroy',['uct_listener_destroy',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8f6a0c420fbca1b5fbe7c1d919757d3f',1,'uct.h']]], + ['uct_5flistener_5fquery',['uct_listener_query',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gae8b7a5fbada262d0f312970f018a916e',1,'uct.h']]], + ['uct_5flistener_5freject',['uct_listener_reject',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa8d1ea690c1600dc334ae6a014110d5e',1,'uct.h']]], + ['uct_5fmd_5fclose',['uct_md_close',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac9ab18f8a48b07429c9987b584fe5574',1,'uct.h']]], + ['uct_5fmd_5fconfig_5fread',['uct_md_config_read',['../group___u_c_t___m_d.html#ga8fd8d3ebc188c9016a179d5678c0a71f',1,'uct.h']]], + ['uct_5fmd_5fdetect_5fmemory_5ftype',['uct_md_detect_memory_type',['../group___u_c_t___m_d.html#gac69d1df8de5ff0b6422af01c3befe67f',1,'uct.h']]], + ['uct_5fmd_5fiface_5fconfig_5fread',['uct_md_iface_config_read',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gace64468ec8d46cbcbcfa6efd74e1148c',1,'uct.h']]], + ['uct_5fmd_5fis_5fsockaddr_5faccessible',['uct_md_is_sockaddr_accessible',['../group___u_c_t___m_d.html#ga9d4cd6b6f3206610cbe83cab3eb1e90d',1,'uct.h']]], + ['uct_5fmd_5fmem_5fadvise',['uct_md_mem_advise',['../group___u_c_t___m_d.html#gaf5f8ef1c6302792c726b294c84ef06c6',1,'uct.h']]], + ['uct_5fmd_5fmem_5fdereg',['uct_md_mem_dereg',['../group___u_c_t___m_d.html#gaf1e9ff0364ec4d2bb05c06a2fab67dd5',1,'uct.h']]], + ['uct_5fmd_5fmem_5fquery',['uct_md_mem_query',['../group___u_c_t___m_d.html#ga7d8cf921f8fd8fba4545c568d495bc8f',1,'uct.h']]], + ['uct_5fmd_5fmem_5freg',['uct_md_mem_reg',['../group___u_c_t___m_d.html#gadafbaee4d8462954361fd2a41c8069e0',1,'uct.h']]], + ['uct_5fmd_5fmkey_5fpack',['uct_md_mkey_pack',['../group___u_c_t___m_d.html#ga91cc404f53a9ef031c7bfbe886c0f414',1,'uct.h']]], + ['uct_5fmd_5fopen',['uct_md_open',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga6254b927d3bfcb9699dbf82f0987b9ce',1,'uct.h']]], + ['uct_5fmd_5fquery',['uct_md_query',['../group___u_c_t___m_d.html#gae7f6d3f902cff0370fe0f07f841898f1',1,'uct.h']]], + ['uct_5fmd_5fquery_5ftl_5fresources',['uct_md_query_tl_resources',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae4572e36e60bf2665e59cc7ef04bb011',1,'uct.h']]], + ['uct_5fmem_5falloc',['uct_mem_alloc',['../group___u_c_t___m_d.html#ga3c91345959561cd033670a9ae527d52f',1,'uct.h']]], + ['uct_5fmem_5ffree',['uct_mem_free',['../group___u_c_t___m_d.html#ga55be17fdb04dcf28373bef0ddf423e94',1,'uct.h']]], + ['uct_5fquery_5fcomponents',['uct_query_components',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac11a18f80ae695355914c32095e5c75d',1,'uct.h']]], + ['uct_5frelease_5fcomponent_5flist',['uct_release_component_list',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gadd4eea4cf8e757f5ddd2e9edb1942dd0',1,'uct.h']]], + ['uct_5frelease_5ftl_5fresource_5flist',['uct_release_tl_resource_list',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga1edfeac896c9ca285ab11580c904b558',1,'uct.h']]], + ['uct_5frkey_5fptr',['uct_rkey_ptr',['../group___u_c_t___m_d.html#ga0d9f92b5814f82afc67c9f4a7ba348e3',1,'uct.h']]], + ['uct_5frkey_5frelease',['uct_rkey_release',['../group___u_c_t___m_d.html#gaea26840237c8c112e0c1505c1423cd30',1,'uct.h']]], + ['uct_5frkey_5funpack',['uct_rkey_unpack',['../group___u_c_t___m_d.html#ga2927741255a1ab0efc82b965f4266efa',1,'uct.h']]], + ['uct_5fworker_5fcreate',['uct_worker_create',['../group___u_c_t___c_o_n_t_e_x_t.html#ga6f21b4dd1dc16d55f4a8e6bf65f8757f',1,'uct.h']]], + ['uct_5fworker_5fdestroy',['uct_worker_destroy',['../group___u_c_t___c_o_n_t_e_x_t.html#ga22608452cb78bb1d3c9253860025c4fd',1,'uct.h']]], + ['uct_5fworker_5fprogress',['uct_worker_progress',['../group___u_c_t___c_o_n_t_e_x_t.html#ga4ec9fae48afd24d7fa7c5537e76b54e5',1,'uct.h']]], + ['uct_5fworker_5fprogress_5fregister_5fsafe',['uct_worker_progress_register_safe',['../group___u_c_t___c_o_n_t_e_x_t.html#ga358ed4a23be49a3c1ace5d78a0b2ee9c',1,'uct.h']]], + ['uct_5fworker_5fprogress_5funregister_5fsafe',['uct_worker_progress_unregister_safe',['../group___u_c_t___c_o_n_t_e_x_t.html#ga2dcbb085b3f94e5a2b6771c4cc7bcbbf',1,'uct.h']]] +]; diff --git a/api/v1.14/html/search/groups_0.html b/api/v1.14/html/search/groups_0.html new file mode 100644 index 00000000000..95cee43d50e --- /dev/null +++ b/api/v1.14/html/search/groups_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/groups_0.js b/api/v1.14/html/search/groups_0.js new file mode 100644 index 00000000000..a4a87b64e45 --- /dev/null +++ b/api/v1.14/html/search/groups_0.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['unified_20communication_20protocol_20_28ucp_29_20api',['Unified Communication Protocol (UCP) API',['../group___u_c_p___a_p_i.html',1,'']]], + ['ucp_20communication_20routines',['UCP Communication routines',['../group___u_c_p___c_o_m_m.html',1,'']]], + ['ucp_20configuration',['UCP Configuration',['../group___u_c_p___c_o_n_f_i_g.html',1,'']]], + ['ucp_20application_20context',['UCP Application Context',['../group___u_c_p___c_o_n_t_e_x_t.html',1,'']]], + ['ucp_20data_20type_20routines',['UCP Data type routines',['../group___u_c_p___d_a_t_a_t_y_p_e.html',1,'']]], + ['ucp_20endpoint',['UCP Endpoint',['../group___u_c_p___e_n_d_p_o_i_n_t.html',1,'']]], + ['ucp_20memory_20routines',['UCP Memory routines',['../group___u_c_p___m_e_m.html',1,'']]], + ['ucp_20wake_2dup_20routines',['UCP Wake-up routines',['../group___u_c_p___w_a_k_e_u_p.html',1,'']]], + ['ucp_20worker',['UCP Worker',['../group___u_c_p___w_o_r_k_e_r.html',1,'']]], + ['unified_20communication_20services_20_28ucs_29_20api',['Unified Communication Services (UCS) API',['../group___u_c_s___a_p_i.html',1,'']]], + ['ucs_20communication_20resource',['UCS Communication Resource',['../group___u_c_s___r_e_s_o_u_r_c_e.html',1,'']]], + ['uct_20active_20messages',['UCT Active messages',['../group___u_c_t___a_m.html',1,'']]], + ['uct_20atomic_20operations',['UCT Atomic operations',['../group___u_c_t___a_m_o.html',1,'']]], + ['unified_20communication_20transport_20_28uct_29_20api',['Unified Communication Transport (UCT) API',['../group___u_c_t___a_p_i.html',1,'']]], + ['uct_20client_2dserver_20operations',['UCT client-server operations',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html',1,'']]], + ['uct_20communication_20context',['UCT Communication Context',['../group___u_c_t___c_o_n_t_e_x_t.html',1,'']]], + ['uct_20memory_20domain',['UCT Memory Domain',['../group___u_c_t___m_d.html',1,'']]], + ['uct_20communication_20resource',['UCT Communication Resource',['../group___u_c_t___r_e_s_o_u_r_c_e.html',1,'']]], + ['uct_20interface_20operations_20and_20capabilities',['UCT interface operations and capabilities',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___c_a_p.html',1,'']]], + ['uct_20interface_20for_20asynchronous_20event_20capabilities',['UCT interface for asynchronous event capabilities',['../group___u_c_t___r_e_s_o_u_r_c_e___i_f_a_c_e___e_v_e_n_t___c_a_p.html',1,'']]], + ['uct_20remote_20memory_20access_20operations',['UCT Remote memory access operations',['../group___u_c_t___r_m_a.html',1,'']]], + ['uct_20tag_20matching_20operations',['UCT Tag matching operations',['../group___u_c_t___t_a_g.html',1,'']]] +]; diff --git a/api/v1.14/html/search/mag_sel.png b/api/v1.14/html/search/mag_sel.png new file mode 100644 index 00000000000..81f6040a209 Binary files /dev/null and b/api/v1.14/html/search/mag_sel.png differ diff --git a/api/v1.14/html/search/nomatches.html b/api/v1.14/html/search/nomatches.html new file mode 100644 index 00000000000..b1ded27e9ad --- /dev/null +++ b/api/v1.14/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
+
No Matches
+
+ + diff --git a/api/v1.14/html/search/pages_0.html b/api/v1.14/html/search/pages_0.html new file mode 100644 index 00000000000..0db7267bae3 --- /dev/null +++ b/api/v1.14/html/search/pages_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/pages_0.js b/api/v1.14/html/search/pages_0.js new file mode 100644 index 00000000000..1c6ab42e96a --- /dev/null +++ b/api/v1.14/html/search/pages_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['conventions_20and_20notations',['Conventions and Notations',['../md_docs_doxygen_conventions.html',1,'']]] +]; diff --git a/api/v1.14/html/search/pages_1.html b/api/v1.14/html/search/pages_1.html new file mode 100644 index 00000000000..2c67a8ef873 --- /dev/null +++ b/api/v1.14/html/search/pages_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/pages_1.js b/api/v1.14/html/search/pages_1.js new file mode 100644 index 00000000000..f8eeb519c65 --- /dev/null +++ b/api/v1.14/html/search/pages_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]], + ['design',['Design',['../md_docs_doxygen_design.html',1,'']]] +]; diff --git a/api/v1.14/html/search/pages_2.html b/api/v1.14/html/search/pages_2.html new file mode 100644 index 00000000000..9cb4325f032 --- /dev/null +++ b/api/v1.14/html/search/pages_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/pages_2.js b/api/v1.14/html/search/pages_2.js new file mode 100644 index 00000000000..e36f6fd915f --- /dev/null +++ b/api/v1.14/html/search/pages_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['introduction',['Introduction',['../md_docs_doxygen_intro.html',1,'']]] +]; diff --git a/api/v1.14/html/search/pages_3.html b/api/v1.14/html/search/pages_3.html new file mode 100644 index 00000000000..118095e25b8 --- /dev/null +++ b/api/v1.14/html/search/pages_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/pages_3.js b/api/v1.14/html/search/pages_3.js new file mode 100644 index 00000000000..93142861644 --- /dev/null +++ b/api/v1.14/html/search/pages_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['preface',['Preface',['../index.html',1,'']]] +]; diff --git a/api/v1.14/html/search/search.css b/api/v1.14/html/search/search.css new file mode 100644 index 00000000000..4d7612ff63e --- /dev/null +++ b/api/v1.14/html/search/search.css @@ -0,0 +1,271 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 8px; + right: 0px; + width: 170px; + z-index: 102; + background-color: white; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:111px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/api/v1.14/html/search/search.js b/api/v1.14/html/search/search.js new file mode 100644 index 00000000000..dedce3bf093 --- /dev/null +++ b/api/v1.14/html/search/search.js @@ -0,0 +1,791 @@ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/typedefs_0.js b/api/v1.14/html/search/typedefs_0.js new file mode 100644 index 00000000000..66825cfac2b --- /dev/null +++ b/api/v1.14/html/search/typedefs_0.js @@ -0,0 +1,131 @@ +var searchData= +[ + ['ucp_5faddress_5ft',['ucp_address_t',['../group___u_c_p___w_o_r_k_e_r.html#ga7d24d2759c1375bf4d2d639e3b701956',1,'ucp_def.h']]], + ['ucp_5fam_5fcallback_5ft',['ucp_am_callback_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gad61809eb62935c7f2e301fcb47c01727',1,'ucp_def.h']]], + ['ucp_5fam_5fhandler_5fparam_5ft',['ucp_am_handler_param_t',['../group___u_c_p___w_o_r_k_e_r.html#ga41064b7ada287b9a2138451ef63ea1e4',1,'ucp.h']]], + ['ucp_5fam_5frecv_5fcallback_5ft',['ucp_am_recv_callback_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gab3adc96222b05543c6cba8c28c16703b',1,'ucp_def.h']]], + ['ucp_5fam_5frecv_5fdata_5fnbx_5fcallback_5ft',['ucp_am_recv_data_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#ga242399982563973351591516039dd74b',1,'ucp_def.h']]], + ['ucp_5fam_5frecv_5fparam_5ft',['ucp_am_recv_param_t',['../group___u_c_p___w_o_r_k_e_r.html#ga435d870d0afb413f0bc780809f1db2ef',1,'ucp_def.h']]], + ['ucp_5fconfig_5ft',['ucp_config_t',['../group___u_c_p___c_o_n_f_i_g.html#gab4fd46edba365347ef3a5b966c324388',1,'ucp_def.h']]], + ['ucp_5fconn_5frequest_5fattr_5ft',['ucp_conn_request_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga36b1aef3732666365e92bbf54e722a4a',1,'ucp.h']]], + ['ucp_5fconn_5frequest_5fh',['ucp_conn_request_h',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga200570bfa7d3a8b50b2a074aaa22d2ed',1,'ucp_def.h']]], + ['ucp_5fcontext_5fattr_5ft',['ucp_context_attr_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga5263d559d602c5e3eae0ee5488c6b831',1,'ucp.h']]], + ['ucp_5fcontext_5fh',['ucp_context_h',['../group___u_c_p___c_o_n_t_e_x_t.html#ga0e40ddc46f0bbe868a13f6ab1b674f76',1,'ucp_def.h']]], + ['ucp_5fdatatype_5fattr_5ft',['ucp_datatype_attr_t',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga673ea56808f7e33828ffb9a7919a8cec',1,'ucp.h']]], + ['ucp_5fdatatype_5ft',['ucp_datatype_t',['../group___u_c_p___c_o_m_m.html#gae461587956dd56a6bc7d67b027845891',1,'ucp_def.h']]], + ['ucp_5fdt_5fiov_5ft',['ucp_dt_iov_t',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gac97bcd5bd29b8a55d79c51678ed4db88',1,'ucp.h']]], + ['ucp_5fep_5fattr_5ft',['ucp_ep_attr_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga5787b42ef3dce490d9341e3f6dbb36e4',1,'ucp.h']]], + ['ucp_5fep_5fh',['ucp_ep_h',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga9bea4e4174ea25f44285d8e7a9fb7adf',1,'ucp_def.h']]], + ['ucp_5fep_5fparams_5ft',['ucp_ep_params_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga359c847069dca9ab0d1a026dc3f5f8cd',1,'ucp_def.h']]], + ['ucp_5fep_5fperf_5fattr_5ffield_5ft',['ucp_ep_perf_attr_field_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga0f74b8a78d11684fa275f5a4958e76d7',1,'ucp.h']]], + ['ucp_5fep_5fperf_5fparam_5ffield_5ft',['ucp_ep_perf_param_field_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#gae4c53d850058ce95a75f0557af64ae9f',1,'ucp.h']]], + ['ucp_5ferr_5fhandler_5fcb_5ft',['ucp_err_handler_cb_t',['../group___u_c_p___c_o_m_m.html#gaf2174ce2b86eb56f6bd4bd62865e87f1',1,'ucp_def.h']]], + ['ucp_5ferr_5fhandler_5ft',['ucp_err_handler_t',['../group___u_c_p___c_o_m_m.html#ga487a20aada512b312bc21757e368120d',1,'ucp_def.h']]], + ['ucp_5fgeneric_5fdt_5fops_5ft',['ucp_generic_dt_ops_t',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaafb26eb4ebfdaa882e13e31da228f418',1,'ucp.h']]], + ['ucp_5flib_5fattr_5ft',['ucp_lib_attr_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga72416704b0138f372f7449f1bf0c0423',1,'ucp.h']]], + ['ucp_5flistener_5faccept_5fcallback_5ft',['ucp_listener_accept_callback_t',['../group___u_c_p___w_o_r_k_e_r.html#ga9a1d61f9a3c1fd97c008dd77ae86c02c',1,'ucp_def.h']]], + ['ucp_5flistener_5faccept_5fhandler_5ft',['ucp_listener_accept_handler_t',['../group___u_c_p___w_o_r_k_e_r.html#gad8b65bba266c848ca394ec48da48bc18',1,'ucp_compat.h']]], + ['ucp_5flistener_5fattr_5ft',['ucp_listener_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga63fa3ed5e0f2c2e8d3d193cd63ce5739',1,'ucp.h']]], + ['ucp_5flistener_5fconn_5fcallback_5ft',['ucp_listener_conn_callback_t',['../group___u_c_p___w_o_r_k_e_r.html#ga389a8cfa253f87eb9d8cc7b8d4747c82',1,'ucp_def.h']]], + ['ucp_5flistener_5fconn_5fhandler_5ft',['ucp_listener_conn_handler_t',['../group___u_c_p___w_o_r_k_e_r.html#ga558f048d85d5600f95c2f733ddc6b3e8',1,'ucp_def.h']]], + ['ucp_5flistener_5fh',['ucp_listener_h',['../group___u_c_p___w_o_r_k_e_r.html#gac0496f7102c43cf339cc760b9e5724a2',1,'ucp_def.h']]], + ['ucp_5flistener_5fparams_5ft',['ucp_listener_params_t',['../group___u_c_p___w_o_r_k_e_r.html#ga2603bc15f79df18099f98b2254afab04',1,'ucp.h']]], + ['ucp_5fmem_5fadvice_5ft',['ucp_mem_advice_t',['../group___u_c_p___m_e_m.html#ga65ad5bf9d9e62766b5133fd80e3af613',1,'ucp.h']]], + ['ucp_5fmem_5fadvise_5fparams_5ft',['ucp_mem_advise_params_t',['../group___u_c_p___m_e_m.html#ga6d5e3085cb8086de3592e15cc19a3b50',1,'ucp.h']]], + ['ucp_5fmem_5fattr_5ft',['ucp_mem_attr_t',['../group___u_c_p___m_e_m.html#ga80089f1bd72dea239fbcb45bd6414c26',1,'ucp_def.h']]], + ['ucp_5fmem_5fh',['ucp_mem_h',['../group___u_c_p___m_e_m.html#gacf61d6417524329d75f239d3f2ea8d3b',1,'ucp_def.h']]], + ['ucp_5fmem_5fmap_5fparams_5ft',['ucp_mem_map_params_t',['../group___u_c_p___m_e_m.html#gaf20a30e6819c75f1a8a8727572661a99',1,'ucp.h']]], + ['ucp_5fmemh_5fbuffer_5frelease_5fparams_5ft',['ucp_memh_buffer_release_params_t',['../group___u_c_p___m_e_m.html#ga0eab5641bbc55da181862a06d4d79101',1,'ucp.h']]], + ['ucp_5fmemh_5fpack_5fparams_5ft',['ucp_memh_pack_params_t',['../group___u_c_p___m_e_m.html#gaa337a1ae88aed5f497d492d9406cf8c0',1,'ucp.h']]], + ['ucp_5fparams_5ft',['ucp_params_t',['../group___u_c_p___c_o_n_f_i_g.html#ga8fb8f3597c9a77edce7d0b765a73b102',1,'ucp.h']]], + ['ucp_5frequest_5fcleanup_5fcallback_5ft',['ucp_request_cleanup_callback_t',['../group___u_c_p___c_o_n_t_e_x_t.html#gaa0db30ca2911587c444d63b6a54b3625',1,'ucp_def.h']]], + ['ucp_5frequest_5finit_5fcallback_5ft',['ucp_request_init_callback_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga0cc0c63694e7e9ee370bbee017aee7fb',1,'ucp_def.h']]], + ['ucp_5frkey_5fh',['ucp_rkey_h',['../group___u_c_p___m_e_m.html#gaefeb4e775983f4313691a6b465e36c24',1,'ucp_def.h']]], + ['ucp_5fsend_5fcallback_5ft',['ucp_send_callback_t',['../group___u_c_p___c_o_m_m.html#gaad905bbbff95166a1e9b0e9743feb677',1,'ucp_def.h']]], + ['ucp_5fsend_5fnbx_5fcallback_5ft',['ucp_send_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#gaee41a74074b37f96dad5b29c9af17faf',1,'ucp_def.h']]], + ['ucp_5fstream_5fpoll_5fep_5ft',['ucp_stream_poll_ep_t',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ga3abf6e5a913e352659bfdeba300acfdd',1,'ucp.h']]], + ['ucp_5fstream_5frecv_5fcallback_5ft',['ucp_stream_recv_callback_t',['../group___u_c_p___c_o_m_m.html#ga6a6234b8497006e26ba02f10ddc0bbf5',1,'ucp_def.h']]], + ['ucp_5fstream_5frecv_5fnbx_5fcallback_5ft',['ucp_stream_recv_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#gaf9e253400533137ba2a5a49a111a9ee8',1,'ucp_def.h']]], + ['ucp_5ftag_5fmessage_5fh',['ucp_tag_message_h',['../group___u_c_p___c_o_m_m.html#ga6a8b5741a4e66d7e890d31ef7cbf88ec',1,'ucp_def.h']]], + ['ucp_5ftag_5frecv_5fcallback_5ft',['ucp_tag_recv_callback_t',['../group___u_c_p___c_o_m_m.html#ga00ac0fe5665d15fab5cd254af9b07758',1,'ucp_def.h']]], + ['ucp_5ftag_5frecv_5finfo_5ft',['ucp_tag_recv_info_t',['../group___u_c_p___c_o_n_t_e_x_t.html#ga118ca6feabfc3b35c7b37002c40ca7e2',1,'ucp_def.h']]], + ['ucp_5ftag_5frecv_5fnbx_5fcallback_5ft',['ucp_tag_recv_nbx_callback_t',['../group___u_c_p___c_o_m_m.html#ga70e110cf7c85ed5f281bd52438488d75',1,'ucp_def.h']]], + ['ucp_5ftag_5ft',['ucp_tag_t',['../group___u_c_p___c_o_m_m.html#ga55df42689ef1f5621eae4d1ffb16856e',1,'ucp_def.h']]], + ['ucp_5fwakeup_5fevent_5ft',['ucp_wakeup_event_t',['../group___u_c_p___w_o_r_k_e_r.html#gae454437b2f4d1bd23dfc8975bbe60c2e',1,'ucp_def.h']]], + ['ucp_5fworker_5faddress_5fattr_5ft',['ucp_worker_address_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga517602b302ea1c754a3c38e8020ac1bb',1,'ucp.h']]], + ['ucp_5fworker_5fattr_5ft',['ucp_worker_attr_t',['../group___u_c_p___w_o_r_k_e_r.html#ga27a9d7a36ee31d7718f6ec2819108d07',1,'ucp.h']]], + ['ucp_5fworker_5fh',['ucp_worker_h',['../group___u_c_p___w_o_r_k_e_r.html#ga5fd52efba31d20fc52055bb19270729f',1,'ucp_def.h']]], + ['ucp_5fworker_5fparams_5ft',['ucp_worker_params_t',['../group___u_c_p___w_o_r_k_e_r.html#ga7aad09f7b71f912abe0b120872a236f2',1,'ucp.h']]], + ['ucs_5fasync_5fevent_5fcb_5ft',['ucs_async_event_cb_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga6175fd675274497a9d714623a6ffba6f',1,'async_fwd.h']]], + ['ucs_5fmemory_5ftype_5ft',['ucs_memory_type_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gaf9af40bd8efcc0aac27a5194deeb1fbf',1,'memory_type.h']]], + ['ucs_5fsock_5faddr_5ft',['ucs_sock_addr_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga1f31d58cb8b110b03a3df3efc04ab3c0',1,'types.h']]], + ['ucs_5fstatus_5fptr_5ft',['ucs_status_ptr_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#gaf4381d25f2fb0cf02f996f3e0729ed62',1,'status.h']]], + ['ucs_5ftime_5ft',['ucs_time_t',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ga69fbc58f4523686b459ee0fff60b5197',1,'time_def.h']]], + ['uct_5fallocated_5fmemory_5ft',['uct_allocated_memory_t',['../group___u_c_t___m_d.html#ga3664a14883bf6f6a16a66ec1e1646708',1,'uct.h']]], + ['uct_5fam_5fcallback_5ft',['uct_am_callback_t',['../group___u_c_t___a_m.html#gaeeaac1f152fc82d237e286a663e83d04',1,'uct_def.h']]], + ['uct_5fam_5ftrace_5ftype_5ft',['uct_am_trace_type_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8d195c0008dbf59eb931504c3b2590fc',1,'uct_def.h']]], + ['uct_5fam_5ftracer_5ft',['uct_am_tracer_t',['../group___u_c_t___a_m.html#gae089079bf0edee87f4f8be3edc0164cb',1,'uct_def.h']]], + ['uct_5fasync_5fevent_5fcb_5ft',['uct_async_event_cb_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gafb7251839b08fac157af1c9b85430e16',1,'uct_def.h']]], + ['uct_5fcm_5fattr_5ft',['uct_cm_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac97ab5f8fc69893d70fd3dc374687a71',1,'uct_def.h']]], + ['uct_5fcm_5fconfig_5ft',['uct_cm_config_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga98237d6d7f9a212449f6469d0d0eefd9',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fargs_5ft',['uct_cm_ep_client_connect_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gac5142a3d24728ed4ee19eb32902b1bfd',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fclient_5fconnect_5fcallback_5ft',['uct_cm_ep_client_connect_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad221f8e9528614b0688ea3097cc0c2bc',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fargs_5ft',['uct_cm_ep_priv_data_pack_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaebc5e64ca3882b5dd5f578fc2c036c89',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fpriv_5fdata_5fpack_5fcallback_5ft',['uct_cm_ep_priv_data_pack_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga4eb772a7b4af18ae62b546bcd85250ef',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fargs_5ft',['uct_cm_ep_resolve_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga34f8c95c45d2eaf614114537746b5030',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fresolve_5fcallback_5ft',['uct_cm_ep_resolve_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gad96e813463556ed4d5e9258b4ceee78d',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fargs_5ft',['uct_cm_ep_server_conn_notify_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaa2951a7f3fa2869d5ebd9a25c145f2bf',1,'uct_def.h']]], + ['uct_5fcm_5fep_5fserver_5fconn_5fnotify_5fcallback_5ft',['uct_cm_ep_server_conn_notify_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaaffce62ed4f37b665a71a88f37cbfec6',1,'uct_def.h']]], + ['uct_5fcm_5fh',['uct_cm_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gab88b0c85922e6c157fae605a42647dd7',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fargs_5ft',['uct_cm_listener_conn_request_args_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8bcad5374a9b68cb65df3f416459f699',1,'uct_def.h']]], + ['uct_5fcm_5flistener_5fconn_5frequest_5fcallback_5ft',['uct_cm_listener_conn_request_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga8c150a87e614379b42283be7e91b0dec',1,'uct_def.h']]], + ['uct_5fcm_5fremote_5fdata_5ft',['uct_cm_remote_data_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga97cd1a740d9f58856642831ae63b8f02',1,'uct_def.h']]], + ['uct_5fcm_5ft',['uct_cm_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaf0ad3383e80500c7b5f1ac9a93ca1525',1,'uct_def.h']]], + ['uct_5fcompletion_5fcallback_5ft',['uct_completion_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gafe8643ddb601908eab1d92ee2f012f8c',1,'uct_def.h']]], + ['uct_5fcompletion_5ft',['uct_completion_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga1c5e511c1cbe1734b317f7688a5cdb90',1,'uct_def.h']]], + ['uct_5fcomponent_5fattr_5ft',['uct_component_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9a4bd39175a7d0777a76529eeae4b860',1,'uct.h']]], + ['uct_5fcomponent_5fh',['uct_component_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga970f9dcfebb42f0209c2c7e23eca99f6',1,'uct_def.h']]], + ['uct_5fconn_5frequest_5fh',['uct_conn_request_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga71c5cb66cb921d62e609d02ca628c90f',1,'uct_def.h']]], + ['uct_5fdevice_5faddr_5ft',['uct_device_addr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac88423ede47b1ecaf895996971cfdf53',1,'uct_def.h']]], + ['uct_5fep_5faddr_5ft',['uct_ep_addr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga808816ad1373f05b9ed7f3432d9f78c6',1,'uct_def.h']]], + ['uct_5fep_5fattr_5ft',['uct_ep_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaad8747fe0969320a445f7b9cba53d50c',1,'uct_def.h']]], + ['uct_5fep_5fconnect_5fparams_5ft',['uct_ep_connect_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaddad06e96eb39d96239d984bfbbbb5c0',1,'uct_def.h']]], + ['uct_5fep_5fdisconnect_5fcb_5ft',['uct_ep_disconnect_cb_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#gaf1b75ee068dfa5fbf7194f999360197a',1,'uct_def.h']]], + ['uct_5fep_5fh',['uct_ep_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gae7298a2b6fdb0e7771868459b10d6b20',1,'uct_def.h']]], + ['uct_5fep_5fparams_5ft',['uct_ep_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaff904a2be18f709176eaec75e4a93251',1,'uct_def.h']]], + ['uct_5ferror_5fhandler_5ft',['uct_error_handler_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga119fc03d8825b540252406cfeb280897',1,'uct_def.h']]], + ['uct_5fiface_5faddr_5ft',['uct_iface_addr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga96d01980a33064e85158b9028073e96c',1,'uct_def.h']]], + ['uct_5fiface_5fattr_5ft',['uct_iface_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga64b102833286ad65e2802002e0f403be',1,'uct_def.h']]], + ['uct_5fiface_5fconfig_5ft',['uct_iface_config_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9769f5a67e7c711eb95abe993f794207',1,'uct_def.h']]], + ['uct_5fiface_5fh',['uct_iface_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gab6decd0363732ac4187bf7aa37883c35',1,'uct_def.h']]], + ['uct_5fiface_5fparams_5ft',['uct_iface_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaff593598b5296991d8081a289f7a7d40',1,'uct_def.h']]], + ['uct_5fiov_5ft',['uct_iov_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac4f8a4a4065c3fa4b5a8d125d0ff3a4e',1,'uct_def.h']]], + ['uct_5flistener_5fattr_5ft',['uct_listener_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gad9c5692c9af9e043f6ee4ad3a15dced6',1,'uct_def.h']]], + ['uct_5flistener_5fh',['uct_listener_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaf88468443532bb4b677b18f038b6f60e',1,'uct_def.h']]], + ['uct_5flistener_5fparams_5ft',['uct_listener_params_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga8d8a6ca0e12e5f1bc54f8c85bda14d59',1,'uct_def.h']]], + ['uct_5fmd_5fattr_5ft',['uct_md_attr_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9e9485d79fdf2f153e05cc5282ab57fd',1,'uct_def.h']]], + ['uct_5fmd_5fconfig_5ft',['uct_md_config_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gabfb351862f43010ab8d5bbdb2495d0ee',1,'uct_def.h']]], + ['uct_5fmd_5fh',['uct_md_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga80ea2d5570f0cef850d315ce72ea8307',1,'uct_def.h']]], + ['uct_5fmd_5fmem_5fattr_5ffield_5ft',['uct_md_mem_attr_field_t',['../group___u_c_t___m_d.html#ga64d71b571e62366b78dceadff144907e',1,'uct.h']]], + ['uct_5fmd_5fmem_5fattr_5ft',['uct_md_mem_attr_t',['../group___u_c_t___m_d.html#gaaa5db32507a7117f0b79185234844900',1,'uct.h']]], + ['uct_5fmd_5fops_5ft',['uct_md_ops_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gac8dbb0c7c104ee4eb86cb299e56a535e',1,'uct_def.h']]], + ['uct_5fmd_5fresource_5fdesc_5ft',['uct_md_resource_desc_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2ebcaffd02c6aec8e3c8a4df237169c9',1,'uct.h']]], + ['uct_5fmd_5ft',['uct_md_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gad8a3d325a68dfb193354ac884f6ddd1d',1,'uct_def.h']]], + ['uct_5fmem_5fh',['uct_mem_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2af4d7f2a70d4ac5eaef079dc68506b8',1,'uct_def.h']]], + ['uct_5fpack_5fcallback_5ft',['uct_pack_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga75c4600da362988f9d4f4d53a294f36b',1,'uct_def.h']]], + ['uct_5fpending_5fcallback_5ft',['uct_pending_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gad282a6c6faf7911791c3978bcfbb3c93',1,'uct_def.h']]], + ['uct_5fpending_5fpurge_5fcallback_5ft',['uct_pending_purge_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga35d6acc042923019e0d5819b72a465f5',1,'uct_def.h']]], + ['uct_5fpending_5freq_5ft',['uct_pending_req_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gaacadb8cfd53f7cafd39fd7f1ae12ec02',1,'uct_def.h']]], + ['uct_5frkey_5fbundle_5ft',['uct_rkey_bundle_t',['../group___u_c_t___m_d.html#gac09ce3a9f1ff378a803acdc13726089e',1,'uct.h']]], + ['uct_5frkey_5fctx_5fh',['uct_rkey_ctx_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#gab9a50bee74dc6d4674fb3800aab19da7',1,'uct_def.h']]], + ['uct_5frkey_5ft',['uct_rkey_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2ccb9c7b57d14f25db9d2e850c348180',1,'uct_def.h']]], + ['uct_5fsockaddr_5fconn_5frequest_5fcallback_5ft',['uct_sockaddr_conn_request_callback_t',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ga18a175c5b28386d6693a35ae432466ef',1,'uct_def.h']]], + ['uct_5ftag_5fcontext_5ft',['uct_tag_context_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga65b6470372d51789a3a96cc5ea317f9d',1,'uct_def.h']]], + ['uct_5ftag_5ft',['uct_tag_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga162e00587cfb6506fe1c038c0f63e2ca',1,'uct_def.h']]], + ['uct_5ftag_5funexp_5feager_5fcb_5ft',['uct_tag_unexp_eager_cb_t',['../group___u_c_t___t_a_g.html#ga4ba3d3c3d35e02d9d6952d927c9b53bd',1,'uct_def.h']]], + ['uct_5ftag_5funexp_5frndv_5fcb_5ft',['uct_tag_unexp_rndv_cb_t',['../group___u_c_t___t_a_g.html#ga8534a90a1887092c91c4bcaf029ac6fd',1,'uct_def.h']]], + ['uct_5ftl_5fresource_5fdesc_5ft',['uct_tl_resource_desc_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga42b500c6ec481992e4edd739bb598d27',1,'uct.h']]], + ['uct_5funpack_5fcallback_5ft',['uct_unpack_callback_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga58d033b0b2eacc05af41af8c07fde4da',1,'uct_def.h']]], + ['uct_5fworker_5fcb_5fid_5ft',['uct_worker_cb_id_t',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga9ec2e5d2c228f55751038dad0691c67b',1,'uct_def.h']]], + ['uct_5fworker_5fh',['uct_worker_h',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ga2c776904a7202aa95ec1ceecfe74f2f9',1,'uct_def.h']]] +]; diff --git a/api/v1.14/html/search/variables_0.html b/api/v1.14/html/search/variables_0.html new file mode 100644 index 00000000000..3835278f0ec --- /dev/null +++ b/api/v1.14/html/search/variables_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_0.js b/api/v1.14/html/search/variables_0.js new file mode 100644 index 00000000000..ca68af90299 --- /dev/null +++ b/api/v1.14/html/search/variables_0.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['accept_5fhandler',['accept_handler',['../group___u_c_p___w_o_r_k_e_r.html#a17487f0e8e3102519d7b512c77efdb1f',1,'ucp_listener_params']]], + ['addr',['addr',['../group___u_c_s___r_e_s_o_u_r_c_e.html#a6294db86dc9327058b8a31cb4af87edb',1,'ucs_sock_addr']]], + ['address',['address',['../group___u_c_p___w_o_r_k_e_r.html#a0863e78ee73ef351311c54d95b6c8fa5',1,'ucp_worker_attr::address()'],['../group___u_c_p___m_e_m.html#acc3761c4bbcca9c1defa742a8db08bbb',1,'ucp_mem_map_params::address()'],['../group___u_c_p___m_e_m.html#ab25f1b439c184a0bfb93eda0c9ceb9f7',1,'ucp_mem_advise_params::address()'],['../group___u_c_p___m_e_m.html#ab9a2b772838f436158ae4e25d8bb21e4',1,'ucp_mem_attr::address()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a8cf5c1599022ccdea5a6d1c97ced3627',1,'ucp_ep_params::address()'],['../group___u_c_t___m_d.html#abd26b6aa42f6d176591f7028317bb887',1,'uct_allocated_memory::address()'],['../group___u_c_t___m_d.html#a5d1be32ed06a9f67bdf686d1c2ec71fc',1,'uct_mem_alloc_params_t::address()']]], + ['address_5fflags',['address_flags',['../group___u_c_p___w_o_r_k_e_r.html#a6c288e285b8c870ec576f1a939519799',1,'ucp_worker_attr']]], + ['address_5flength',['address_length',['../group___u_c_p___w_o_r_k_e_r.html#a7b0ad8e7e5c8d4c4c4931e769ca0fe6f',1,'ucp_worker_attr']]], + ['addrlen',['addrlen',['../group___u_c_s___r_e_s_o_u_r_c_e.html#ac86eaa6362c3345d05c75bb4508ff2f1',1,'ucs_sock_addr']]], + ['advice',['advice',['../group___u_c_p___m_e_m.html#a26833bd101fcb6b4c1024b2975aed5dc',1,'ucp_mem_advise_params']]], + ['alloc_5flength',['alloc_length',['../group___u_c_t___m_d.html#aea0d8373ac6c6d4a17eb15627a10b33f',1,'uct_md_mem_attr']]], + ['am_5falign_5foffset',['am_align_offset',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a119e07151f7cfc215fdf86724cccf1f9',1,'uct_iface_params']]], + ['am_5falignment',['am_alignment',['../group___u_c_p___w_o_r_k_e_r.html#aab378fafe0b474381edbe25023910eb4',1,'ucp_worker_params::am_alignment()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a578571513991a26e7d0331b439968948',1,'uct_iface_params::am_alignment()']]], + ['arg',['arg',['../group___u_c_p___w_o_r_k_e_r.html#ae1670a4926d8528fb1ec1cd3f461f13a',1,'ucp_am_handler_param::arg()'],['../group___u_c_p___w_o_r_k_e_r.html#a05ba12e5d6e6c2b3caef35975644ce85',1,'ucp_listener_accept_handler::arg()'],['../group___u_c_p___c_o_m_m.html#a7e49e1843e1adab5561e5fc2b2e1afb1',1,'ucp_err_handler::arg()'],['../group___u_c_p___w_o_r_k_e_r.html#ae84882c5fbe486b118460662afe395ec',1,'ucp_listener_conn_handler::arg()'],['../namespace_3global_scope_4.html#a58d44a6931525b739c8dd932f369d917',1,'ucs_callbackq_elem::arg()']]], + ['array',['array',['../namespace_3global_scope_4.html#a03eca40e3a768d33654ae128d60df93b',1,'ucs_config_allow_list_t']]], + ['async_5fevent_5farg',['async_event_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a678662e17ae32ca245a45d449ea497f0',1,'uct_iface_params']]], + ['async_5fevent_5fcb',['async_event_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ab15b293126224a46cd25af411f75d39b',1,'uct_iface_params']]] +]; diff --git a/api/v1.14/html/search/variables_1.html b/api/v1.14/html/search/variables_1.html new file mode 100644 index 00000000000..3c65cf264ef --- /dev/null +++ b/api/v1.14/html/search/variables_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_1.js b/api/v1.14/html/search/variables_1.js new file mode 100644 index 00000000000..b3aef2129f7 --- /dev/null +++ b/api/v1.14/html/search/variables_1.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['backlog',['backlog',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a31658aea3303489537ffd68ecbd52f9c',1,'uct_listener_params']]], + ['bandwidth',['bandwidth',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a6a9bab4b671c0d0da959c98a4b3ab7ac',1,'uct_iface_attr']]], + ['base_5faddress',['base_address',['../group___u_c_t___m_d.html#a18678799e605b7caa7cca03e6a5ba368',1,'uct_md_mem_attr']]], + ['buffer',['buffer',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a6cf4c47c33d61c097226b570a470f10c',1,'ucp_dt_iov::buffer()'],['../group___u_c_p___d_a_t_a_t_y_p_e.html#a20f316c0e0e6c5de2e0e1851b9e22c32',1,'ucp_datatype_attr::buffer()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a315a759f0ec81b26fcba7530e43d9149',1,'uct_iov::buffer()']]] +]; diff --git a/api/v1.14/html/search/variables_10.html b/api/v1.14/html/search/variables_10.html new file mode 100644 index 00000000000..52b5fe87f2c --- /dev/null +++ b/api/v1.14/html/search/variables_10.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_10.js b/api/v1.14/html/search/variables_10.js new file mode 100644 index 00000000000..cddb5aa8982 --- /dev/null +++ b/api/v1.14/html/search/variables_10.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['tag_5fconsumed_5fcb',['tag_consumed_cb',['../structuct__tag__context.html#a860b64e8963cbf48fb192045ec2d6689',1,'uct_tag_context']]], + ['tag_5fsender_5fmask',['tag_sender_mask',['../group___u_c_p___c_o_n_f_i_g.html#a82241de012d49800d2b75bd982f9b6b6',1,'ucp_params']]], + ['thread_5fmode',['thread_mode',['../group___u_c_p___c_o_n_t_e_x_t.html#a4bc884428c16540d5d1b1f56881eb80b',1,'ucp_context_attr::thread_mode()'],['../group___u_c_p___w_o_r_k_e_r.html#abf2b8b0c74946fbd1791a21369236678',1,'ucp_worker_attr::thread_mode()'],['../group___u_c_p___w_o_r_k_e_r.html#a790642ea681ddd2b0935ad62f70e4ef1',1,'ucp_worker_params::thread_mode()']]], + ['tl_5fname',['tl_name',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a97eefc21494ace8e0ca2598eb8085001',1,'uct_tl_resource_desc']]], + ['transport_5fname',['transport_name',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a1065b2abc0bf2a05a551059cd1f14ffd',1,'ucp_transport_entry_t']]], + ['transports',['transports',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a2104226ca6c263e31b669a148185181b',1,'ucp_ep_attr']]], + ['type',['type',['../group___u_c_t___m_d.html#ae9d6a73b93fa47d853ff2180fbd273b2',1,'uct_rkey_bundle']]] +]; diff --git a/api/v1.14/html/search/variables_11.html b/api/v1.14/html/search/variables_11.html new file mode 100644 index 00000000000..476f36e0f50 --- /dev/null +++ b/api/v1.14/html/search/variables_11.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_11.js b/api/v1.14/html/search/variables_11.js new file mode 100644 index 00000000000..e42621b6a6c --- /dev/null +++ b/api/v1.14/html/search/variables_11.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['unpack',['unpack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaef4bcfb34731b7f113479b221304b698',1,'ucp_generic_dt_ops']]], + ['user_5fdata',['user_data',['../group___u_c_p___w_o_r_k_e_r.html#a2c277d353e134219265887c4f5339159',1,'ucp_worker_params::user_data()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a202ee8e08e637b9e868387ab294a684c',1,'ucp_stream_poll_ep::user_data()'],['../group___u_c_p___c_o_n_t_e_x_t.html#aa9092d65a2e4e55368ca4f88775c190b',1,'ucp_request_param_t::user_data()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#adaf49e16ee05400f715f432e442336cb',1,'ucp_ep_params::user_data()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a107bb6eec86e0f877d2f256378ea0df8',1,'uct_ep_params::user_data()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8a9d41566f96e942418c48139ccede90',1,'uct_listener_params::user_data()']]] +]; diff --git a/api/v1.14/html/search/variables_12.html b/api/v1.14/html/search/variables_12.html new file mode 100644 index 00000000000..ff143dcb863 --- /dev/null +++ b/api/v1.14/html/search/variables_12.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_12.js b/api/v1.14/html/search/variables_12.js new file mode 100644 index 00000000000..60d3ea64513 --- /dev/null +++ b/api/v1.14/html/search/variables_12.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['worker_5fuid',['worker_uid',['../group___u_c_p___w_o_r_k_e_r.html#a682d3477655dc66072e03530d95239f2',1,'ucp_worker_address_attr']]] +]; diff --git a/api/v1.14/html/search/variables_2.html b/api/v1.14/html/search/variables_2.html new file mode 100644 index 00000000000..7b43e0ac703 --- /dev/null +++ b/api/v1.14/html/search/variables_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_2.js b/api/v1.14/html/search/variables_2.js new file mode 100644 index 00000000000..50877918dac --- /dev/null +++ b/api/v1.14/html/search/variables_2.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['cap',['cap',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aff010f596f41cdceae41e6c46652e1ca',1,'uct_iface_attr::cap()'],['../group___u_c_t___m_d.html#a9f50173ce8d0a0303e7f480fb7e024e8',1,'uct_md_attr::cap()']]], + ['cb',['cb',['../group___u_c_p___c_o_n_t_e_x_t.html#a43bb8fd4782ff74f3d93d4356ce0242d',1,'ucp_request_param_t::cb()'],['../group___u_c_p___w_o_r_k_e_r.html#acd54cdefba3f3f5e145dfe2360485659',1,'ucp_am_handler_param::cb()'],['../group___u_c_p___w_o_r_k_e_r.html#a3017ef77fb807d87b60667df14f6c0b0',1,'ucp_listener_accept_handler::cb()'],['../group___u_c_p___c_o_m_m.html#a0bf3f446a1821a62dd3a300584792e33',1,'ucp_err_handler::cb()'],['../group___u_c_p___w_o_r_k_e_r.html#a55ac5ba9e07ca64d55e22730038a4018',1,'ucp_listener_conn_handler::cb()'],['../namespace_3global_scope_4.html#a57233b5af77231c4fb6e8d0c7a9cf279',1,'ucs_callbackq_elem::cb()']]], + ['client_5faddress',['client_address',['../group___u_c_p___w_o_r_k_e_r.html#a8ca1dc70d395335dc9f8fe20e9de1a0d',1,'ucp_conn_request_attr::client_address()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab9e98cce78462e28a6593a891f2aa3bc',1,'uct_cm_listener_conn_request_args::client_address()']]], + ['client_5fid',['client_id',['../group___u_c_p___w_o_r_k_e_r.html#a41afbbfba922c2bdc4f35e2c4ecfcaa4',1,'ucp_worker_params::client_id()'],['../group___u_c_p___w_o_r_k_e_r.html#aff4d88d6fd3b2613e058bbcf43d0815b',1,'ucp_conn_request_attr::client_id()']]], + ['cm',['cm',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aa8133488ec45605b0c825e66d12ba1a8',1,'uct_ep_params']]], + ['cm_5fresolve_5fcb',['cm_resolve_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a84e49366f4967ac76fad12d27295ec87',1,'uct_ep_params']]], + ['completed_5fcb',['completed_cb',['../structuct__tag__context.html#a8a872809ba82414123000deeb3f8dd2f',1,'uct_tag_context']]], + ['component_5fname',['component_name',['../group___u_c_t___m_d.html#a1f337f217f10d019529e79d9fe60af5c',1,'uct_md_attr']]], + ['conn_5fhandler',['conn_handler',['../group___u_c_p___w_o_r_k_e_r.html#a0694aacde5fff09dc75e556e8116098a',1,'ucp_listener_params']]], + ['conn_5fpriv_5fdata',['conn_priv_data',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3557ea63ebf0f959c06ad78a592cd311',1,'uct_cm_remote_data']]], + ['conn_5fpriv_5fdata_5flength',['conn_priv_data_length',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad68a816000641cdaab8b7bae782c005d',1,'uct_cm_remote_data']]], + ['conn_5frequest',['conn_request',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a9fbba62cd4a470f2bc7c6f7e55fe3db1',1,'ucp_ep_params::conn_request()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad852c3138b06acb342e7f9c78ade8e41',1,'uct_ep_params::conn_request()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#aec2a2194a329ef66262756de423a3cb2',1,'uct_cm_listener_conn_request_args::conn_request()']]], + ['conn_5frequest_5fcb',['conn_request_cb',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a84a1de42f58965886c5d457480be3b2d',1,'uct_listener_params']]], + ['count',['count',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a03dd4423d8570e5b33af6a2f2a4c164e',1,'ucp_datatype_attr::count()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ac80f9b64f46a8a3a9de6cb0b121667ab',1,'uct_completion::count()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#addb247a8d80907156df00159bbafcda5',1,'uct_iov::count()']]], + ['cpu_5fmask',['cpu_mask',['../group___u_c_p___w_o_r_k_e_r.html#afc8f70f3ff12f36ea34ad40ff12de61e',1,'ucp_worker_params::cpu_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7093f64ec5efe2f1c3833dbe90b9099a',1,'uct_iface_params::cpu_mask()']]] +]; diff --git a/api/v1.14/html/search/variables_3.html b/api/v1.14/html/search/variables_3.html new file mode 100644 index 00000000000..ea0392dfe36 --- /dev/null +++ b/api/v1.14/html/search/variables_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_3.js b/api/v1.14/html/search/variables_3.js new file mode 100644 index 00000000000..b9db35d7110 --- /dev/null +++ b/api/v1.14/html/search/variables_3.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['datatype',['datatype',['../group___u_c_p___c_o_n_t_e_x_t.html#a3988d603154f90eb5405785cac62b65f',1,'ucp_request_param_t']]], + ['debug_5fstring',['debug_string',['../group___u_c_p___c_o_m_m.html#aa284657c27e1a8d6d2653f12cfb61bc5',1,'ucp_request_attr_t']]], + ['debug_5fstring_5fsize',['debug_string_size',['../group___u_c_p___c_o_m_m.html#a871b3929bfe0b97d249016e57fd2fdd7',1,'ucp_request_attr_t']]], + ['dedicated',['dedicated',['../namespace_3global_scope_4.html#ab415588ec7332c0264ac81d883dd7a8c',1,'uct_ppn_bandwidth']]], + ['dev_5faddr',['dev_addr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a273d48d73a6813f2fe097026d739e9d9',1,'uct_ep_params::dev_addr()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ada382f435e44b388e3e29b16a04c3808',1,'uct_cm_remote_data::dev_addr()']]], + ['dev_5faddr_5flength',['dev_addr_length',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a05768f24babff9b522b4845dc2672c55',1,'uct_cm_remote_data']]], + ['dev_5fname',['dev_name',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a19260a4faff281f45363008cbcaa0f41',1,'uct_tl_resource_desc::dev_name()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a10c637e00793a55862826870bfe6499d',1,'uct_cm_ep_priv_data_pack_args::dev_name()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af750fc4d3be08d8dcd81f452b1ba5ab4',1,'uct_cm_ep_resolve_args::dev_name()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a718770a6c8d147fadd63490c029de6d2',1,'uct_cm_listener_conn_request_args::dev_name()']]], + ['dev_5fnum_5fpaths',['dev_num_paths',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ac9c279de0e13a96a683baf04d3c40c46',1,'uct_iface_attr']]], + ['dev_5ftype',['dev_type',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a83b6513b96f2a97a82dcd3ab751c996a',1,'uct_tl_resource_desc']]], + ['device_5faddr_5flen',['device_addr_len',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a150fb2fb81e47e2a97571147cdc1647e',1,'uct_iface_attr']]], + ['device_5fname',['device_name',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a5a1ae736a47936285f9cf51ad61b0821',1,'ucp_transport_entry_t']]], + ['disconnect_5fcb',['disconnect_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ac270000f4e5a1bbcba955098ea7e8e6a',1,'uct_ep_params']]], + ['dmabuf_5ffd',['dmabuf_fd',['../group___u_c_t___m_d.html#a84fd9cd1ae1fcdbaa0bd6e5cf8ac32a5',1,'uct_md_mem_attr']]], + ['dmabuf_5foffset',['dmabuf_offset',['../group___u_c_t___m_d.html#aa91e5831a71cbe0b19c274178cbb1353',1,'uct_md_mem_attr']]] +]; diff --git a/api/v1.14/html/search/variables_4.html b/api/v1.14/html/search/variables_4.html new file mode 100644 index 00000000000..1ed95cb60c9 --- /dev/null +++ b/api/v1.14/html/search/variables_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_4.js b/api/v1.14/html/search/variables_4.js new file mode 100644 index 00000000000..c55b474d3b1 --- /dev/null +++ b/api/v1.14/html/search/variables_4.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['eager_5farg',['eager_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7c6b1ea224405a00438306212d30a172',1,'uct_iface_params']]], + ['eager_5fcb',['eager_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3e70569e1bf8a8d62fbc686dd147fd56',1,'uct_iface_params']]], + ['entries',['entries',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a4603a2147c2627572889484eeed7a32e',1,'ucp_transports_t']]], + ['entry_5fsize',['entry_size',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a0f09e5a459259f70ee7644f62daa2adc',1,'ucp_transports_t']]], + ['ep',['ep',['../group___u_c_p___e_n_d_p_o_i_n_t.html#aa9703a325b9dc242facae719f6cef8a7',1,'ucp_stream_poll_ep']]], + ['ep_5faddr_5flen',['ep_addr_len',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a70955f4d39111b0a48c85e0ff65768a0',1,'uct_iface_attr']]], + ['err_5fhandler',['err_handler',['../group___u_c_p___e_n_d_p_o_i_n_t.html#aaf329de9e2b45311099cee8c9df43a20',1,'ucp_ep_params::err_handler()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#afc90f76dc754aa478af524ac7c9d3f51',1,'uct_iface_params::err_handler()']]], + ['err_5fhandler_5farg',['err_handler_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#abd1425d7ce0507acc97361abc56ea66d',1,'uct_iface_params']]], + ['err_5fhandler_5fflags',['err_handler_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a01b7ef6558dbe6f91ac5c59b63d5e0dd',1,'uct_iface_params']]], + ['err_5fmode',['err_mode',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a50ce29893509695caa5b70ab4525a4d6',1,'ucp_ep_params']]], + ['estimated_5fnum_5feps',['estimated_num_eps',['../group___u_c_p___c_o_n_f_i_g.html#a5881757ea71d8c3ff7c15632a6cbd699',1,'ucp_params']]], + ['estimated_5fnum_5fppn',['estimated_num_ppn',['../group___u_c_p___c_o_n_f_i_g.html#ab5966a27f9f4cf476560f9c87ac839cc',1,'ucp_params']]], + ['estimated_5ftime',['estimated_time',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ac8864d77a5f8d333c2de912ad621626a',1,'ucp_ep_evaluate_perf_attr_t']]], + ['event_5ffd',['event_fd',['../group___u_c_p___w_o_r_k_e_r.html#aaeaf0e7ec196ed72ee2b52183f8d1d7d',1,'ucp_worker_params']]], + ['events',['events',['../group___u_c_p___w_o_r_k_e_r.html#a89b9add865222b57caee81874704ba89',1,'ucp_worker_params']]], + ['exported_5fmemh_5fbuffer',['exported_memh_buffer',['../group___u_c_p___m_e_m.html#af4b12bd23e90295c7503e6dc19063a6b',1,'ucp_mem_map_params']]] +]; diff --git a/api/v1.14/html/search/variables_5.html b/api/v1.14/html/search/variables_5.html new file mode 100644 index 00000000000..ecc883b5cc0 --- /dev/null +++ b/api/v1.14/html/search/variables_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_5.js b/api/v1.14/html/search/variables_5.js new file mode 100644 index 00000000000..18810c85c93 --- /dev/null +++ b/api/v1.14/html/search/variables_5.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['fast_5felems',['fast_elems',['../namespace_3global_scope_4.html#a00e13bcee0aa60124620ed02e5cd9116',1,'ucs_callbackq']]], + ['features',['features',['../group___u_c_p___c_o_n_f_i_g.html#afe7ed2a6c6ceb48e18a04f524d844e67',1,'ucp_params::features()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a967dbb2a49191e0b028f7058938293c6',1,'uct_iface_params::features()']]], + ['field_5fmask',['field_mask',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a416b16fac9ac4cc99a06833eb6dbdfa9',1,'ucp_datatype_attr::field_mask()'],['../group___u_c_p___c_o_n_f_i_g.html#a62d432cd22de13ccc9bb12edeb9c566b',1,'ucp_params::field_mask()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a529751be1cb45aff76dde0e5bf22b6d9',1,'ucp_lib_attr::field_mask()'],['../group___u_c_p___c_o_n_t_e_x_t.html#ae4603d33274d3dd0bf41e1d759513601',1,'ucp_context_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#af0f34f82bba00221aa22ec54fa5efc0f',1,'ucp_worker_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#a33863ec848e47f79d2e14181fe2aa921',1,'ucp_worker_params::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#a596a9aee8bfbd1c232c6d63549c75f08',1,'ucp_worker_address_attr::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#afffe0975a57573bd318e72e59bd53957',1,'ucp_ep_evaluate_perf_param_t::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a3506b654e12be644d0ffe96368106142',1,'ucp_ep_evaluate_perf_attr_t::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#aaaa6353f56fd585d7c83c363380703f4',1,'ucp_listener_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#ad6a97d8268992c34631ac773a6c2148b',1,'ucp_conn_request_attr::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#afb01e3b0d3c0a04cef0cde4f849fcc1d',1,'ucp_listener_params::field_mask()'],['../group___u_c_p___m_e_m.html#aaeaeceb96d57c6cd5048abeda3fcb87f',1,'ucp_mem_map_params::field_mask()'],['../group___u_c_p___c_o_m_m.html#a311396d670dcb5ca9941dc17a8ad23d7',1,'ucp_request_attr_t::field_mask()'],['../group___u_c_p___w_o_r_k_e_r.html#a8f31d53e411769961286865cb9332f6f',1,'ucp_am_handler_param::field_mask()'],['../group___u_c_p___m_e_m.html#a01c09d6fdafcd62e733cece26166e036',1,'ucp_mem_advise_params::field_mask()'],['../group___u_c_p___m_e_m.html#aafd1c1f51c5170b30695d9f73aad1f99',1,'ucp_memh_pack_params::field_mask()'],['../group___u_c_p___m_e_m.html#a29dab951ef791f596be6a08e7fc88cb6',1,'ucp_memh_buffer_release_params::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a385c4a4337266da2a874e5ff533fbab2',1,'ucp_ep_attr::field_mask()'],['../group___u_c_p___m_e_m.html#ac2b9b68d716c78b3750f50f599259e66',1,'ucp_mem_attr::field_mask()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#ab7b3f3ba1d402a621b8ea708dcf2387b',1,'ucp_ep_params::field_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad95df67b474d3f51629e0a6d0ee2537e',1,'uct_component_attr::field_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a9e1d45a55b7e9629eb548f27bea940a0',1,'uct_iface_params::field_mask()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a9c1ea4678d33fd3f741856135ad61d23',1,'uct_ep_params::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a360893687dea33e2451afc89b89cf858',1,'uct_ep_connect_params::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a384bf8b975a0d90b7117f4e393684e3d',1,'uct_cm_attr::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abd499e7b852c6af527c8db5a010040b6',1,'uct_listener_attr::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2106149ec63faa5e1aebe7c7b1f941d6',1,'uct_listener_params::field_mask()'],['../group___u_c_t___m_d.html#a95cf319a4733fed89f7b52b66f82f84a',1,'uct_md_mem_attr::field_mask()'],['../group___u_c_t___m_d.html#ab06683bb31a585ea60b85f6f0f3126c8',1,'uct_mem_alloc_params_t::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a2c613c2ce5d4a428c87a0d83849875ca',1,'uct_cm_ep_priv_data_pack_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#abca562cc9e4c45a606ae464815d6cf1a',1,'uct_cm_ep_resolve_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#af27cfe2f1146f9e7f8481d192728640e',1,'uct_cm_remote_data::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ad79f7025c8f43a961b3f8d0501b45188',1,'uct_cm_listener_conn_request_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a07453861a47b7c717f6e89356f75398e',1,'uct_cm_ep_client_connect_args::field_mask()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a96b97f088ce727e04b1de822227b3283',1,'uct_cm_ep_server_conn_notify_args::field_mask()']]], + ['file_5ffilter',['file_filter',['../namespace_3global_scope_4.html#a24ae3d6f63dc62e024f4dc9b3af519d2',1,'ucs_log_component_config']]], + ['finish',['finish',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga09ee4ed178f4c27feec4e37f52a8e17b',1,'ucp_generic_dt_ops']]], + ['flags',['flags',['../group___u_c_p___w_o_r_k_e_r.html#adbd9725024f5138a693196f11dab124c',1,'ucp_worker_params::flags()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a1e761ffd7b8edf7399ab497600200266',1,'ucp_stream_poll_ep::flags()'],['../group___u_c_p___m_e_m.html#a668567560d65f2e0458159d444fb89ca',1,'ucp_mem_map_params::flags()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a55a8ff2559470c5def6077a86ee9d898',1,'ucp_request_param_t::flags()'],['../group___u_c_p___w_o_r_k_e_r.html#a061115b2dc01fb803ae8082bd41f8730',1,'ucp_am_handler_param::flags()'],['../group___u_c_p___m_e_m.html#a3e9ba8e33dd1daf74e341dee2abacff7',1,'ucp_memh_pack_params::flags()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a9bb65021187347fe311535857e19e6c3',1,'ucp_ep_params::flags()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad2800e9666be0be84926f768eac792a2',1,'uct_component_attr::flags()'],['../group___u_c_t___m_d.html#a8180ccc5d99649919a9061c9ebb2504f',1,'uct_mem_alloc_params_t::flags()'],['../namespace_3global_scope_4.html#a3a0d3c938fef66985c8cf44071d23fd6',1,'ucs_callbackq_elem::flags()']]], + ['func',['func',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a34d9a5e03c0d9199a2d540f1a2cee5a2',1,'uct_completion::func()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a638accaa60c4c3f373c6d12c2ea74c6c',1,'uct_pending_req::func()']]] +]; diff --git a/api/v1.14/html/search/variables_6.html b/api/v1.14/html/search/variables_6.html new file mode 100644 index 00000000000..0c1a66babfe --- /dev/null +++ b/api/v1.14/html/search/variables_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_6.js b/api/v1.14/html/search/variables_6.js new file mode 100644 index 00000000000..76993ce92a2 --- /dev/null +++ b/api/v1.14/html/search/variables_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['handle',['handle',['../group___u_c_t___m_d.html#ab42e33b02da0cc7023495793fae7f569',1,'uct_rkey_bundle']]] +]; diff --git a/api/v1.14/html/search/variables_7.html b/api/v1.14/html/search/variables_7.html new file mode 100644 index 00000000000..e0da2ef5b38 --- /dev/null +++ b/api/v1.14/html/search/variables_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_7.js b/api/v1.14/html/search/variables_7.js new file mode 100644 index 00000000000..a399633985b --- /dev/null +++ b/api/v1.14/html/search/variables_7.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['id',['id',['../group___u_c_p___w_o_r_k_e_r.html#ad0c6157f387e18cb4d92a37a638274af',1,'ucp_am_handler_param::id()'],['../namespace_3global_scope_4.html#a12ff9e4e3560d4371a71e0549a6237d4',1,'ucs_callbackq_elem::id()']]], + ['iface',['iface',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a21e3628c5ffcafcdeb732f4f9687aa30',1,'uct_ep_params']]], + ['iface_5faddr',['iface_addr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ae8c9ada98be19a83ab9cd2af30203d5f',1,'uct_ep_params']]], + ['iface_5faddr_5flen',['iface_addr_len',['../group___u_c_t___r_e_s_o_u_r_c_e.html#adaeded4e728f80628ff6d29eeae7a5b0',1,'uct_iface_attr']]] +]; diff --git a/api/v1.14/html/search/variables_8.html b/api/v1.14/html/search/variables_8.html new file mode 100644 index 00000000000..0c3d1df33f7 --- /dev/null +++ b/api/v1.14/html/search/variables_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_8.js b/api/v1.14/html/search/variables_8.js new file mode 100644 index 00000000000..c69ef5080af --- /dev/null +++ b/api/v1.14/html/search/variables_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['keepalive_5finterval',['keepalive_interval',['../group___u_c_t___r_e_s_o_u_r_c_e.html#afbbbea17089ee8ff5ef0ef6ef3199cfe',1,'uct_iface_params']]] +]; diff --git a/api/v1.14/html/search/variables_9.html b/api/v1.14/html/search/variables_9.html new file mode 100644 index 00000000000..e14a1071e32 --- /dev/null +++ b/api/v1.14/html/search/variables_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_9.js b/api/v1.14/html/search/variables_9.js new file mode 100644 index 00000000000..e5d6df31224 --- /dev/null +++ b/api/v1.14/html/search/variables_9.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['latency',['latency',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ace9cf2c31674223b000dff0e72c5d533',1,'uct_iface_attr']]], + ['length',['length',['../group___u_c_p___d_a_t_a_t_y_p_e.html#a776d38e0b127efb673685644b6816663',1,'ucp_dt_iov::length()'],['../group___u_c_p___m_e_m.html#a36d735fe974dd85677474c028edb2af8',1,'ucp_mem_map_params::length()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a6fd83122b93c677e702dc37b39e8351b',1,'ucp_tag_recv_info::length()'],['../group___u_c_p___m_e_m.html#a33e763e90d0cc7aad526a69dee8ef900',1,'ucp_mem_advise_params::length()'],['../group___u_c_p___m_e_m.html#ae807002e05a4a269a74c767e23f49fa8',1,'ucp_mem_attr::length()'],['../group___u_c_t___m_d.html#ae867afdf079a09edbbb03134e9d32489',1,'uct_allocated_memory::length()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#ad00b6e55c209c6abc87b091f4c776cd5',1,'uct_iov::length()']]], + ['listen_5fsockaddr',['listen_sockaddr',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3a5bb921af4157bc96d39aa580ff978f',1,'uct_iface_attr']]], + ['local_5fcpus',['local_cpus',['../group___u_c_t___m_d.html#aade634758ea5ea9fc7f64b17d66507d7',1,'uct_md_attr']]], + ['local_5fsockaddr',['local_sockaddr',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ae54665498f1f7c019e716e7bf9d56531',1,'ucp_ep_attr::local_sockaddr()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#ac7e00eea58053f718b67d92236c7a4b9',1,'ucp_ep_params::local_sockaddr()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#acd106a47629c2dffb844fbdb15a050f6',1,'uct_ep_params::local_sockaddr()']]], + ['log_5flevel',['log_level',['../namespace_3global_scope_4.html#ae279af7e4a426fe21bde0e83a2c423ae',1,'ucs_log_component_config']]] +]; diff --git a/api/v1.14/html/search/variables_a.html b/api/v1.14/html/search/variables_a.html new file mode 100644 index 00000000000..4e38be7cbfc --- /dev/null +++ b/api/v1.14/html/search/variables_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_a.js b/api/v1.14/html/search/variables_a.js new file mode 100644 index 00000000000..ab590f144ac --- /dev/null +++ b/api/v1.14/html/search/variables_a.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['max_5fam_5fheader',['max_am_header',['../group___u_c_p___w_o_r_k_e_r.html#a7678aa8d4fb18b0d6e2a0276b03e2cb4',1,'ucp_worker_attr']]], + ['max_5fconn_5fpriv',['max_conn_priv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a5612c3ad1e7a46dd6add669e32364424',1,'uct_iface_attr::max_conn_priv()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adb462d4f30c639f7fb5a8a7d9702ddcf',1,'uct_cm_attr::max_conn_priv()']]], + ['max_5fdebug_5fstring',['max_debug_string',['../group___u_c_p___w_o_r_k_e_r.html#a79406f6545efcaefffaa34ca99bfdc04',1,'ucp_worker_attr']]], + ['max_5fnum_5feps',['max_num_eps',['../group___u_c_t___r_e_s_o_u_r_c_e.html#af6baead12f87707af1b3e56024b2b2e5',1,'uct_iface_attr']]], + ['max_5fthread_5flevel',['max_thread_level',['../group___u_c_p___c_o_n_t_e_x_t.html#a3cfd1d293ca29602ae799f7c52607c86',1,'ucp_lib_attr']]], + ['md',['md',['../group___u_c_t___m_d.html#afdf7da800a504f0da8f59874d9b71823',1,'uct_allocated_memory']]], + ['md_5fname',['md_name',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a44245b18bf7151a4bde8cb4c0112f8cb',1,'uct_md_resource_desc']]], + ['md_5fresource_5fcount',['md_resource_count',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a4add45e93acd44e434624726caaf9efb',1,'uct_component_attr']]], + ['md_5fresources',['md_resources',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a75c51f7e16d827cc4c848016f5365404',1,'uct_component_attr']]], + ['mds',['mds',['../group___u_c_t___m_d.html#a611c24b16eb6131e02ccffe37fbaaa97',1,'uct_mem_alloc_params_t']]], + ['mem_5ftype',['mem_type',['../group___u_c_p___c_o_m_m.html#a86e23d8d22c973be0f86ea56adfd5678',1,'ucp_request_attr_t::mem_type()'],['../group___u_c_p___m_e_m.html#ac88b3fb764dd2af1a77bbe90161b2896',1,'ucp_mem_attr::mem_type()'],['../group___u_c_t___m_d.html#a9b20dd26a01412d61bea8f5cc4ee02a2',1,'uct_md_mem_attr::mem_type()'],['../group___u_c_t___m_d.html#ae6002ec224af4efa796246bfce7180fd',1,'uct_allocated_memory::mem_type()'],['../group___u_c_t___m_d.html#ac6a68b6fb669135688c594a58a6e3955',1,'uct_mem_alloc_params_t::mem_type()']]], + ['memh',['memh',['../group___u_c_p___c_o_n_t_e_x_t.html#a815bd876629909195b15c6b246de2900',1,'ucp_request_param_t::memh()'],['../group___u_c_t___m_d.html#a4b9171caf237f0f2884d548c395e47ea',1,'uct_allocated_memory::memh()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a9a24e4be8303ebd6906bcaff37ab31f7',1,'uct_iov::memh()']]], + ['memory_5ftype',['memory_type',['../group___u_c_p___m_e_m.html#a71916e12e0fa7706355965de2edd7fc9',1,'ucp_mem_map_params::memory_type()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a52b53447384778b16b3b91d6abeb0f86',1,'ucp_request_param_t::memory_type()']]], + ['memory_5ftypes',['memory_types',['../group___u_c_p___c_o_n_t_e_x_t.html#a59917e3a7e709c62e77d0acabbb0a24d',1,'ucp_context_attr']]], + ['message_5fsize',['message_size',['../group___u_c_p___e_n_d_p_o_i_n_t.html#ac6bc2d095c3c631324646cd9ac6a5a0f',1,'ucp_ep_evaluate_perf_param_t']]], + ['method',['method',['../group___u_c_t___m_d.html#ac0c1c5a5cd287f176e81650816138a55',1,'uct_allocated_memory']]], + ['mode',['mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7fa862d179a7605eef34de73e11869fe',1,'uct_iface_params::mode()'],['../namespace_3global_scope_4.html#a080bacced54b2014f148e933d4dc3347',1,'ucs_config_allow_list_t::mode()']]], + ['mt_5fworkers_5fshared',['mt_workers_shared',['../group___u_c_p___c_o_n_f_i_g.html#ac81f2d8a179df5fd39786a4b08b26faf',1,'ucp_params']]] +]; diff --git a/api/v1.14/html/search/variables_b.html b/api/v1.14/html/search/variables_b.html new file mode 100644 index 00000000000..c98ef41d0a9 --- /dev/null +++ b/api/v1.14/html/search/variables_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_b.js b/api/v1.14/html/search/variables_b.js new file mode 100644 index 00000000000..9ea5d8b1867 --- /dev/null +++ b/api/v1.14/html/search/variables_b.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['name',['name',['../group___u_c_p___c_o_n_f_i_g.html#ac1aa15f430f0f273ff4f6055f9cfdea2',1,'ucp_params::name()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a958c850cc721fdadeae598928bbc8270',1,'ucp_context_attr::name()'],['../group___u_c_p___w_o_r_k_e_r.html#a3123aa88fefa33c972da4c2bda3bebee',1,'ucp_worker_attr::name()'],['../group___u_c_p___w_o_r_k_e_r.html#a7ea9a6700ec1393aaa95c4b1e1df04e1',1,'ucp_worker_params::name()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#acdaee980b44ce00d608c3b9812049db6',1,'ucp_ep_attr::name()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#a2434487b2597678b8b8c6a6b6fdd11ac',1,'ucp_ep_params::name()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a4d186d55814dbe82c4403564d38d084e',1,'uct_component_attr::name()'],['../group___u_c_t___m_d.html#ad67ee098d7dff61b637e20d67dc184ec',1,'uct_mem_alloc_params_t::name()'],['../namespace_3global_scope_4.html#ad3c3436563841e129767778aae615f8f',1,'ucs_log_component_config::name()']]], + ['num_5fentries',['num_entries',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a21eabc3b6df3b0c6964de56ab7784304',1,'ucp_transports_t']]] +]; diff --git a/api/v1.14/html/search/variables_c.html b/api/v1.14/html/search/variables_c.html new file mode 100644 index 00000000000..d5f444969d4 --- /dev/null +++ b/api/v1.14/html/search/variables_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_c.js b/api/v1.14/html/search/variables_c.js new file mode 100644 index 00000000000..2945990b2d7 --- /dev/null +++ b/api/v1.14/html/search/variables_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['op_5fattr_5fmask',['op_attr_mask',['../group___u_c_p___c_o_n_t_e_x_t.html#a97e9444548efb351db6a07130fb69c28',1,'ucp_request_param_t']]], + ['open_5fmode',['open_mode',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7db3b0fb2bbde6b4625ad5a6c5e1a043',1,'uct_iface_params']]], + ['overhead',['overhead',['../group___u_c_t___r_e_s_o_u_r_c_e.html#ab802bc3cc95cc67e176efeb2fe1c14c4',1,'uct_iface_attr']]] +]; diff --git a/api/v1.14/html/search/variables_d.html b/api/v1.14/html/search/variables_d.html new file mode 100644 index 00000000000..a57e383b1e9 --- /dev/null +++ b/api/v1.14/html/search/variables_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_d.js b/api/v1.14/html/search/variables_d.js new file mode 100644 index 00000000000..56d390cdb7c --- /dev/null +++ b/api/v1.14/html/search/variables_d.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['pack',['pack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#ga347b6c1b7243047f3e069a70626a1e89',1,'ucp_generic_dt_ops']]], + ['packed_5fsize',['packed_size',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gafa434c93350838be8da6480b2a68f83b',1,'ucp_generic_dt_ops::packed_size()'],['../group___u_c_p___d_a_t_a_t_y_p_e.html#a2e3822b2beb1cd2df7b0423a5a9c3a9c',1,'ucp_datatype_attr::packed_size()']]], + ['path_5findex',['path_index',['../group___u_c_t___r_e_s_o_u_r_c_e.html#af271b2f02d31b2a1fcbf34076b83a796',1,'uct_ep_params']]], + ['priority',['priority',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a97534f4af50032a82c02b76bdb47a96d',1,'uct_iface_attr']]], + ['priv',['priv',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3541a702c8158a6d557ce30cec1863b1',1,'uct_pending_req::priv()'],['../structuct__tag__context.html#a50355288112c6e3218f9b63f3b49be91',1,'uct_tag_context::priv()'],['../namespace_3global_scope_4.html#a328050e3952f5d3888c26b32946f3627',1,'ucs_callbackq::priv()']]], + ['private_5fdata',['private_data',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a4ad36475338e8aee2577fa4535c01dfc',1,'uct_ep_params::private_data()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#affe9b0a217e8e706f08da5b2efee3665',1,'uct_ep_connect_params::private_data()']]], + ['private_5fdata_5flength',['private_data_length',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a287105cfd0e1922f7975efa4bba08ead',1,'uct_ep_params::private_data_length()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a3db99efa74cecf7060aad87e73922572',1,'uct_ep_connect_params::private_data_length()']]], + ['prot',['prot',['../group___u_c_p___m_e_m.html#af8bb06187e2c1f180a24d867a4922b2e',1,'ucp_mem_map_params']]] +]; diff --git a/api/v1.14/html/search/variables_e.html b/api/v1.14/html/search/variables_e.html new file mode 100644 index 00000000000..d1502e0e531 --- /dev/null +++ b/api/v1.14/html/search/variables_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_e.js b/api/v1.14/html/search/variables_e.js new file mode 100644 index 00000000000..0c3ecb6c923 --- /dev/null +++ b/api/v1.14/html/search/variables_e.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['recv_5fattr',['recv_attr',['../group___u_c_p___w_o_r_k_e_r.html#a53a8777a31faf7e65289bcc1d710fb19',1,'ucp_am_recv_param']]], + ['recv_5finfo',['recv_info',['../group___u_c_p___c_o_n_t_e_x_t.html#a49d828d5802110c4f268762ec4dd9ca4',1,'ucp_request_param_t']]], + ['reg_5fcost',['reg_cost',['../group___u_c_t___m_d.html#aa8e4e4f1f063347094ea721a0ccb8952',1,'uct_md_attr']]], + ['remote_5fdata',['remote_data',['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a333308d1c7eda2e28111dbe05b288746',1,'uct_cm_listener_conn_request_args::remote_data()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#adebf71af7948cb58f3724d1b0c4151bb',1,'uct_cm_ep_client_connect_args::remote_data()']]], + ['remote_5fsockaddr',['remote_sockaddr',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a8e0e9e1e5a9295f93073ae3fd3d9a612',1,'ucp_ep_attr']]], + ['reply_5fbuffer',['reply_buffer',['../group___u_c_p___c_o_n_t_e_x_t.html#ad41bfb73053537d40830d52b3f380f02',1,'ucp_request_param_t']]], + ['reply_5fep',['reply_ep',['../group___u_c_p___w_o_r_k_e_r.html#a5e4629812b7b7737beb6f7f7332b7d7f',1,'ucp_am_recv_param']]], + ['request',['request',['../group___u_c_p___c_o_n_t_e_x_t.html#a746646123a460ed9a115c3fe21f194b0',1,'ucp_request_param_t']]], + ['request_5fcleanup',['request_cleanup',['../group___u_c_p___c_o_n_f_i_g.html#ad2aadf27367f4cc64e91e1dd2b52b8b8',1,'ucp_params']]], + ['request_5finit',['request_init',['../group___u_c_p___c_o_n_f_i_g.html#ac1f0a25d794111217af5e0e6b9865458',1,'ucp_params']]], + ['request_5fsize',['request_size',['../group___u_c_p___c_o_n_f_i_g.html#a3125e61440123f639c024d75b5edc0d6',1,'ucp_params::request_size()'],['../group___u_c_p___c_o_n_t_e_x_t.html#a9b2ad3af27e1e94d4189ecc6fb1512ef',1,'ucp_context_attr::request_size()']]], + ['reserved',['reserved',['../group___u_c_p___e_n_d_p_o_i_n_t.html#a00c2ee7b309e8c2a45d7e7c83911d707',1,'ucp_stream_poll_ep']]], + ['rkey',['rkey',['../group___u_c_t___m_d.html#a750c92c67b9203752b04894893b91bbc',1,'uct_rkey_bundle']]], + ['rkey_5fpacked_5fsize',['rkey_packed_size',['../group___u_c_t___m_d.html#a95f941f6d800ef57a183d1f9c75a221c',1,'uct_md_attr']]], + ['rndv_5farg',['rndv_arg',['../group___u_c_t___r_e_s_o_u_r_c_e.html#afbeb49c7a773e6d61eaba872535809e8',1,'uct_iface_params']]], + ['rndv_5fcb',['rndv_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aee589d588ff4207d4fcf0d147479facd',1,'uct_iface_params::rndv_cb()'],['../structuct__tag__context.html#a64008d8faf823d5d2be97cb16854c308',1,'uct_tag_context::rndv_cb()']]], + ['rx_5fheadroom',['rx_headroom',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aea4ca94171e8dfe3e80abb74a06fe333',1,'uct_iface_params']]] +]; diff --git a/api/v1.14/html/search/variables_f.html b/api/v1.14/html/search/variables_f.html new file mode 100644 index 00000000000..f777e719556 --- /dev/null +++ b/api/v1.14/html/search/variables_f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/api/v1.14/html/search/variables_f.js b/api/v1.14/html/search/variables_f.js new file mode 100644 index 00000000000..edc95367bae --- /dev/null +++ b/api/v1.14/html/search/variables_f.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['sender_5ftag',['sender_tag',['../group___u_c_p___c_o_n_t_e_x_t.html#a19ac36808d83d348b23cd34fe997a7c9',1,'ucp_tag_recv_info']]], + ['shared',['shared',['../namespace_3global_scope_4.html#ad2a5875d9c5c32357a72b42ec00c3b6d',1,'uct_ppn_bandwidth']]], + ['sockaddr',['sockaddr',['../group___u_c_p___w_o_r_k_e_r.html#affcc213cd4305412937974eefb95bc32',1,'ucp_listener_attr::sockaddr()'],['../group___u_c_p___w_o_r_k_e_r.html#a88be57709393e7bf27d10d8a5238b544',1,'ucp_listener_params::sockaddr()'],['../group___u_c_p___e_n_d_p_o_i_n_t.html#aa23fd9a6a092266371258bd285c96816',1,'ucp_ep_params::sockaddr()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#a3eeadaece922904cae592889db563977',1,'uct_ep_params::sockaddr()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a8cc6f13deda40a11ae98cae547869342',1,'uct_listener_attr::sockaddr()']]], + ['sockaddr_5fcb_5fclient',['sockaddr_cb_client',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a375c999b7326f631877deae2bf24ccf6',1,'uct_ep_params']]], + ['sockaddr_5fcb_5fflags',['sockaddr_cb_flags',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a1471e0cef36287e0b37645beba2d792c',1,'uct_ep_params']]], + ['sockaddr_5fcb_5fserver',['sockaddr_cb_server',['../group___u_c_t___r_e_s_o_u_r_c_e.html#aa290e652d57da6ee3bc5d1efff43a2fe',1,'uct_ep_params']]], + ['sockaddr_5fpack_5fcb',['sockaddr_pack_cb',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a7d44f52031c50abc0b6636421c82bbf1',1,'uct_ep_params']]], + ['start_5fpack',['start_pack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaf59e41a131f620d3b71f3aa7b9bb4801',1,'ucp_generic_dt_ops']]], + ['start_5funpack',['start_unpack',['../group___u_c_p___d_a_t_a_t_y_p_e.html#gaec412b924f1cf491fbc570927f77c7e6',1,'ucp_generic_dt_ops']]], + ['stats_5froot',['stats_root',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a6d87dd22dc349557a706bb25d49975f0',1,'uct_iface_params']]], + ['status',['status',['../group___u_c_p___c_o_m_m.html#a3df010dde5b9a67b62bd354f0af3fc93',1,'ucp_request_attr_t::status()'],['../group___u_c_t___r_e_s_o_u_r_c_e.html#aa3b099f011e78bd23c8768264576314d',1,'uct_completion::status()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#afc75b0697e4624831532a20013eb4c98',1,'uct_cm_ep_resolve_args::status()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#ab34b457dd1e16034378445aeac010d4b',1,'uct_cm_ep_client_connect_args::status()'],['../group___u_c_t___c_l_i_e_n_t___s_e_r_v_e_r.html#a0deb70821df070090ebef30cb70b66c2',1,'uct_cm_ep_server_conn_notify_args::status()']]], + ['stride',['stride',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a21ea5b278cab407db05eaa3dce3b2824',1,'uct_iov']]], + ['sys_5fdev',['sys_dev',['../group___u_c_t___m_d.html#aacc6d26ea7f15b8cd19cb9b10eb4603c',1,'uct_md_mem_attr']]], + ['sys_5fdevice',['sys_device',['../group___u_c_t___r_e_s_o_u_r_c_e.html#a1e3ce2607f86f8faf1eacf0b91636e27',1,'uct_tl_resource_desc']]] +]; diff --git a/api/v1.14/html/splitbar.png b/api/v1.14/html/splitbar.png new file mode 100644 index 00000000000..fe895f2c581 Binary files /dev/null and b/api/v1.14/html/splitbar.png differ diff --git a/api/v1.14/html/status_8h_source.html b/api/v1.14/html/status_8h_source.html new file mode 100644 index 00000000000..31f360f4b8f --- /dev/null +++ b/api/v1.14/html/status_8h_source.html @@ -0,0 +1,155 @@ + + + + + + +UCX: status.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
status.h
+
+
+
1 
9 #ifndef UCS_TYPES_STATUS_H_
10 #define UCS_TYPES_STATUS_H_
11 
12 #include <ucs/sys/compiler_def.h>
13 
14 BEGIN_C_DECLS
15 
45 typedef enum {
46  /* Operation completed successfully */
47  UCS_OK = 0,
48 
49  /* Operation is queued and still in progress */
51 
52  /* Failure codes */
67  UCS_ERR_BUSY = -15,
78 
84 
85  UCS_ERR_LAST = -100
86 } UCS_S_PACKED ucs_status_t;
87 
88 
89 #define UCS_IS_LINK_ERROR(_code) \
90  (((_code) <= UCS_ERR_FIRST_LINK_FAILURE) && \
91  ((_code) >= UCS_ERR_LAST_LINK_FAILURE))
92 
93 #define UCS_IS_ENDPOINT_ERROR(_code) \
94  (((_code) <= UCS_ERR_FIRST_ENDPOINT_FAILURE) && \
95  ((_code) >= UCS_ERR_LAST_ENDPOINT_FAILURE))
96 
106 typedef void *ucs_status_ptr_t;
107 
108 #define UCS_PTR_IS_ERR(_ptr) (((uintptr_t)(_ptr)) >= ((uintptr_t)UCS_ERR_LAST))
109 #define UCS_PTR_IS_PTR(_ptr) (((uintptr_t)(_ptr) - 1) < ((uintptr_t)UCS_ERR_LAST - 1))
110 #define UCS_PTR_RAW_STATUS(_ptr) ((ucs_status_t)(intptr_t)(_ptr))
111 #define UCS_PTR_STATUS(_ptr) (UCS_PTR_IS_PTR(_ptr) ? UCS_INPROGRESS : UCS_PTR_RAW_STATUS(_ptr))
112 #define UCS_STATUS_PTR(_status) ((void*)(intptr_t)(_status))
113 #define UCS_STATUS_IS_ERR(_status) ((_status) < 0)
114 
115 
121 const char *ucs_status_string(ucs_status_t status);
122 
123 END_C_DECLS
124 
125 #endif
Definition: status.h:74
+
Definition: status.h:82
+
Definition: status.h:73
+
Definition: status.h:62
+
Definition: status.h:75
+
Definition: status.h:69
+
Definition: status.h:67
+
Definition: status.h:77
+
Definition: status.h:63
+
Definition: status.h:83
+
Definition: status.h:65
+
Definition: status.h:60
+
Definition: status.h:57
+
Definition: status.h:79
+
Definition: status.h:55
+
Definition: status.h:56
+
ucs_status_t
Status codes.
Definition: status.h:45
+
Definition: status.h:72
+
Definition: status.h:54
+
Definition: status.h:85
+
Definition: status.h:76
+
Definition: status.h:80
+
Definition: status.h:58
+
Definition: status.h:47
+
Definition: status.h:53
+
Definition: status.h:59
+
void * ucs_status_ptr_t
Status pointer.
Definition: status.h:106
+
Definition: status.h:68
+
Definition: status.h:61
+
Definition: status.h:66
+
Definition: status.h:50
+
Definition: status.h:70
+
Definition: status.h:64
+
Definition: status.h:81
+
Definition: status.h:71
+
+
+ + + + diff --git a/api/v1.14/html/structucp__generic__dt__ops.html b/api/v1.14/html/structucp__generic__dt__ops.html new file mode 100644 index 00000000000..89e0d043ee9 --- /dev/null +++ b/api/v1.14/html/structucp__generic__dt__ops.html @@ -0,0 +1,161 @@ + + + + + + +UCX: ucp_generic_dt_ops Struct Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
+
+
+ +

UCP generic data type descriptor. + More...

+ + + + + + + + + + + + + + + + + + + + +

+Data Fields

void *(* start_pack )(void *context, const void *buffer, size_t count)
 Start a packing request. More...
 
void *(* start_unpack )(void *context, void *buffer, size_t count)
 Start an unpacking request. More...
 
size_t(* packed_size )(void *state)
 Get the total size of packed data. More...
 
size_t(* pack )(void *state, size_t offset, void *dest, size_t max_length)
 Pack data. More...
 
ucs_status_t(* unpack )(void *state, size_t offset, const void *src, size_t length)
 Unpack data. More...
 
void(* finish )(void *state)
 Finish packing/unpacking. More...
 
+

Detailed Description

+

This structure provides a generic datatype descriptor that is used for definition of application defined datatypes.

+

Typically, the descriptor is used for an integration with datatype engines implemented within MPI and SHMEM implementations.

+
Note
In case of partial receive, any amount of received data is acceptable which matches buffer size.
+

The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/api/v1.14/html/structucp__generic__dt__ops.js b/api/v1.14/html/structucp__generic__dt__ops.js new file mode 100644 index 00000000000..e058f674d7a --- /dev/null +++ b/api/v1.14/html/structucp__generic__dt__ops.js @@ -0,0 +1,9 @@ +var structucp__generic__dt__ops = +[ + [ "start_pack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaf59e41a131f620d3b71f3aa7b9bb4801", null ], + [ "start_unpack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaec412b924f1cf491fbc570927f77c7e6", null ], + [ "packed_size", "group___u_c_p___d_a_t_a_t_y_p_e.html#gafa434c93350838be8da6480b2a68f83b", null ], + [ "pack", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga347b6c1b7243047f3e069a70626a1e89", null ], + [ "unpack", "group___u_c_p___d_a_t_a_t_y_p_e.html#gaef4bcfb34731b7f113479b221304b698", null ], + [ "finish", "group___u_c_p___d_a_t_a_t_y_p_e.html#ga09ee4ed178f4c27feec4e37f52a8e17b", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/structuct__tag__context.html b/api/v1.14/html/structuct__tag__context.html new file mode 100644 index 00000000000..215d35a8124 --- /dev/null +++ b/api/v1.14/html/structuct__tag__context.html @@ -0,0 +1,230 @@ + + + + + + +UCX: uct_tag_context Struct Reference + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ +

Posted tag context. + More...

+ + + + + + + + + + +

+Data Fields

void(* tag_consumed_cb )(uct_tag_context_t *self)
 
void(* completed_cb )(uct_tag_context_t *self, uct_tag_t stag, uint64_t imm, size_t length, void *inline_data, ucs_status_t status)
 
void(* rndv_cb )(uct_tag_context_t *self, uct_tag_t stag, const void *header, unsigned header_length, ucs_status_t status, unsigned flags)
 
char priv [UCT_TAG_PRIV_LEN]
 
+

Detailed Description

+

Tag context is an object which tracks a tag posted to the transport. It contains callbacks for matching events on this tag.

+

Field Documentation

+ +
+
+ + + + +
void(* uct_tag_context::tag_consumed_cb) (uct_tag_context_t *self)
+
+

Tag is consumed by the transport and should not be matched in software.

+
Parameters
+ + +
[in]selfPointer to relevant context structure, which was initially passed to uct_iface_tag_recv_zcopy.
+
+
+ +
+
+ +
+
+ + + + +
void(* uct_tag_context::completed_cb) (uct_tag_context_t *self, uct_tag_t stag, uint64_t imm, size_t length, void *inline_data, ucs_status_t status)
+
+

Tag processing is completed by the transport.

+
Parameters
+ + + + + + + +
[in]selfPointer to relevant context structure, which was initially passed to uct_iface_tag_recv_zcopy.
[in]stagTag from sender.
[in]immImmediate data from sender. For rendezvous, it's always 0.
[in]lengthCompleted length.
[in]inline_dataIf non-null, points to a temporary buffer which contains the received data. In this case the received data was not placed directly in the receive buffer. This callback routine is responsible for copy-out the inline data, otherwise it is released.
[in]statusCompletion status: (a) UCS_OK - Success, data placed in provided buffer. (b) UCS_ERR_TRUNCATED - Sender's length exceed posted buffer, no data is copied. (c) UCS_ERR_CANCELED - Canceled by user.
+
+
+ +
+
+ +
+
+ + + + +
void(* uct_tag_context::rndv_cb) (uct_tag_context_t *self, uct_tag_t stag, const void *header, unsigned header_length, ucs_status_t status, unsigned flags)
+
+

Tag was matched by a rendezvous request, which should be completed by the protocol layer.

+
Parameters
+ + + + + + + +
[in]selfPointer to relevant context structure, which was initially passed to uct_iface_tag_recv_zcopy.
[in]stagTag from sender.
[in]headerUser defined header.
[in]header_lengthUser defined header length in bytes.
[in]statusCompletion status.
[in]flagsFlags defined by UCT_TAG_RECV_CB_xx.
+
+
+ +
+
+ +
+
+ + + + +
char uct_tag_context::priv[UCT_TAG_PRIV_LEN]
+
+

A placeholder for the private data used by the transport

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/api/v1.14/html/structuct__tag__context.js b/api/v1.14/html/structuct__tag__context.js new file mode 100644 index 00000000000..e178cafae11 --- /dev/null +++ b/api/v1.14/html/structuct__tag__context.js @@ -0,0 +1,7 @@ +var structuct__tag__context = +[ + [ "tag_consumed_cb", "structuct__tag__context.html#a860b64e8963cbf48fb192045ec2d6689", null ], + [ "completed_cb", "structuct__tag__context.html#a8a872809ba82414123000deeb3f8dd2f", null ], + [ "rndv_cb", "structuct__tag__context.html#a64008d8faf823d5d2be97cb16854c308", null ], + [ "priv", "structuct__tag__context.html#a50355288112c6e3218f9b63f3b49be91", null ] +]; \ No newline at end of file diff --git a/api/v1.14/html/sync_off.png b/api/v1.14/html/sync_off.png new file mode 100644 index 00000000000..3b443fc6289 Binary files /dev/null and b/api/v1.14/html/sync_off.png differ diff --git a/api/v1.14/html/sync_on.png b/api/v1.14/html/sync_on.png new file mode 100644 index 00000000000..e08320fb64e Binary files /dev/null and b/api/v1.14/html/sync_on.png differ diff --git a/api/v1.14/html/tab_a.png b/api/v1.14/html/tab_a.png new file mode 100644 index 00000000000..3b725c41c5a Binary files /dev/null and b/api/v1.14/html/tab_a.png differ diff --git a/api/v1.14/html/tab_b.png b/api/v1.14/html/tab_b.png new file mode 100644 index 00000000000..e2b4a8638cb Binary files /dev/null and b/api/v1.14/html/tab_b.png differ diff --git a/api/v1.14/html/tab_h.png b/api/v1.14/html/tab_h.png new file mode 100644 index 00000000000..fd5cb705488 Binary files /dev/null and b/api/v1.14/html/tab_h.png differ diff --git a/api/v1.14/html/tab_s.png b/api/v1.14/html/tab_s.png new file mode 100644 index 00000000000..ab478c95b67 Binary files /dev/null and b/api/v1.14/html/tab_s.png differ diff --git a/api/v1.14/html/tabs.css b/api/v1.14/html/tabs.css new file mode 100644 index 00000000000..9cf578f23a1 --- /dev/null +++ b/api/v1.14/html/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/api/v1.14/html/thread__mode_8h_source.html b/api/v1.14/html/thread__mode_8h_source.html new file mode 100644 index 00000000000..e53c334c171 --- /dev/null +++ b/api/v1.14/html/thread__mode_8h_source.html @@ -0,0 +1,125 @@ + + + + + + +UCX: thread_mode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
thread_mode.h
+
+
+
1 /*
2 * Copyright (c) NVIDIA CORPORATION & AFFILIATES, 2001-2015. ALL RIGHTS RESERVED.
3 * Copyright (C) The University of Tennessee and The University
4 * of Tennessee Research Foundation. 2015. ALL RIGHTS RESERVED.
5 *
6 * See file LICENSE for terms.
7 */
8 
9 #ifndef UCS_TYPE_THREAD_MODE_H
10 #define UCS_TYPE_THREAD_MODE_H
11 
12 
19 typedef enum {
25 
26 
27 extern const char *ucs_thread_mode_names[];
28 
29 
30 #endif
Definition: thread_mode.h:20
+
Definition: thread_mode.h:21
+
Definition: thread_mode.h:22
+
ucs_thread_mode_t
Thread sharing mode.
Definition: thread_mode.h:19
+
Definition: thread_mode.h:23
+
+
+ + + + diff --git a/api/v1.14/html/time__def_8h_source.html b/api/v1.14/html/time__def_8h_source.html new file mode 100644 index 00000000000..7378cfd436a --- /dev/null +++ b/api/v1.14/html/time__def_8h_source.html @@ -0,0 +1,121 @@ + + + + + + +UCX: time_def.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
time_def.h
+
+
+
1 
7 #ifndef UCS_TIME_DEF_H
8 #define UCS_TIME_DEF_H
9 
10 #include <ucs/sys/compiler_def.h>
11 
12 BEGIN_C_DECLS
13 
23 typedef unsigned long ucs_time_t;
24 
25 END_C_DECLS
26 
27 #endif /* UCS_TIME_DEF_H */
unsigned long ucs_time_t
Definition: time_def.h:23
+
+
+ + + + diff --git a/api/v1.14/html/types_8h_source.html b/api/v1.14/html/types_8h_source.html new file mode 100644 index 00000000000..313cbd503ea --- /dev/null +++ b/api/v1.14/html/types_8h_source.html @@ -0,0 +1,130 @@ + + + + + + +UCX: types.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
types.h
+
+
+
1 
7 #ifndef UCS_CONFIG_TYPES_H
8 #define UCS_CONFIG_TYPES_H
9 
10 #include <ucs/sys/compiler_def.h>
11 #include <sys/socket.h>
12 
16 typedef enum {
17  UCS_LOG_LEVEL_FATAL, /* Immediate termination */
18  UCS_LOG_LEVEL_ERROR, /* Error is returned to the user */
19  UCS_LOG_LEVEL_WARN, /* Something's wrong, but we continue */
20  UCS_LOG_LEVEL_DIAG, /* Diagnostics, silent adjustments or internal error handling */
21  UCS_LOG_LEVEL_INFO, /* Information */
22  UCS_LOG_LEVEL_DEBUG, /* Low-volume debugging */
23  UCS_LOG_LEVEL_TRACE, /* High-volume debugging */
24  UCS_LOG_LEVEL_TRACE_REQ, /* Every send/receive request */
25  UCS_LOG_LEVEL_TRACE_DATA, /* Data sent/received on the transport */
26  UCS_LOG_LEVEL_TRACE_ASYNC, /* Asynchronous progress engine */
27  UCS_LOG_LEVEL_TRACE_FUNC, /* Function calls */
28  UCS_LOG_LEVEL_TRACE_POLL, /* Polling functions */
29  UCS_LOG_LEVEL_LAST,
30  UCS_LOG_LEVEL_PRINT /* Temporary output */
31 } ucs_log_level_t;
32 
33 
37 typedef enum {
38  UCS_ASYNC_MODE_SIGNAL,
39  UCS_ASYNC_MODE_THREAD, /* Deprecated, keep for backward compatibility */
40  UCS_ASYNC_MODE_THREAD_SPINLOCK = UCS_ASYNC_MODE_THREAD,
41  UCS_ASYNC_MODE_THREAD_MUTEX,
42  UCS_ASYNC_MODE_POLL, /* TODO keep only in debug version */
43  UCS_ASYNC_MODE_LAST
44 } ucs_async_mode_t;
45 
46 
47 extern const char *ucs_async_mode_names[];
48 
49 
53 typedef enum ucs_ternary_auto_value {
54  UCS_NO = 0,
55  UCS_YES = 1,
56  UCS_TRY = 2,
57  UCS_AUTO = 3,
58  UCS_TERNARY_LAST
59 } ucs_ternary_auto_value_t;
60 
61 
65 typedef enum ucs_on_off_auto_value {
66  UCS_CONFIG_OFF = 0,
67  UCS_CONFIG_ON = 1,
68  UCS_CONFIG_AUTO = 2,
69  UCS_CONFIG_ON_OFF_LAST
70 } ucs_on_off_auto_value_t;
71 
72 
76 typedef enum {
77  UCS_HANDLE_ERROR_BACKTRACE, /* Print backtrace */
78  UCS_HANDLE_ERROR_FREEZE, /* Freeze and wait for a debugger */
79  UCS_HANDLE_ERROR_DEBUG, /* Attach debugger */
80  UCS_HANDLE_ERROR_NONE, /* Do not take any action */
81  UCS_HANDLE_ERROR_LAST
82 } ucs_handle_error_t;
83 
84 
88 typedef enum {
89  UCS_CONFIG_PRINT_CONFIG = UCS_BIT(0),
90  UCS_CONFIG_PRINT_HEADER = UCS_BIT(1),
91  UCS_CONFIG_PRINT_DOC = UCS_BIT(2),
92  UCS_CONFIG_PRINT_HIDDEN = UCS_BIT(3),
93  UCS_CONFIG_PRINT_COMMENT_DEFAULT = UCS_BIT(4)
94 } ucs_config_print_flags_t;
95 
96 
101 #define UCS_CONFIG_ARRAY_FIELD(_type, _array_name) \
102  struct { \
103  _type *_array_name; \
104  unsigned count; \
105  unsigned pad; \
106  }
107 
108 
109 /* Specific structure for an array of strings */
110 #define UCS_CONFIG_STRING_ARRAY_FIELD(_array_name) \
111  UCS_CONFIG_ARRAY_FIELD(char*, _array_name)
112 
113 
114 typedef UCS_CONFIG_STRING_ARRAY_FIELD(names) ucs_config_names_array_t;
115 
116 
120 typedef enum {
121  UCS_CONFIG_ALLOW_LIST_ALLOW_ALL, /* Allow all possible options */
122  UCS_CONFIG_ALLOW_LIST_ALLOW, /* Allow only the specified options */
123  UCS_CONFIG_ALLOW_LIST_NEGATE /* Negate (forbid) the specified options */
124 } ucs_config_allow_list_mode_t;
125 
126 
127 typedef struct {
128  ucs_config_names_array_t array;
129  ucs_config_allow_list_mode_t mode;
131 
132 
137 typedef struct ucs_sock_addr {
138  const struct sockaddr *addr;
139  socklen_t addrlen;
141 
142 
146 typedef struct ucs_log_component_config {
147  ucs_log_level_t log_level;
148  char name[16];
149  const char *file_filter; /* glob pattern of source files */
151 
152 #endif /* TYPES_H_ */
ucs_config_allow_list_mode_t mode
Definition: types.h:129
+
struct ucs_sock_addr ucs_sock_addr_t
+
const struct sockaddr * addr
Definition: types.h:138
+
ucs_config_names_array_t array
Definition: types.h:128
+
socklen_t addrlen
Definition: types.h:139
+
ucs_log_level_t log_level
Definition: types.h:147
+
Definition: types.h:146
+
Definition: types.h:137
+
Definition: types.h:127
+
const char * file_filter
Definition: types.h:149
+
+
+ + + + diff --git a/api/v1.14/html/ucp_8h_source.html b/api/v1.14/html/ucp_8h_source.html new file mode 100644 index 00000000000..f42938d7d89 --- /dev/null +++ b/api/v1.14/html/ucp_8h_source.html @@ -0,0 +1,534 @@ + + + + + + +UCX: ucp.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucp.h
+
+
+
1 /*
2 * Copyright (c) NVIDIA CORPORATION & AFFILIATES, 2001-2020. ALL RIGHTS RESERVED.
3 * Copyright (C) UT-Battelle, LLC. 2014-2017. ALL RIGHTS RESERVED.
4 * Copyright (C) ARM Ltd. 2016-2017. ALL RIGHTS RESERVED.
5 * Copyright (C) Los Alamos National Security, LLC. 2018 ALL RIGHTS RESERVED.
6 * See file LICENSE for terms.
7 */
8 
9 #ifndef UCP_H_
10 #define UCP_H_
11 
12 #include <ucp/api/ucp_def.h>
13 #include <ucp/api/ucp_compat.h>
14 #include <ucp/api/ucp_version.h>
15 #include <ucs/type/thread_mode.h>
16 #include <ucs/type/cpu_set.h>
17 #include <ucs/config/types.h>
18 #include <ucs/sys/compiler_def.h>
19 #include <ucs/memory/memory_type.h>
20 #include <stdio.h>
21 #include <sys/types.h>
22 
23 BEGIN_C_DECLS
24 
128  UCP_PARAM_FIELD_NAME = UCS_BIT(8)
129 };
130 
131 
142  UCP_FEATURE_TAG = UCS_BIT(0),
143 
145  UCP_FEATURE_RMA = UCS_BIT(1),
146 
148  UCP_FEATURE_AMO32 = UCS_BIT(2),
149 
151  UCP_FEATURE_AMO64 = UCS_BIT(3),
152 
154  UCP_FEATURE_WAKEUP = UCS_BIT(4),
155 
157  UCP_FEATURE_STREAM = UCS_BIT(5),
158 
160  UCP_FEATURE_AM = UCS_BIT(6),
161 
168 };
169 
170 
190 };
191 
192 
200 typedef enum {
204 
205 
218 
223 
227 };
228 
229 
238 typedef enum {
239 
245 
246 
266  UCP_EP_PARAM_FIELD_NAME = UCS_BIT(7),
268 };
269 
270 
304 };
305 
306 
313 typedef enum {
336 
337 
361 };
362 
363 
376 
377 
390 
391 
404 
410 
413 
416 
419 
422 };
423 
435 };
436 
437 
448 };
449 
450 
462  UCP_ATTR_FIELD_NAME = UCS_BIT(3)
463 };
464 
465 
482 };
483 
484 
495 };
496 
497 
507 };
508 
509 
520 };
521 
522 
539 };
540 
541 
552 
555 
558 };
559 
560 
568 enum {
574  UCP_MEM_MAP_NONBLOCK = UCS_BIT(0),
575 
581  UCP_MEM_MAP_ALLOCATE = UCS_BIT(1),
582 
587  UCP_MEM_MAP_FIXED = UCS_BIT(2)
588 };
589 
590 
598 enum {
603 };
604 
605 
616  UCP_AM_FLAG_WHOLE_MSG = UCS_BIT(0),
617 
625 };
626 
627 
640 
645 
649  UCP_AM_SEND_FLAG_RNDV = UCS_BIT(2),
650 
658 
663 };
664 
665 
678 };
679 
680 
688 typedef enum {
697 
698 
705 typedef enum {
713 
714 
723 typedef enum {
728  UCP_OP_ATTR_FIELD_FLAGS = UCS_BIT(4),
732  UCP_OP_ATTR_FIELD_MEMH = UCS_BIT(8),
753 } ucp_op_attr_t;
754 
755 
763 typedef enum {
769 
770 
779 typedef enum {
790 
800 
801 
826 };
827 
828 
843 #define ucp_dt_make_contig(_elem_size) \
844  (((ucp_datatype_t)(_elem_size) << UCP_DATATYPE_SHIFT) | UCP_DATATYPE_CONTIG)
845 
846 
860 #define ucp_dt_make_iov() ((ucp_datatype_t)UCP_DATATYPE_IOV)
861 
862 
874 typedef struct ucp_dt_iov {
875  void *buffer;
876  size_t length;
877 } ucp_dt_iov_t;
878 
879 
893 typedef struct ucp_generic_dt_ops {
894 
909  void* (*start_pack)(void *context, const void *buffer, size_t count);
910 
925  void* (*start_unpack)(void *context, void *buffer, size_t count);
926 
940  size_t (*packed_size)(void *state);
941 
958  size_t (*pack) (void *state, size_t offset, void *dest, size_t max_length);
959 
975  ucs_status_t (*unpack)(void *state, size_t offset, const void *src, size_t length);
976 
991  void (*finish)(void *state);
993 
994 
1001 typedef struct ucp_datatype_attr {
1007  uint64_t field_mask;
1008 
1012  size_t packed_size;
1013 
1020  const void *buffer;
1021 
1028  size_t count;
1030 
1031 
1045 typedef struct ucp_params {
1051  uint64_t field_mask;
1052 
1059  uint64_t features;
1060 
1070 
1082 
1093 
1100 
1116 
1127 
1137 
1146  const char *name;
1147 } ucp_params_t;
1148 
1149 
1156 typedef struct ucp_lib_attr {
1163  uint64_t field_mask;
1164 
1173 } ucp_lib_attr_t;
1174 
1175 
1183 typedef struct ucp_context_attr {
1190  uint64_t field_mask;
1191 
1198 
1204 
1209  uint64_t memory_types;
1210 
1216 
1217 
1225 typedef struct ucp_worker_attr {
1232  uint64_t field_mask;
1233 
1238 
1245  uint32_t address_flags;
1246 
1255 
1260 
1265 
1270 
1276 
1277 
1285 typedef struct ucp_worker_params {
1291  uint64_t field_mask;
1292 
1306 
1314  ucs_cpu_set_t cpu_mask;
1315 
1323  unsigned events;
1324 
1331  void *user_data;
1332 
1349 
1356  uint64_t flags;
1357 
1366  const char *name;
1367 
1374 
1381  uint64_t client_id;
1383 
1384 
1391 typedef struct ucp_worker_address_attr {
1398  uint64_t field_mask;
1399 
1403  uint64_t worker_uid;
1405 
1406 
1414 typedef struct {
1421  uint64_t field_mask;
1422 
1429 
1430 
1438 typedef struct {
1445  uint64_t field_mask;
1446 
1454 
1462 typedef struct ucp_listener_attr {
1469  uint64_t field_mask;
1470 
1475  struct sockaddr_storage sockaddr;
1477 
1478 
1486 typedef struct ucp_conn_request_attr {
1493  uint64_t field_mask;
1494 
1499  struct sockaddr_storage client_address;
1500 
1505  uint64_t client_id;
1507 
1508 
1516 typedef struct ucp_listener_params {
1523  uint64_t field_mask;
1524 
1533 
1541 
1555 
1556 
1563 typedef struct ucp_stream_poll_ep {
1568 
1573  void *user_data;
1574 
1578  unsigned flags;
1579 
1583  uint8_t reserved[16];
1585 
1586 
1594 typedef struct ucp_mem_map_params {
1601  uint64_t field_mask;
1602 
1613  void *address;
1614 
1622  size_t length;
1623 
1631  unsigned flags;
1632 
1640  unsigned prot;
1641 
1642  /*
1643  * Memory type (for possible memory types see @ref ucs_memory_type_t)
1644  * It is an optimization hint to avoid memory type detection for map buffer.
1645  * The meaning of this field depends on the operation type.
1646  *
1647  * - Memory allocation: (@ref UCP_MEM_MAP_ALLOCATE flag is set) This field
1648  * specifies the type of memory to allocate. If it's not set (along with its
1649  * corresponding bit in the field_mask - @ref UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE),
1650  * @ref UCS_MEMORY_TYPE_HOST will be assumed by default.
1651  *
1652  * - Memory registration: This field specifies the type of memory which is
1653  * pointed by @ref ucp_mem_map_params.address. If it's not set (along with its
1654  * corresponding bit in the field_mask - @ref UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE),
1655  * or set to @ref UCS_MEMORY_TYPE_UNKNOWN, the memory type will be detected
1656  * internally.
1657  */
1659 
1674 
1675 
1689  size_t length;
1690 };
1691 
1692 
1733 typedef struct {
1739  uint32_t op_attr_mask;
1740 
1741  /* Operation specific flags. */
1742  uint32_t flags;
1743 
1750  void *request;
1751 
1756  union {
1759  ucp_stream_recv_nbx_callback_t recv_stream;
1761  } cb;
1762 
1769 
1773  void *user_data;
1774 
1780 
1789 
1796  union {
1797  size_t *length; /* Length of received message in bytes.
1798  Relevant for non-tagged receive
1799  operations. */
1800  ucp_tag_recv_info_t *tag_info; /* Information about received message.
1801  Relevant for @a ucp_tag_recv_nbx
1802  function. */
1803  } recv_info;
1804 
1813 
1815 
1816 
1821 typedef struct {
1827  uint64_t field_mask;
1828 
1835 
1842 
1847 
1853 
1854 
1860 typedef struct ucp_am_handler_param {
1866  uint64_t field_mask;
1867 
1871  unsigned id;
1872 
1876  uint32_t flags;
1877 
1883 
1888  void *arg;
1890 
1891 
1902  uint64_t recv_attr;
1903 
1908 };
1909 
1910 
1922 
1923 
1950 ucs_status_t ucp_config_read(const char *env_prefix, const char *filename,
1951  ucp_config_t **config_p);
1952 
1953 
1964 void ucp_config_release(ucp_config_t *config);
1965 
1966 
1980 ucs_status_t ucp_config_modify(ucp_config_t *config, const char *name,
1981  const char *value);
1982 
1983 
1999 void ucp_config_print(const ucp_config_t *config, FILE *stream,
2000  const char *title, ucs_config_print_flags_t print_flags);
2001 
2002 
2013 void ucp_get_version(unsigned *major_version, unsigned *minor_version,
2014  unsigned *release_number);
2015 
2016 
2024 const char *ucp_get_version_string(void);
2025 
2026 
2035 ucs_status_t ucp_init_version(unsigned api_major_version, unsigned api_minor_version,
2036  const ucp_params_t *params, const ucp_config_t *config,
2037  ucp_context_h *context_p);
2076 static inline ucs_status_t ucp_init(const ucp_params_t *params,
2077  const ucp_config_t *config,
2078  ucp_context_h *context_p)
2079 {
2080  return ucp_init_version(UCP_API_MAJOR, UCP_API_MINOR, params, config,
2081  context_p);
2082 }
2083 
2084 
2102 void ucp_cleanup(ucp_context_h context_p);
2103 
2104 
2119  ucp_context_attr_t *attr);
2120 
2121 
2133 void ucp_context_print_info(const ucp_context_h context, FILE *stream);
2134 
2135 
2160  const ucp_worker_params_t *params,
2161  ucp_worker_h *worker_p);
2162 
2163 
2179 void ucp_worker_destroy(ucp_worker_h worker);
2180 
2181 
2194  ucp_worker_attr_t *attr);
2195 
2196 
2207 void ucp_worker_print_info(ucp_worker_h worker, FILE *stream);
2208 
2209 
2230 
2231 
2246 
2247 
2267 unsigned ucp_worker_progress(ucp_worker_h worker);
2268 
2269 
2290 ssize_t ucp_stream_worker_poll(ucp_worker_h worker,
2291  ucp_stream_poll_ep_t *poll_eps, size_t max_eps,
2292  unsigned flags);
2293 
2294 
2326 
2327 
2357 
2358 
2382 void ucp_worker_wait_mem(ucp_worker_h worker, void *address);
2383 
2384 
2455 
2456 
2476 
2477 
2504  const ucp_listener_params_t *params,
2505  ucp_listener_h *listener_p);
2506 
2507 
2517 void ucp_listener_destroy(ucp_listener_h listener);
2518 
2519 
2532 
2533 
2547  ucp_conn_request_attr_t *attr);
2548 
2549 
2559 ucs_status_t ucp_request_query(void *request, ucp_request_attr_t *attr);
2560 
2561 
2595  ucp_ep_h *ep_p);
2596 
2597 
2621  const ucp_request_param_t *param);
2622 
2623 
2641  ucp_conn_request_h conn_request);
2642 
2643 
2654 void ucp_ep_print_info(ucp_ep_h ep, FILE *stream);
2655 
2656 
2706 
2707 
2722  const ucp_ep_evaluate_perf_param_t *param,
2724 
2725 
2801  ucp_mem_h *memh_p);
2802 
2803 
2832 
2833 
2848 
2849 
2866 void ucp_mem_print_info(const char *mem_spec, ucp_context_h context,
2867  FILE *stream);
2868 
2869 
2877 typedef enum ucp_mem_advice {
2884 
2885 
2894 typedef struct ucp_mem_advise_params {
2900  uint64_t field_mask;
2901 
2905  void *address;
2906 
2910  size_t length;
2911 
2917 
2918 
2939  ucp_mem_advise_params_t *params);
2940 
2941 
2956 };
2957 
2958 
2976 };
2977 
2978 
2987 typedef struct ucp_memh_pack_params {
2993  uint64_t field_mask;
2994 
2998  uint64_t flags;
3000 
3001 
3036 ucp_memh_pack(ucp_mem_h memh, const ucp_memh_pack_params_t *params,
3037  void **buffer_p, size_t *buffer_size_p);
3038 
3039 
3054  uint64_t field_mask;
3056 
3057 
3076 void ucp_memh_buffer_release(void *buffer,
3077  const ucp_memh_buffer_release_params_t *params);
3078 
3079 
3102 ucs_status_t ucp_ep_rkey_unpack(ucp_ep_h ep, const void *rkey_buffer,
3103  ucp_rkey_h *rkey_p);
3104 
3105 
3125 ucs_status_t ucp_rkey_ptr(ucp_rkey_h rkey, uint64_t raddr, void **addr_p);
3126 
3127 
3149 void ucp_rkey_destroy(ucp_rkey_h rkey);
3150 
3151 
3173  const ucp_am_handler_param_t *param);
3174 
3175 
3228 ucs_status_ptr_t ucp_am_send_nbx(ucp_ep_h ep, unsigned id,
3229  const void *header, size_t header_length,
3230  const void *buffer, size_t count,
3231  const ucp_request_param_t *param);
3232 
3233 
3280 ucs_status_ptr_t ucp_am_recv_data_nbx(ucp_worker_h worker, void *data_desc,
3281  void *buffer, size_t count,
3282  const ucp_request_param_t *param);
3283 
3284 
3297 void ucp_am_data_release(ucp_worker_h worker, void *data);
3298 
3299 
3326 ucs_status_ptr_t ucp_stream_send_nbx(ucp_ep_h ep, const void *buffer, size_t count,
3327  const ucp_request_param_t *param);
3328 
3329 
3368 ucs_status_ptr_t ucp_tag_send_nbx(ucp_ep_h ep, const void *buffer, size_t count,
3369  ucp_tag_t tag, const ucp_request_param_t *param);
3370 
3371 
3401  size_t count, ucp_tag_t tag,
3402  const ucp_request_param_t *param);
3403 
3404 
3440 ucs_status_ptr_t ucp_stream_recv_nbx(ucp_ep_h ep, void *buffer, size_t count,
3441  size_t *length,
3442  const ucp_request_param_t *param);
3443 
3444 
3478 
3479 
3517 ucs_status_ptr_t ucp_tag_recv_nbx(ucp_worker_h worker, void *buffer, size_t count,
3518  ucp_tag_t tag, ucp_tag_t tag_mask,
3519  const ucp_request_param_t *param);
3520 
3521 
3563  ucp_tag_t tag_mask, int remove,
3564  ucp_tag_recv_info_t *info);
3565 
3566 
3598  size_t count, ucp_tag_message_h message,
3599  const ucp_request_param_t *param);
3600 
3601 
3652 ucs_status_ptr_t ucp_put_nbx(ucp_ep_h ep, const void *buffer, size_t count,
3653  uint64_t remote_addr, ucp_rkey_h rkey,
3654  const ucp_request_param_t *param);
3655 
3656 
3703 ucs_status_ptr_t ucp_get_nbx(ucp_ep_h ep, void *buffer, size_t count,
3704  uint64_t remote_addr, ucp_rkey_h rkey,
3705  const ucp_request_param_t *param);
3706 
3707 
3775 ucp_atomic_op_nbx(ucp_ep_h ep, ucp_atomic_op_t opcode, const void *buffer,
3776  size_t count, uint64_t remote_addr, ucp_rkey_h rkey,
3777  const ucp_request_param_t *param);
3778 
3779 
3792 ucs_status_t ucp_request_check_status(void *request);
3793 
3794 
3812 
3813 
3831 ucs_status_t ucp_stream_recv_request_test(void *request, size_t *length_p);
3832 
3833 
3853 void ucp_request_cancel(ucp_worker_h worker, void *request);
3854 
3855 
3868 void ucp_stream_data_release(ucp_ep_h ep, void *data);
3869 
3870 
3882 void ucp_request_free(void *request);
3883 
3884 
3898 void *ucp_request_alloc(ucp_worker_h worker);
3899 
3900 
3923 ucs_status_t ucp_dt_create_generic(const ucp_generic_dt_ops_t *ops, void *context,
3924  ucp_datatype_t *datatype_p);
3925 
3926 
3942 void ucp_dt_destroy(ucp_datatype_t datatype);
3943 
3944 
3959 
3960 
3984 
3985 
4012  const ucp_request_param_t *param);
4013 
4014 
4023  UCP_EP_ATTR_FIELD_NAME = UCS_BIT(0),
4027 };
4028 
4029 
4037 typedef struct ucp_ep_attr {
4044  uint64_t field_mask;
4045 
4051 
4058  struct sockaddr_storage local_sockaddr;
4059 
4066  struct sockaddr_storage remote_sockaddr;
4067 
4074 
4075 } ucp_ep_attr_t;
4076 
4077 
4090 
4091 
4100 END_C_DECLS
4101 
4102 #endif
ucs_status_t ucp_ep_rkey_unpack(ucp_ep_h ep, const void *rkey_buffer, ucp_rkey_h *rkey_p)
Create remote access key from packed buffer.
+
void ucp_context_print_info(const ucp_context_h context, FILE *stream)
Print context information.
+
uint64_t field_mask
Definition: ucp.h:4044
+
ucp_listener_params_field
UCP listener parameters field mask.
Definition: ucp.h:213
+
size_t estimated_num_eps
Definition: ucp.h:1126
+
Definition: ucp.h:122
+
Definition: ucp.h:409
+
Tuning parameters for the UCP endpoint.
Definition: ucp_def.h:683
+
Definition: ucp.h:530
+
uint32_t flags
Definition: ucp.h:1876
+
ucs_status_t status
Definition: ucp.h:1846
+ +
Definition: ucp.h:694
+
size_t am_alignment
Definition: ucp.h:1373
+
ucs_status_t ucp_context_query(ucp_context_h context_p, ucp_context_attr_t *attr)
Get attributes specific to a particular context.
+
ucs_status_ptr_t ucp_tag_send_nbx(ucp_ep_h ep, const void *buffer, size_t count, ucp_tag_t tag, const ucp_request_param_t *param)
Non-blocking tagged-send operation.
+
ucp_req_attr_field
UCP request query attributes.
Definition: ucp.h:763
+
Definition: ucp.h:599
+
ucp_memh_pack_params_field
UCP memory handle packing parameters field mask.
Definition: ucp.h:2950
+
uint64_t field_mask
Definition: ucp.h:2993
+
ucp_mem_map_params_field
UCP memory mapping parameters field mask.
Definition: ucp.h:399
+
UCP receive information descriptor.
Definition: ucp.h:1685
+ +
uint64_t field_mask
Definition: ucp.h:2900
+
struct ucp_mem * ucp_mem_h
UCP Memory handle.
Definition: ucp_def.h:167
+
Definition: ucp.h:732
+
#define UCP_ENTITY_NAME_MAX
Maximum size of the UCP entity name in structure of entity attributes provided by a query method...
Definition: ucp_def.h:772
+
ucp_am_cb_flags
Flags for a UCP Active Message callback.
Definition: ucp.h:612
+
Definition: ucp.h:180
+
Definition: ucp.h:574
+
ucs_status_t ucp_dt_create_generic(const ucp_generic_dt_ops_t *ops, void *context, ucp_datatype_t *datatype_p)
Create a generic datatype.
+
ucs_status_t ucp_mem_unmap(ucp_context_h context, ucp_mem_h memh)
Unmap memory segment.
+
uint64_t ucp_datatype_t
UCP Datatype Identifier.
Definition: ucp_def.h:278
+ + +
Definition: ucp.h:649
+
Attributes of a particular request.
Definition: ucp.h:1821
+
uint64_t field_mask
Definition: ucp.h:1469
+
Definition: ucp.h:735
+
Definition: ucp.h:535
+
Definition: ucp.h:730
+
ucs_status_t ucp_memh_pack(ucp_mem_h memh, const ucp_memh_pack_params_t *params, void **buffer_p, size_t *buffer_size_p)
Pack a memory handle to a buffer specified by the user.
+
Definition: ucp.h:262
+
Definition: ucp.h:142
+
ucs_status_ptr_t ucp_tag_send_sync_nbx(ucp_ep_h ep, const void *buffer, size_t count, ucp_tag_t tag, const ucp_request_param_t *param)
Non-blocking synchronous tagged-send operation.
+
ucp_request_cleanup_callback_t request_cleanup
Definition: ucp.h:1092
+
uint32_t op_attr_mask
Definition: ucp.h:1739
+
Tuning parameters for the UCP worker.
Definition: ucp.h:1285
+
Definition: ucp.h:124
+
Definition: ucp.h:587
+ +
ucp_am_recv_attr_t
UCP AM receive data parameter fields and flags.
Definition: ucp.h:779
+
ucp_tag_t sender_tag
Definition: ucp.h:1687
+
Definition: ucp.h:690
+
ucs_status_t ucp_mem_map(ucp_context_h context, const ucp_mem_map_params_t *params, ucp_mem_h *memh_p)
Map or allocate memory for zero-copy operations.
+
Memory handle release parameters passed to ucp_memh_buffer_release.
Definition: ucp.h:3049
+
ssize_t ucp_stream_worker_poll(ucp_worker_h worker, ucp_stream_poll_ep_t *poll_eps, size_t max_eps, unsigned flags)
Poll for endpoints that are ready to consume streaming data.
+
ucp_listener_conn_handler_t conn_handler
Definition: ucp.h:1553
+
Lib attributes.
Definition: ucp.h:1156
+
Definition: ucp.h:726
+
Definition: ucp.h:531
+
Structure containing an array of transport layers and device names used by an endpoint.
Definition: ucp_def.h:846
+
Definition: ucp.h:532
+
ucp_tag_message_h ucp_tag_probe_nb(ucp_worker_h worker, ucp_tag_t tag, ucp_tag_t tag_mask, int remove, ucp_tag_recv_info_t *info)
Non-blocking probe and return a message.
+
struct ucp_context * ucp_context_h
UCP Application Context.
Definition: ucp_def.h:60
+
ucp_params_field
UCP context parameters field mask.
Definition: ucp.h:119
+
Definition: ucp.h:602
+ +
ucs_status_t ucp_rkey_ptr(ucp_rkey_h rkey, uint64_t raddr, void **addr_p)
Get a local pointer to remote memory.
+
Definition: ucp.h:731
+
ucp_datatype_attr_field
UCP datatype attributes field mask.
Definition: ucp.h:549
+
Definition: ucp.h:554
+
void * ucp_request_alloc(ucp_worker_h worker)
Create an empty communications request.
+
uint64_t field_mask
Definition: ucp.h:1051
+
Definition: ucp.h:345
+
ucs_status_ptr_t ucp_ep_flush_nbx(ucp_ep_h ep, const ucp_request_param_t *param)
Non-blocking flush of outstanding AMO and RMA operations on the endpoint.
+
void(* ucp_tag_recv_nbx_callback_t)(void *request, ucs_status_t status, const ucp_tag_recv_info_t *tag_info, void *user_data)
Completion callback for non-blocking tag receives ucp_tag_recv_nbx call.
Definition: ucp_def.h:518
+
ucs_status_t ucp_worker_arm(ucp_worker_h worker)
Turn on event notification for the next event.
+
struct ucp_listener_params ucp_listener_params_t
Parameters for a UCP listener object.
+
struct ucp_conn_request * ucp_conn_request_h
UCP connection request.
Definition: ucp_def.h:102
+
void ucp_dt_destroy(ucp_datatype_t datatype)
Destroy a datatype and release its resources.
+
void * request
Definition: ucp.h:1750
+ +
Definition: ucp.h:657
+ +
Definition: ucp.h:183
+
struct ucp_dt_iov ucp_dt_iov_t
Structure for scatter-gather I/O.
+
Definition: ucp.h:780
+
struct ucp_listener * ucp_listener_h
UCP listen handle.
Definition: ucp_def.h:177
+ +
ucs_thread_mode_t thread_mode
Definition: ucp.h:1237
+
Definition: ucp.h:624
+
uint64_t client_id
Definition: ucp.h:1381
+
void(* ucp_request_cleanup_callback_t)(void *request)
Request cleanup callback.
Definition: ucp_def.h:301
+
uint64_t client_id
Definition: ucp.h:1505
+
uint32_t flags
Definition: ucp.h:1742
+
Tuning parameters for the UCP memory mapping.
Definition: ucp.h:1594
+
ucs_status_ptr_t ucp_am_send_nbx(ucp_ep_h ep, unsigned id, const void *header, size_t header_length, const void *buffer, size_t count, const ucp_request_param_t *param)
Send Active Message.
+
unsigned flags
Definition: ucp.h:1578
+
Definition: ucp.h:825
+
uint64_t field_mask
Definition: ucp.h:3054
+
ucs_status_t ucp_mem_query(const ucp_mem_h memh, ucp_mem_attr_t *attr)
query mapped memory segment
+ +
ucs_status_ptr_t ucp_stream_send_nbx(ucp_ep_h ep, const void *buffer, size_t count, const ucp_request_param_t *param)
Non-blocking stream send operation.
+
const char * name
Definition: ucp.h:1146
+
Definition: ucp.h:798
+
void ucp_worker_wait_mem(ucp_worker_h worker, void *address)
Wait for memory update on the address.
+ + +
ucs_status_ptr_t ucp_stream_recv_nbx(ucp_ep_h ep, void *buffer, size_t count, size_t *length, const ucp_request_param_t *param)
Non-blocking stream receive operation of structured data into a user-supplied buffer.
+
void ucp_listener_destroy(ucp_listener_h listener)
Stop accepting connections on a local address of the worker object.
+
ucp_address_t * address
Definition: ucp.h:1254
+
void ucp_cleanup(ucp_context_h context_p)
Release UCP application context.
+
Definition: ucp.h:600
+
Attributes of the UCP Memory handle, filled by ucp_mem_query function.
Definition: ucp_def.h:185
+
ucp_worker_address_attr_field
UCP worker address attributes field mask.
Definition: ucp.h:493
+
ucp_worker_params_field
UCP worker parameters field mask.
Definition: ucp.h:178
+
unsigned events
Definition: ucp.h:1323
+
ucs_thread_mode_t max_thread_level
Definition: ucp.h:1172
+
struct ucp_ep_attr ucp_ep_attr_t
UCP endpoint attributes.
+
struct ucp_am_handler_param ucp_am_handler_param_t
Active Message handler parameters passed to ucp_worker_set_am_recv_handler routine.
+
unsigned flags
Definition: ucp.h:1631
+
struct ucp_memh_buffer_release_params ucp_memh_buffer_release_params_t
Memory handle release parameters passed to ucp_memh_buffer_release.
+
Definition: ucp.h:157
+
Definition: ucp.h:479
+
Definition: ucp.h:813
+
size_t max_debug_string
Definition: ucp.h:1274
+
Definition: ucp.h:266
+
ucp_context_attr_field
UCP context attributes field mask.
Definition: ucp.h:458
+
size_t estimated_num_ppn
Definition: ucp.h:1136
+
ucp_ep_h reply_ep
Definition: ucp.h:1907
+
void ucp_worker_release_address(ucp_worker_h worker, ucp_address_t *address)
Release an address of the worker object.
+
ucs_thread_mode_t
Thread sharing mode.
Definition: thread_mode.h:19
+
Definition: ucp.h:2878
+
void ucp_ep_print_info(ucp_ep_h ep, FILE *stream)
Print endpoint information.
+
ucs_status_t ucp_ep_create(ucp_worker_h worker, const ucp_ep_params_t *params, ucp_ep_h *ep_p)
Create and connect an endpoint.
+
ucp_listener_attr_field
UCP listener attributes field mask.
Definition: ucp.h:505
+
void ucp_request_cancel(ucp_worker_h worker, void *request)
Cancel an outstanding communications request.
+
UCP endpoint performance evaluation result attributes.
Definition: ucp.h:1438
+
ucs_status_t ucp_worker_wait(ucp_worker_h worker)
Wait for an event of the worker.
+
ucs_memory_type_t mem_type
Definition: ucp.h:1851
+
Definition: ucp_compat.h:23
+
ucp_mem_h memh
Definition: ucp.h:1812
+ +
unsigned id
Definition: ucp.h:1871
+
size_t length
Definition: ucp.h:876
+
void(* ucp_send_nbx_callback_t)(void *request, ucs_status_t status, void *user_data)
Completion callback for non-blocking sends.
Definition: ucp_def.h:340
+
void * address
Definition: ucp.h:1613
+
ucs_status_t ucp_config_read(const char *env_prefix, const char *filename, ucp_config_t **config_p)
Read UCP configuration descriptor.
+
size_t message_size
Definition: ucp.h:1427
+
uint64_t features
Definition: ucp.h:1059
+
uint64_t field_mask
Definition: ucp.h:1523
+
void(* ucp_request_init_callback_t)(void *request)
Request initialization callback.
Definition: ucp_def.h:289
+
const char * name
Definition: ucp.h:1366
+ + +
const void * exported_memh_buffer
Definition: ucp.h:1672
+
Definition: ucp.h:412
+ +
Definition: ucp.h:639
+
Definition: ucp.h:4025
+ +
Definition: ucp.h:706
+
unsigned prot
Definition: ucp.h:1640
+
ucs_status_ptr_t ucp_tag_recv_nbx(ucp_worker_h worker, void *buffer, size_t count, ucp_tag_t tag, ucp_tag_t tag_mask, const ucp_request_param_t *param)
Non-blocking tagged-receive operation.
+
ucp_ep_h ep
Definition: ucp.h:1567
+
uint64_t flags
Definition: ucp.h:1356
+ +
ucs_status_t ucp_stream_recv_request_test(void *request, size_t *length_p)
Check the status and currently available state of non-blocking request returned from ucp_stream_recv_...
+
Definition: ucp.h:537
+
Definition: ucp.h:789
+
UCP endpoint attributes.
Definition: ucp.h:4037
+
struct ucp_conn_request_attr ucp_conn_request_attr_t
UCP listener&#39;s connection request attributes.
+
uint64_t worker_uid
Definition: ucp.h:1403
+
size_t max_am_header
Definition: ucp.h:1264
+
size_t address_length
Definition: ucp.h:1259
+
ucs_status_t
Status codes.
Definition: status.h:45
+
ucp_mem_advise_params_field
UCP memory advice parameters field mask.
Definition: ucp.h:431
+
struct ucp_lib_attr ucp_lib_attr_t
Lib attributes.
+
Definition: ucp.h:160
+
Definition: ucp.h:461
+
struct ucp_address ucp_address_t
UCP worker address.
Definition: ucp_def.h:112
+
struct ucp_params ucp_params_t
Tuning parameters for UCP library.
+
Output parameter of ucp_stream_worker_poll function.
Definition: ucp.h:1563
+
void(* ucp_stream_recv_nbx_callback_t)(void *request, ucs_status_t status, size_t length, void *user_data)
Completion callback for non-blocking stream receives ucp_stream_recv_nbx call.
Definition: ucp_def.h:470
+
void ucp_worker_destroy(ucp_worker_h worker)
Destroy a worker object.
+ +
struct ucp_worker_params ucp_worker_params_t
Tuning parameters for the UCP worker.
+
Definition: ucp.h:460
+
UCP datatype attributes.
Definition: ucp.h:1001
+
size_t length
Definition: ucp.h:1689
+
Definition: ucp.h:767
+
ucp_ep_perf_param_field
UCP performance fields and flags.
Definition: ucp.h:372
+
ucs_status_t ucp_ep_evaluate_perf(ucp_ep_h ep, const ucp_ep_evaluate_perf_param_t *param, ucp_ep_evaluate_perf_attr_t *attr)
Estimate performance characteristics of a specific endpoint.
+
ucs_status_t ucp_request_check_status(void *request)
Check the status of non-blocking request.
+
ucs_status_ptr_t ucp_stream_recv_data_nb(ucp_ep_h ep, size_t *length)
Non-blocking stream receive operation of unstructured data into a UCP-supplied buffer.
+
uint64_t field_mask
Definition: ucp.h:1163
+
unsigned ucp_worker_progress(ucp_worker_h worker)
Progress all communications on a specific worker.
+
struct ucp_datatype_attr ucp_datatype_attr_t
UCP datatype attributes.
+
ucs_status_t ucp_ep_query(ucp_ep_h ep, ucp_ep_attr_t *attr)
Get attributes of a given endpoint.
+
Definition: ucp.h:120
+
ucs_status_t ucp_worker_fence(ucp_worker_h worker)
Assures ordering between non-blocking operations.
+
ucp_request_init_callback_t request_init
Definition: ucp.h:1081
+ +
Definition: ucp.h:729
+
ucs_status_t(* ucp_am_recv_callback_t)(void *arg, const void *header, size_t header_length, void *data, size_t length, const ucp_am_recv_param_t *param)
Callback to process incoming Active Message sent by ucp_am_send_nbx routine.
Definition: ucp_def.h:670
+
Definition: ucp.h:749
+
Definition: ucp.h:148
+
uint64_t memory_types
Definition: ucp.h:1209
+
Definition: ucp.h:128
+
Definition: ucp.h:4023
+
uint64_t field_mask
Definition: ucp.h:1493
+
UCP generic data type descriptor.
Definition: ucp.h:893
+
void ucp_get_version(unsigned *major_version, unsigned *minor_version, unsigned *release_number)
Get UCP library version.
+
ucp_cb_param_flags
Descriptor flags for Active Message callback.
Definition: ucp.h:676
+
struct ucp_config ucp_config_t
UCP configuration descriptor.
Definition: ucp_def.h:77
+
Definition: ucp.h:677
+
void ucp_mem_print_info(const char *mem_spec, ucp_context_h context, FILE *stream)
Print memory mapping information.
+
size_t length
Definition: ucp.h:1622
+
void ucp_stream_data_release(ucp_ep_h ep, void *data)
Release UCP data buffer returned by ucp_stream_recv_data_nb.
+
Definition: ucp.h:2955
+
Definition: ucp.h:475
+
Operation parameters provided in ucp_am_recv_callback_t callback.
Definition: ucp.h:1896
+
ucs_status_ptr_t ucp_ep_close_nbx(ucp_ep_h ep, const ucp_request_param_t *param)
Non-blocking endpoint closure.
+
void ucp_request_free(void *request)
Release a communications request.
+
struct ucp_recv_desc * ucp_tag_message_h
UCP Message descriptor.
Definition: ucp_def.h:268
+
ucp_mem_advice_t advice
Definition: ucp.h:2915
+
Definition: ucp.h:727
+
Definition: ucp.h:693
+
ucp_ep_params_field
UCP endpoint parameters field mask.
Definition: ucp.h:254
+
ucp_stream_recv_flags_t
Flags to define behavior of ucp_stream_recv_nb function.
Definition: ucp.h:705
+
Memory handle pack parameters passed to ucp_memh_pack.
Definition: ucp.h:2987
+
Definition: ucp.h:728
+
ucs_status_t ucp_worker_address_query(ucp_address_t *address, ucp_worker_address_attr_t *attr)
Get attributes of the particular worker address.
+
Definition: ucp.h:403
+
Definition: ucp.h:415
+
enum ucp_ep_perf_attr_field ucp_ep_perf_attr_field_t
UCP performance fields and flags.
+
Definition: ucp.h:181
+
enum ucp_mem_advice ucp_mem_advice_t
list of UCP memory use advice.
+
ucp_ep_close_mode
Close UCP endpoint modes.
Definition: ucp.h:344
+
uint64_t recv_attr
Definition: ucp.h:1902
+
uint64_t tag_sender_mask
Definition: ucp.h:1099
+
void * arg
Definition: ucp.h:1888
+
ucs_status_ptr_t ucp_get_nbx(ucp_ep_h ep, void *buffer, size_t count, uint64_t remote_addr, ucp_rkey_h rkey, const ucp_request_param_t *param)
Non-blocking remote memory get operation.
+
Definition: ucp.h:265
+
UCP listener&#39;s connection request attributes.
Definition: ucp.h:1486
+
Definition: ucp.h:725
+
void ucp_config_release(ucp_config_t *config)
Release configuration descriptor.
+
Definition: ucp.h:724
+
Definition: ucp.h:2975
+
ucs_status_t ucp_listener_reject(ucp_listener_h listener, ucp_conn_request_h conn_request)
Reject an incoming connection request.
+
ucp_am_handler_param_field
UCP AM receive data parameters fields and flags.
Definition: ucp.h:809
+
ucs_status_ptr_t ucp_tag_msg_recv_nbx(ucp_worker_h worker, void *buffer, size_t count, ucp_tag_message_h message, const ucp_request_param_t *param)
Non-blocking receive operation for a probed message.
+
uint64_t field_mask
Definition: ucp.h:1291
+
ucs_status_t ucp_mem_advise(ucp_context_h context, ucp_mem_h memh, ucp_mem_advise_params_t *params)
give advice about the use of memory
+
ucp_atomic_op_t
Atomic operation requested for ucp_atomic_op_nbx.
Definition: ucp.h:688
+
struct ucp_stream_poll_ep ucp_stream_poll_ep_t
Output parameter of ucp_stream_worker_poll function.
+
char * debug_string
Definition: ucp.h:1834
+
Definition: ucp.h:263
+
uint64_t field_mask
Definition: ucp.h:1398
+
Definition: ucp.h:662
+ + +
enum ucs_memory_type ucs_memory_type_t
Memory types.
+ +
uint64_t field_mask
Definition: ucp.h:1866
+
Definition: ucp.h:616
+
Definition: ucp.h:462
+
ucp_feature
UCP configuration features.
Definition: ucp.h:140
+
uint64_t field_mask
Definition: ucp.h:1445
+
Structure for scatter-gather I/O.
Definition: ucp.h:874
+
Context attributes.
Definition: ucp.h:1183
+
Definition: ucp.h:533
+
const char * ucp_get_version_string(void)
Get UCP library version as a string.
+
ucs_status_t ucp_request_query(void *request, ucp_request_attr_t *attr)
Get information about ucp_request.
+ +
Definition: ucp.h:459
+
ucs_status_t ucp_worker_query(ucp_worker_h worker, ucp_worker_attr_t *attr)
Get attributes specific to a particular worker.
+
ucp_memh_pack_flags
UCP memory handle flags.
Definition: ucp.h:2966
+
ucp_send_am_flags
Flags for sending a UCP Active Message.
Definition: ucp.h:635
+
Definition: ucp.h:261
+
void * ucs_status_ptr_t
Status pointer.
Definition: status.h:106
+
static ucs_status_t ucp_init(const ucp_params_t *params, const ucp_config_t *config, ucp_context_h *context_p)
UCP context initialization.
Definition: ucp.h:2076
+
double estimated_time
Definition: ucp.h:1452
+
ucp_am_recv_callback_t cb
Definition: ucp.h:1882
+
uint64_t ucp_tag_t
UCP Tag Identifier.
Definition: ucp_def.h:257
+
Definition: ucp.h:689
+
const void * buffer
Definition: ucp.h:1020
+ +
UCP listener attributes.
Definition: ucp.h:1462
+
ucp_op_attr_t
UCP operation fields and flags.
Definition: ucp.h:723
+
uint64_t field_mask
Definition: ucp.h:1601
+
ucs_status_t ucp_dt_query(ucp_datatype_t datatype, ucp_datatype_attr_t *attr)
Query attributes of a datatype.
+
ucp_ep_attr_field
UCP endpoint attributes field mask.
Definition: ucp.h:4022
+
void * user_data
Definition: ucp.h:1773
+
ucs_status_t ucp_conn_request_query(ucp_conn_request_h conn_request, ucp_conn_request_attr_t *attr)
Get attributes specific to a particular connection request received on the server side...
+
ucs_status_t ucp_config_modify(ucp_config_t *config, const char *name, const char *value)
Modify context configuration.
+
UCP worker attributes.
Definition: ucp.h:1225
+
Definition: ucp.h:167
+
Definition: ucp.h:185
+
struct ucp_mem_advise_params ucp_mem_advise_params_t
Tuning parameters for the UCP memory advice.
+
enum ucp_ep_perf_param_field ucp_ep_perf_param_field_t
UCP performance fields and flags.
+
ucs_memory_type_t memory_type
Definition: ucp.h:1658
+
void * reply_buffer
Definition: ucp.h:1779
+
ucs_status_ptr_t ucp_atomic_op_nbx(ucp_ep_h ep, ucp_atomic_op_t opcode, const void *buffer, size_t count, uint64_t remote_addr, ucp_rkey_h rkey, const ucp_request_param_t *param)
Post an atomic memory operation.
+
void ucp_config_print(const ucp_config_t *config, FILE *stream, const char *title, ucs_config_print_flags_t print_flags)
Print configuration information.
+ +
Definition: ucp.h:695
+
Tuning parameters for UCP library.
Definition: ucp.h:1045
+
Definition: ucp.h:151
+
ucs_status_t ucp_worker_set_am_recv_handler(ucp_worker_h worker, const ucp_am_handler_param_t *param)
Add user defined callback for Active Message.
+
struct ucp_worker * ucp_worker_h
UCP Worker.
Definition: ucp_def.h:246
+
Definition: ucp.h:692
+
ucp_worker_address_flags_t
UCP worker address flags.
Definition: ucp.h:238
+
ucs_status_t ucp_tag_recv_request_test(void *request, ucp_tag_recv_info_t *info)
Check the status and currently available state of non-blocking request returned from ucp_tag_recv_nb ...
+
Tuning parameters for the UCP memory advice.
Definition: ucp.h:2894
+
Definition: ucp.h:154
+
void ucp_worker_print_info(ucp_worker_h worker, FILE *stream)
Print information about the worker.
+
uint64_t field_mask
Definition: ucp.h:1232
+
Parameters for a UCP listener object.
Definition: ucp.h:1516
+
struct ucp_context_attr ucp_context_attr_t
Context attributes.
+
Active Message handler parameters passed to ucp_worker_set_am_recv_handler routine.
Definition: ucp.h:1860
+ +
UCP endpoint performance evaluation request attributes.
Definition: ucp.h:1414
+
uint64_t field_mask
Definition: ucp.h:1827
+
int mt_workers_shared
Definition: ucp.h:1115
+ +
ucs_memory_type_t memory_type
Definition: ucp.h:1788
+
size_t debug_string_size
Definition: ucp.h:1841
+
Definition: ucp.h:4026
+
Definition: ucp.h:123
+
Definition: ucp.h:4024
+
ucp_worker_attr_field
UCP worker attributes field mask.
Definition: ucp.h:473
+
ucp_conn_request_attr_field
UCP listener&#39;s connection request attributes field mask.
Definition: ucp.h:517
+ +
ucp_listener_accept_handler_t accept_handler
Definition: ucp.h:1540
+
ucp_ep_close_flags_t
Close UCP endpoint modes.
Definition: ucp.h:313
+
size_t count
Definition: ucp.h:1028
+
ucs_status_t ucp_lib_query(ucp_lib_attr_t *attr)
Get attributes of the UCP library.
+
size_t length
Definition: ucp.h:2910
+
struct ucp_memh_pack_params ucp_memh_pack_params_t
Memory handle pack parameters passed to ucp_memh_pack.
+
void ucp_am_data_release(ucp_worker_h worker, void *data)
Releases Active Message data.
+
Definition: ucp.h:287
+
Definition: types.h:137
+
ucs_status_t ucp_worker_create(ucp_context_h context, const ucp_worker_params_t *params, ucp_worker_h *worker_p)
Create a worker object.
+
struct ucp_ep * ucp_ep_h
UCP Endpoint.
Definition: ucp_def.h:92
+
ucp_transports_t transports
Definition: ucp.h:4073
+
struct ucp_mem_map_params ucp_mem_map_params_t
Tuning parameters for the UCP memory mapping.
+
void * address
Definition: ucp.h:2905
+
Definition: ucp.h:557
+
ucs_status_t ucp_listener_create(ucp_worker_h worker, const ucp_listener_params_t *params, ucp_listener_h *listener_p)
Create a listener to accept connections on. Connection requests on the listener will arrive at a loca...
+
ucs_status_t ucp_worker_get_efd(ucp_worker_h worker, int *fd)
Obtain an event file descriptor for event notification.
+ +
ucs_status_ptr_t ucp_am_recv_data_nbx(ucp_worker_h worker, void *data_desc, void *buffer, size_t count, const ucp_request_param_t *param)
Receive Active Message as defined by provided data descriptor.
+
uint64_t flags
Definition: ucp.h:2998
+
UCP callback to handle the connection request in a client-server connection establishment flow...
Definition: ucp_def.h:426
+
Definition: ucp.h:121
+
Definition: ucp.h:644
+
uint32_t address_flags
Definition: ucp.h:1245
+
Definition: ucp.h:581
+
Operation parameters passed to ucp_tag_send_nbx, ucp_tag_send_sync_nbx, ucp_tag_recv_nbx, ucp_put_nbx, ucp_get_nbx, ucp_am_send_nbx and ucp_am_recv_data_nbx.
Definition: ucp.h:1733
+
Definition: ucp.h:358
+
Definition: ucp.h:691
+
ucp_worker_flags_t
UCP worker flags.
Definition: ucp.h:200
+
size_t request_size
Definition: ucp.h:1197
+
ucs_thread_mode_t thread_mode
Definition: ucp.h:1203
+
ucs_cpu_set_t cpu_mask
Definition: ucp.h:1314
+
ucs_thread_mode_t thread_mode
Definition: ucp.h:1305
+
struct ucp_rkey * ucp_rkey_h
UCP Remote memory handle.
Definition: ucp_def.h:152
+
ucp_mem_advice
list of UCP memory use advice.
Definition: ucp.h:2877
+
void * user_data
Definition: ucp.h:1331
+
void ucp_memh_buffer_release(void *buffer, const ucp_memh_buffer_release_params_t *params)
Release packed memory handle buffer.
+ +
struct ucp_worker_attr ucp_worker_attr_t
UCP worker attributes.
+ +
ucp_lib_attr_field
UCP library attributes field mask.
Definition: ucp.h:445
+
Definition: ucp.h:2879
+ +
Definition: ucp.h:601
+
void ucp_rkey_destroy(ucp_rkey_h rkey)
Destroy the remote key.
+
ucs_status_ptr_t ucp_worker_flush_nbx(ucp_worker_h worker, const ucp_request_param_t *param)
Flush outstanding AMO and RMA operations on the worker.
+
uint64_t field_mask
Definition: ucp.h:1007
+ +
ucp_dt_type
UCP data type classification.
Definition: ucp.h:529
+
struct ucp_generic_dt_ops ucp_generic_dt_ops_t
UCP generic data type descriptor.
+
Definition: ucp.h:145
+
struct ucp_worker_address_attr ucp_worker_address_attr_t
UCP worker address attributes.
+
ucs_status_ptr_t ucp_put_nbx(ucp_ep_h ep, const void *buffer, size_t count, uint64_t remote_addr, ucp_rkey_h rkey, const ucp_request_param_t *param)
Non-blocking remote memory put operation.
+ +
Definition: ucp.h:186
+
void(* ucp_am_recv_data_nbx_callback_t)(void *request, ucs_status_t status, size_t length, void *user_data)
Completion callback for non-blocking Active Message receives.
Definition: ucp_def.h:540
+
ucp_datatype_t datatype
Definition: ucp.h:1768
+
ucs_status_t ucp_listener_query(ucp_listener_h listener, ucp_listener_attr_t *attr)
Get attributes specific to a particular listener.
+
size_t request_size
Definition: ucp.h:1069
+
Definition: ucp.h:259
+
size_t packed_size
Definition: ucp.h:1012
+
Definition: ucp.h:314
+
Definition: ucp.h:745
+
uint64_t field_mask
Definition: ucp.h:1190
+
Definition: ucp.h:766
+
ucp_ep_params_flags_field
UCP endpoint parameters flags.
Definition: ucp.h:278
+
ucs_status_t ucp_worker_signal(ucp_worker_h worker)
Cause an event of the worker.
+
ucp_ep_perf_attr_field
UCP performance fields and flags.
Definition: ucp.h:386
+
Definition: ucp.h:734
+
int event_fd
Definition: ucp.h:1348
+
Definition: ucp.h:821
+
void * buffer
Definition: ucp.h:875
+
struct ucp_listener_attr ucp_listener_attr_t
UCP listener attributes.
+ +
uint64_t field_mask
Definition: ucp.h:1421
+
void * user_data
Definition: ucp.h:1573
+ +
UCP worker address attributes.
Definition: ucp.h:1391
+
ucs_sock_addr_t sockaddr
Definition: ucp.h:1532
+
+
+ + + + diff --git a/api/v1.14/html/ucp__compat_8h_source.html b/api/v1.14/html/ucp__compat_8h_source.html new file mode 100644 index 00000000000..0882633217d --- /dev/null +++ b/api/v1.14/html/ucp__compat_8h_source.html @@ -0,0 +1,196 @@ + + + + + + +UCX: ucp_compat.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucp_compat.h
+
+
+
1 /*
2  * Copyright (c) NVIDIA CORPORATION & AFFILIATES, 2001-2017. ALL RIGHTS RESERVED.
3  *
4  * See file LICENSE for terms.
5  */
6 
7 
8 #ifndef UCP_COMPAT_H_
9 #define UCP_COMPAT_H_
10 
11 
12 #include <ucp/api/ucp_def.h>
13 #include <ucs/sys/compiler_def.h>
14 
15 BEGIN_C_DECLS
16 
25  void *arg;
28 
29 
34 int ucp_request_is_completed(void *request);
35 
36 
41 void ucp_request_release(void *request);
42 
43 
48 void ucp_ep_destroy(ucp_ep_h ep);
49 
50 
56 
57 
72 
73 
106  void **rkey_buffer_p, size_t *size_p);
107 
108 
127 void ucp_rkey_buffer_release(void *rkey_buffer);
128 
129 
135 
178 
179 
227 ucs_status_t ucp_put(ucp_ep_h ep, const void *buffer, size_t length,
228  uint64_t remote_addr, ucp_rkey_h rkey);
229 
230 
254 ucs_status_t ucp_get(ucp_ep_h ep, void *buffer, size_t length,
255  uint64_t remote_addr, ucp_rkey_h rkey);
256 
257 
284 ucs_status_t ucp_atomic_add32(ucp_ep_h ep, uint32_t add,
285  uint64_t remote_addr, ucp_rkey_h rkey);
286 
287 
314 ucs_status_t ucp_atomic_add64(ucp_ep_h ep, uint64_t add,
315  uint64_t remote_addr, ucp_rkey_h rkey);
316 
317 
348 ucs_status_t ucp_atomic_fadd32(ucp_ep_h ep, uint32_t add, uint64_t remote_addr,
349  ucp_rkey_h rkey, uint32_t *result);
350 
351 
382 ucs_status_t ucp_atomic_fadd64(ucp_ep_h ep, uint64_t add, uint64_t remote_addr,
383  ucp_rkey_h rkey, uint64_t *result);
384 
385 
415 ucs_status_t ucp_atomic_swap32(ucp_ep_h ep, uint32_t swap, uint64_t remote_addr,
416  ucp_rkey_h rkey, uint32_t *result);
417 
418 
448 ucs_status_t ucp_atomic_swap64(ucp_ep_h ep, uint64_t swap, uint64_t remote_addr,
449  ucp_rkey_h rkey, uint64_t *result);
450 
451 
482 ucs_status_t ucp_atomic_cswap32(ucp_ep_h ep, uint32_t compare, uint32_t swap,
483  uint64_t remote_addr, ucp_rkey_h rkey,
484  uint32_t *result);
485 
486 
517 ucs_status_t ucp_atomic_cswap64(ucp_ep_h ep, uint64_t compare, uint64_t swap,
518  uint64_t remote_addr, ucp_rkey_h rkey,
519  uint64_t *result);
520 
521 
556 
557 
579  ucp_address_t **address_p,
580  size_t *address_length_p);
581 
582 
611 ucs_status_ptr_t ucp_ep_close_nb(ucp_ep_h ep, unsigned mode);
612 
613 
641 ucs_status_ptr_t ucp_ep_flush_nb(ucp_ep_h ep, unsigned flags,
643 
644 
673  ucp_am_callback_t cb, void *arg,
674  uint32_t flags);
675 
676 
703  const void *buffer, size_t count,
704  ucp_datatype_t datatype,
705  ucp_send_callback_t cb, unsigned flags);
706 
707 
748 ucs_status_ptr_t ucp_stream_send_nb(ucp_ep_h ep, const void *buffer, size_t count,
750  unsigned flags);
751 
752 
796 ucs_status_ptr_t ucp_stream_recv_nb(ucp_ep_h ep, void *buffer, size_t count,
797  ucp_datatype_t datatype,
799  size_t *length, unsigned flags);
800 
801 
844 ucs_status_ptr_t ucp_tag_send_nb(ucp_ep_h ep, const void *buffer, size_t count,
845  ucp_datatype_t datatype, ucp_tag_t tag,
847 
848 
930 ucs_status_t ucp_tag_send_nbr(ucp_ep_h ep, const void *buffer, size_t count,
931  ucp_datatype_t datatype, ucp_tag_t tag, void *req);
932 
933 
967 ucs_status_ptr_t ucp_tag_send_sync_nb(ucp_ep_h ep, const void *buffer, size_t count,
968  ucp_datatype_t datatype, ucp_tag_t tag,
970 
971 
1012 ucs_status_ptr_t ucp_tag_recv_nb(ucp_worker_h worker, void *buffer, size_t count,
1013  ucp_datatype_t datatype, ucp_tag_t tag,
1015 
1016 
1049 ucs_status_t ucp_tag_recv_nbr(ucp_worker_h worker, void *buffer, size_t count,
1050  ucp_datatype_t datatype, ucp_tag_t tag,
1051  ucp_tag_t tag_mask, void *req);
1052 
1053 
1090  size_t count, ucp_datatype_t datatype,
1091  ucp_tag_message_h message,
1093 
1094 
1125 ucs_status_t ucp_put_nbi(ucp_ep_h ep, const void *buffer, size_t length,
1126  uint64_t remote_addr, ucp_rkey_h rkey);
1127 
1128 
1174 ucs_status_ptr_t ucp_put_nb(ucp_ep_h ep, const void *buffer, size_t length,
1175  uint64_t remote_addr, ucp_rkey_h rkey,
1177 
1178 
1208 ucs_status_t ucp_get_nbi(ucp_ep_h ep, void *buffer, size_t length,
1209  uint64_t remote_addr, ucp_rkey_h rkey);
1210 
1211 
1256 ucs_status_ptr_t ucp_get_nb(ucp_ep_h ep, void *buffer, size_t length,
1257  uint64_t remote_addr, ucp_rkey_h rkey,
1259 
1260 
1271 typedef enum {
1278 
1279 
1304 ucs_status_t ucp_atomic_post(ucp_ep_h ep, ucp_atomic_post_op_t opcode, uint64_t value,
1305  size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey);
1306 
1307 
1318 typedef enum {
1327 
1328 
1380  uint64_t value, void *result, size_t op_size,
1381  uint64_t remote_addr, ucp_rkey_h rkey,
1383 
1384 
1416 ucs_status_ptr_t ucp_worker_flush_nb(ucp_worker_h worker, unsigned flags,
1418 
1419 
1420 END_C_DECLS
1421 
1422 #endif
Tuning parameters for the UCP endpoint.
Definition: ucp_def.h:683
+
ucs_status_ptr_t ucp_ep_modify_nb(ucp_ep_h ep, const ucp_ep_params_t *params)
Modify endpoint parameters.
+
void ucp_rkey_buffer_release(void *rkey_buffer)
Release packed remote key buffer.
+
UCP receive information descriptor.
Definition: ucp.h:1685
+
struct ucp_mem * ucp_mem_h
UCP Memory handle.
Definition: ucp_def.h:167
+
ucs_status_t ucp_put_nbi(ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
Non-blocking implicit remote memory put operation.
+
ucs_status_t ucp_worker_get_address(ucp_worker_h worker, ucp_address_t **address_p, size_t *address_length_p)
Get the address of the worker object.
+
void(* ucp_tag_recv_callback_t)(void *request, ucs_status_t status, ucp_tag_recv_info_t *info)
Completion callback for non-blocking tag receives.
Definition: ucp_def.h:493
+
uint64_t ucp_datatype_t
UCP Datatype Identifier.
Definition: ucp_def.h:278
+
void(* ucp_stream_recv_callback_t)(void *request, ucs_status_t status, size_t length)
Completion callback for non-blocking stream oriented receives.
Definition: ucp_def.h:448
+
Definition: ucp_compat.h:1275
+
ucs_status_ptr_t ucp_atomic_fetch_nb(ucp_ep_h ep, ucp_atomic_fetch_op_t opcode, uint64_t value, void *result, size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
Post an atomic fetch operation.
+
ucs_status_t ucp_atomic_cswap64(ucp_ep_h ep, uint64_t compare, uint64_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
Blocking atomic conditional swap (cswap) operation for 64 bit values.
+
struct ucp_context * ucp_context_h
UCP Application Context.
Definition: ucp_def.h:60
+
Definition: ucp_compat.h:1319
+
ucs_status_t ucp_request_test(void *request, ucp_tag_recv_info_t *info)
+
int ucp_request_is_completed(void *request)
+
ucs_status_t ucp_put(ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
Blocking remote memory put operation.
+
Definition: ucp_compat.h:1324
+
ucs_status_t ucp_atomic_fadd64(ucp_ep_h ep, uint64_t add, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
Blocking atomic fetch and add operation for 64 bit integers.
+
ucp_atomic_fetch_op_t
Atomic operation requested for ucp_atomic_fetch.
Definition: ucp_compat.h:1318
+
Definition: ucp_compat.h:1320
+
Definition: ucp_compat.h:1274
+
ucs_status_ptr_t ucp_tag_msg_recv_nb(ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_message_h message, ucp_tag_recv_callback_t cb)
Non-blocking receive operation for a probed message.
+
Definition: ucp_compat.h:23
+
ucs_status_t ucp_atomic_cswap32(ucp_ep_h ep, uint32_t compare, uint32_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
Blocking atomic conditional swap (cswap) operation for 32 bit values.
+
void * arg
Definition: ucp_compat.h:25
+
ucs_status_t ucp_tag_send_nbr(ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, void *req)
Non-blocking tagged-send operations with user provided request.
+
ucs_status_t ucp_get(ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
Blocking remote memory get operation.
+
ucs_status_t
Status codes.
Definition: status.h:45
+
ucs_status_ptr_t ucp_am_send_nb(ucp_ep_h ep, uint16_t id, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_send_callback_t cb, unsigned flags)
Send Active Message.
+
struct ucp_address ucp_address_t
UCP worker address.
Definition: ucp_def.h:112
+
ucs_status_t ucp_atomic_add32(ucp_ep_h ep, uint32_t add, uint64_t remote_addr, ucp_rkey_h rkey)
Blocking atomic add operation for 32 bit integers.
+
void(* ucp_send_callback_t)(void *request, ucs_status_t status)
Completion callback for non-blocking sends.
Definition: ucp_def.h:319
+
ucs_status_ptr_t ucp_worker_flush_nb(ucp_worker_h worker, unsigned flags, ucp_send_callback_t cb)
Flush outstanding AMO and RMA operations on the worker.
+
ucs_status_t ucp_get_nbi(ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey)
Non-blocking implicit remote memory get operation.
+
ucs_status_t ucp_ep_flush(ucp_ep_h ep)
+
void ucp_request_release(void *request)
+
ucp_atomic_post_op_t
Atomic operation requested for ucp_atomic_post.
Definition: ucp_compat.h:1271
+
ucs_status_ptr_t ucp_disconnect_nb(ucp_ep_h ep)
+
ucs_status_ptr_t ucp_tag_send_nb(ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_send_callback_t cb)
Non-blocking tagged-send operations.
+
struct ucp_recv_desc * ucp_tag_message_h
UCP Message descriptor.
Definition: ucp_def.h:268
+
ucp_listener_accept_callback_t cb
Definition: ucp_compat.h:24
+
void ucp_ep_destroy(ucp_ep_h ep)
+
ucs_status_ptr_t ucp_stream_send_nb(ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_send_callback_t cb, unsigned flags)
Non-blocking stream send operation.
+
ucs_status_t ucp_atomic_swap32(ucp_ep_h ep, uint32_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
Blocking atomic swap operation for 32 bit values.
+
void(* ucp_listener_accept_callback_t)(ucp_ep_h ep, void *arg)
A callback for accepting client/server connections on a listener ucp_listener_h.
Definition: ucp_def.h:390
+
ucs_status_t ucp_atomic_post(ucp_ep_h ep, ucp_atomic_post_op_t opcode, uint64_t value, size_t op_size, uint64_t remote_addr, ucp_rkey_h rkey)
Post an atomic memory operation.
+
Definition: ucp_compat.h:1273
+
Definition: ucp_compat.h:1322
+
ucs_status_t ucp_tag_recv_nbr(ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_tag_t tag_mask, void *req)
Non-blocking tagged-receive operation.
+
Definition: ucp_compat.h:1272
+
void * ucs_status_ptr_t
Status pointer.
Definition: status.h:106
+
uint64_t ucp_tag_t
UCP Tag Identifier.
Definition: ucp_def.h:257
+
Definition: ucp_compat.h:1276
+
Definition: ucp_compat.h:1323
+
Definition: ucp_compat.h:1321
+
struct ucp_worker * ucp_worker_h
UCP Worker.
Definition: ucp_def.h:246
+
ucs_status_ptr_t ucp_tag_recv_nb(ucp_worker_h worker, void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_tag_t tag_mask, ucp_tag_recv_callback_t cb)
Non-blocking tagged-receive operation.
+
ucs_status_ptr_t ucp_ep_close_nb(ucp_ep_h ep, unsigned mode)
Non-blocking endpoint closure.
+
ucs_status_t ucp_worker_set_am_handler(ucp_worker_h worker, uint16_t id, ucp_am_callback_t cb, void *arg, uint32_t flags)
Add user defined callback for Active Message.
+
ucs_status_t ucp_atomic_swap64(ucp_ep_h ep, uint64_t swap, uint64_t remote_addr, ucp_rkey_h rkey, uint64_t *result)
Blocking atomic swap operation for 64 bit values.
+
ucs_status_t ucp_rkey_pack(ucp_context_h context, ucp_mem_h memh, void **rkey_buffer_p, size_t *size_p)
Pack memory region remote access key.
+
ucs_status_t ucp_worker_flush(ucp_worker_h worker)
Flush outstanding AMO and RMA operations on the worker.
+
struct ucp_ep * ucp_ep_h
UCP Endpoint.
Definition: ucp_def.h:92
+
ucs_status_ptr_t ucp_tag_send_sync_nb(ucp_ep_h ep, const void *buffer, size_t count, ucp_datatype_t datatype, ucp_tag_t tag, ucp_send_callback_t cb)
Non-blocking synchronous tagged-send operation.
+
Definition: ucp_compat.h:1325
+
ucs_status_ptr_t ucp_get_nb(ucp_ep_h ep, void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
Non-blocking remote memory get operation.
+
struct ucp_listener_accept_handler ucp_listener_accept_handler_t
+
ucs_status_t ucp_atomic_add64(ucp_ep_h ep, uint64_t add, uint64_t remote_addr, ucp_rkey_h rkey)
Blocking atomic add operation for 64 bit integers.
+
struct ucp_rkey * ucp_rkey_h
UCP Remote memory handle.
Definition: ucp_def.h:152
+
ucs_status_t(* ucp_am_callback_t)(void *arg, void *data, size_t length, ucp_ep_h reply_ep, unsigned flags)
Callback to process incoming Active Message.
Definition: ucp_def.h:613
+
ucs_status_ptr_t ucp_put_nb(ucp_ep_h ep, const void *buffer, size_t length, uint64_t remote_addr, ucp_rkey_h rkey, ucp_send_callback_t cb)
Non-blocking remote memory put operation.
+
ucs_status_ptr_t ucp_stream_recv_nb(ucp_ep_h ep, void *buffer, size_t count, ucp_datatype_t datatype, ucp_stream_recv_callback_t cb, size_t *length, unsigned flags)
Non-blocking stream receive operation of structured data into a user-supplied buffer.
+
ucs_status_t ucp_atomic_fadd32(ucp_ep_h ep, uint32_t add, uint64_t remote_addr, ucp_rkey_h rkey, uint32_t *result)
Blocking atomic fetch and add operation for 32 bit integers.
+
ucs_status_ptr_t ucp_ep_flush_nb(ucp_ep_h ep, unsigned flags, ucp_send_callback_t cb)
Non-blocking flush of outstanding AMO and RMA operations on the endpoint.
+
+
+ + + + diff --git a/api/v1.14/html/ucp__def_8h_source.html b/api/v1.14/html/ucp__def_8h_source.html new file mode 100644 index 00000000000..4c02609ac5b --- /dev/null +++ b/api/v1.14/html/ucp__def_8h_source.html @@ -0,0 +1,200 @@ + + + + + + +UCX: ucp_def.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucp_def.h
+
+
+
1 /*
2 * Copyright (c) NVIDIA CORPORATION & AFFILIATES, 2001-2014. ALL RIGHTS RESERVED.
3 * Copyright (C) UT-Battelle, LLC. 2014-2015. ALL RIGHTS RESERVED.
4 * Copyright (C) IBM 2015. ALL RIGHTS RESERVED.
5 * Copyright (C) Los Alamos National Security, LLC. 2018. ALL RIGHTS RESERVED.
6 * Copyright (C) Arm, Ltd. 2021. ALL RIGHTS RESERVED.
7 *
8 * See file LICENSE for terms.
9 */
10 
11 #ifndef UCP_DEF_H_
12 #define UCP_DEF_H_
13 
14 #include <ucs/memory/memory_type.h>
15 #include <ucs/type/status.h>
16 #include <ucs/config/types.h>
17 #include <stddef.h>
18 #include <stdint.h>
19 
20 
31 
32 
38 
39 
60 typedef struct ucp_context *ucp_context_h;
61 
62 
77 typedef struct ucp_config ucp_config_t;
78 
79 
92 typedef struct ucp_ep *ucp_ep_h;
93 
94 
102 typedef struct ucp_conn_request *ucp_conn_request_h;
103 
104 
112 typedef struct ucp_address ucp_address_t;
113 
114 
121 typedef enum {
140 
141 
152 typedef struct ucp_rkey *ucp_rkey_h;
153 
154 
167 typedef struct ucp_mem *ucp_mem_h;
168 
169 
177 typedef struct ucp_listener *ucp_listener_h;
178 
179 
185 typedef struct ucp_mem_attr {
191  uint64_t field_mask;
192 
196  void *address;
197 
201  size_t length;
202 
208 
209 
221 };
222 
223 
246  typedef struct ucp_worker *ucp_worker_h;
247 
248 
257 typedef uint64_t ucp_tag_t;
258 
259 
268 typedef struct ucp_recv_desc *ucp_tag_message_h;
269 
270 
278 typedef uint64_t ucp_datatype_t;
279 
280 
289 typedef void (*ucp_request_init_callback_t)(void *request);
290 
291 
301 typedef void (*ucp_request_cleanup_callback_t)(void *request);
302 
303 
319 typedef void (*ucp_send_callback_t)(void *request, ucs_status_t status);
320 
321 
340 typedef void (*ucp_send_nbx_callback_t)(void *request, ucs_status_t status,
341  void *user_data);
342 
343 
357 typedef void (*ucp_err_handler_cb_t)(void *arg, ucp_ep_h ep, ucs_status_t status);
358 
359 
366 typedef struct ucp_err_handler {
369  void *arg;
374 
375 
390 typedef void (*ucp_listener_accept_callback_t)(ucp_ep_h ep, void *arg);
391 
392 
406 typedef void
408 
409 
428  void *arg;
431 
432 
448 typedef void (*ucp_stream_recv_callback_t)(void *request, ucs_status_t status,
449  size_t length);
450 
451 
470 typedef void (*ucp_stream_recv_nbx_callback_t)(void *request, ucs_status_t status,
471  size_t length, void *user_data);
472 
473 
493 typedef void (*ucp_tag_recv_callback_t)(void *request, ucs_status_t status,
494  ucp_tag_recv_info_t *info);
495 
496 
518 typedef void (*ucp_tag_recv_nbx_callback_t)(void *request, ucs_status_t status,
519  const ucp_tag_recv_info_t *tag_info,
520  void *user_data);
521 
522 
540 typedef void (*ucp_am_recv_data_nbx_callback_t)(void *request,
541  ucs_status_t status,
542  size_t length, void *user_data);
543 
544 
559  UCP_WAKEUP_RMA = UCS_BIT(0),
560  UCP_WAKEUP_AMO = UCS_BIT(1),
561  UCP_WAKEUP_TAG_SEND = UCS_BIT(2),
562  UCP_WAKEUP_TAG_RECV = UCS_BIT(3),
563  UCP_WAKEUP_TX = UCS_BIT(10),
570  UCP_WAKEUP_RX = UCS_BIT(11),
575  UCP_WAKEUP_EDGE = UCS_BIT(16)
580 
581 
613 typedef ucs_status_t (*ucp_am_callback_t)(void *arg, void *data, size_t length,
614  ucp_ep_h reply_ep, unsigned flags);
615 
616 
670 typedef ucs_status_t (*ucp_am_recv_callback_t)(void *arg, const void *header,
671  size_t header_length,
672  void *data, size_t length,
673  const ucp_am_recv_param_t *param);
674 
675 
683 typedef struct ucp_ep_params {
690  uint64_t field_mask;
691 
699 
705 
710 
715  void *user_data;
716 
724  unsigned flags;
725 
734 
744 
753  const char *name;
754 
763 
765 
766 
772 #define UCP_ENTITY_NAME_MAX 32
773 
820 typedef struct {
826  const char *transport_name;
827 
833  const char *device_name;
834 
836 
837 
846 typedef struct {
853 
860  unsigned num_entries;
861 
868  size_t entry_size;
869 
871 
872 #endif
ucs_memory_type_t mem_type
Definition: ucp_def.h:206
+
Tuning parameters for the UCP endpoint.
Definition: ucp_def.h:683
+
Definition: ucp_def.h:130
+
UCP receive information descriptor.
Definition: ucp.h:1685
+
struct ucp_mem * ucp_mem_h
UCP Memory handle.
Definition: ucp_def.h:167
+
UCP endpoint error handling context.
Definition: ucp_def.h:366
+
void(* ucp_tag_recv_callback_t)(void *request, ucs_status_t status, ucp_tag_recv_info_t *info)
Completion callback for non-blocking tag receives.
Definition: ucp_def.h:493
+
uint64_t ucp_datatype_t
UCP Datatype Identifier.
Definition: ucp_def.h:278
+
void(* ucp_stream_recv_callback_t)(void *request, ucs_status_t status, size_t length)
Completion callback for non-blocking stream oriented receives.
Definition: ucp_def.h:448
+
ucp_wakeup_event_types
UCP worker wakeup events mask.
Definition: ucp_def.h:558
+
struct ucp_mem_attr ucp_mem_attr_t
Attributes of the UCP Memory handle, filled by ucp_mem_query function.
+
const char * name
Definition: ucp_def.h:753
+
uint64_t field_mask
Definition: ucp_def.h:191
+
Structure containing an array of transport layers and device names used by an endpoint.
Definition: ucp_def.h:846
+
void(* ucp_listener_conn_callback_t)(ucp_conn_request_h conn_request, void *arg)
A callback for handling of incoming connection request conn_request from a client.
Definition: ucp_def.h:407
+
struct ucp_context * ucp_context_h
UCP Application Context.
Definition: ucp_def.h:60
+
void(* ucp_tag_recv_nbx_callback_t)(void *request, ucs_status_t status, const ucp_tag_recv_info_t *tag_info, void *user_data)
Completion callback for non-blocking tag receives ucp_tag_recv_nbx call.
Definition: ucp_def.h:518
+
ucs_sock_addr_t sockaddr
Definition: ucp_def.h:733
+
struct ucp_conn_request * ucp_conn_request_h
UCP connection request.
Definition: ucp_def.h:102
+
unsigned flags
Definition: ucp_def.h:724
+
Definition: ucp_def.h:563
+
ucp_err_handler_cb_t cb
Definition: ucp_def.h:367
+
void(* ucp_err_handler_cb_t)(void *arg, ucp_ep_h ep, ucs_status_t status)
Callback to process peer failure.
Definition: ucp_def.h:357
+
Definition: ucp_def.h:218
+
struct ucp_listener * ucp_listener_h
UCP listen handle.
Definition: ucp_def.h:177
+
void(* ucp_request_cleanup_callback_t)(void *request)
Request cleanup callback.
Definition: ucp_def.h:301
+
struct ucp_listener_conn_handler ucp_listener_conn_handler_t
UCP callback to handle the connection request in a client-server connection establishment flow...
+
Definition: ucp_def.h:220
+
void * arg
Definition: ucp_def.h:428
+
Definition: ucp_def.h:219
+
ucp_listener_conn_callback_t cb
Definition: ucp_def.h:427
+
Attributes of the UCP Memory handle, filled by ucp_mem_query function.
Definition: ucp_def.h:185
+
unsigned num_entries
Definition: ucp_def.h:860
+
void * arg
Definition: ucp_def.h:369
+
uint64_t field_mask
Definition: ucp_def.h:690
+
ucp_mem_attr_field
UCP Memory handle attributes field mask.
Definition: ucp_def.h:217
+
ucs_sock_addr_t local_sockaddr
Definition: ucp_def.h:762
+
void(* ucp_send_nbx_callback_t)(void *request, ucs_status_t status, void *user_data)
Completion callback for non-blocking sends.
Definition: ucp_def.h:340
+
Definition: ucp_def.h:559
+
void(* ucp_request_init_callback_t)(void *request)
Request initialization callback.
Definition: ucp_def.h:289
+
struct ucp_ep_params ucp_ep_params_t
Tuning parameters for the UCP endpoint.
+
Definition: ucp_def.h:570
+
ucs_status_t
Status codes.
Definition: status.h:45
+
struct ucp_address ucp_address_t
UCP worker address.
Definition: ucp_def.h:112
+
void(* ucp_stream_recv_nbx_callback_t)(void *request, ucs_status_t status, size_t length, void *user_data)
Completion callback for non-blocking stream receives ucp_stream_recv_nbx call.
Definition: ucp_def.h:470
+
void(* ucp_send_callback_t)(void *request, ucs_status_t status)
Completion callback for non-blocking sends.
Definition: ucp_def.h:319
+
size_t entry_size
Definition: ucp_def.h:868
+
ucs_status_t(* ucp_am_recv_callback_t)(void *arg, const void *header, size_t header_length, void *data, size_t length, const ucp_am_recv_param_t *param)
Callback to process incoming Active Message sent by ucp_am_send_nbx routine.
Definition: ucp_def.h:670
+
ucp_conn_request_h conn_request
Definition: ucp_def.h:743
+
struct ucp_config ucp_config_t
UCP configuration descriptor.
Definition: ucp_def.h:77
+
Operation parameters provided in ucp_am_recv_callback_t callback.
Definition: ucp.h:1896
+
struct ucp_recv_desc * ucp_tag_message_h
UCP Message descriptor.
Definition: ucp_def.h:268
+
Definition: ucp_def.h:575
+
void(* ucp_listener_accept_callback_t)(ucp_ep_h ep, void *arg)
A callback for accepting client/server connections on a listener ucp_listener_h.
Definition: ucp_def.h:390
+
enum ucs_memory_type ucs_memory_type_t
Memory types.
+
const char * device_name
Definition: ucp_def.h:833
+
size_t length
Definition: ucp_def.h:201
+
void * address
Definition: ucp_def.h:196
+
uint64_t ucp_tag_t
UCP Tag Identifier.
Definition: ucp_def.h:257
+
const ucp_address_t * address
Definition: ucp_def.h:698
+
struct ucp_err_handler ucp_err_handler_t
UCP endpoint error handling context.
+
ucp_err_handling_mode_t err_mode
Definition: ucp_def.h:704
+
Definition: ucp_def.h:560
+
enum ucp_wakeup_event_types ucp_wakeup_event_t
UCP worker wakeup events mask.
+
The ucp_transports_t and ucp_transport_entry_t structures are used when ucp_ep_query is called to ret...
Definition: ucp_def.h:820
+
ucp_err_handler_t err_handler
Definition: ucp_def.h:709
+
struct ucp_worker * ucp_worker_h
UCP Worker.
Definition: ucp_def.h:246
+
void * user_data
Definition: ucp_def.h:715
+
Definition: ucp_def.h:562
+
ucp_err_handling_mode_t
Error handling mode for the UCP endpoint.
Definition: ucp_def.h:121
+
Definition: types.h:137
+
struct ucp_ep * ucp_ep_h
UCP Endpoint.
Definition: ucp_def.h:92
+
UCP callback to handle the connection request in a client-server connection establishment flow...
Definition: ucp_def.h:426
+
struct ucp_rkey * ucp_rkey_h
UCP Remote memory handle.
Definition: ucp_def.h:152
+
ucs_status_t(* ucp_am_callback_t)(void *arg, void *data, size_t length, ucp_ep_h reply_ep, unsigned flags)
Callback to process incoming Active Message.
Definition: ucp_def.h:613
+
ucp_transport_entry_t * entries
Definition: ucp_def.h:852
+
void(* ucp_am_recv_data_nbx_callback_t)(void *request, ucs_status_t status, size_t length, void *user_data)
Completion callback for non-blocking Active Message receives.
Definition: ucp_def.h:540
+
Definition: ucp_def.h:561
+
Definition: ucp_def.h:122
+
const char * transport_name
Definition: ucp_def.h:826
+
+
+ + + + diff --git a/api/v1.14/html/ucp_client_server_8c-example.html b/api/v1.14/html/ucp_client_server_8c-example.html new file mode 100644 index 00000000000..6cc42d51779 --- /dev/null +++ b/api/v1.14/html/ucp_client_server_8c-example.html @@ -0,0 +1,120 @@ + + + + + + +UCX: ucp_client_server.c + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucp_client_server.c
+
+
+

UCP client / server example using different APIs (tag, stream, am) utility.

+
/*
* UCP client - server example utility
* -----------------------------------------------
*
* Server side:
*
* ./ucp_client_server
*
* Client side:
*
* ./ucp_client_server -a <server-ip>
*
* Notes:
*
* - The server will listen to incoming connection requests on INADDR_ANY.
* - The client needs to pass the IP address of the server side to connect to
* as an argument to the test.
* - Currently, the passed IP needs to be an IPoIB or a RoCE address.
* - The port which the server side would listen on can be modified with the
* '-p' option and should be used on both sides. The default port to use is
* 13337.
*/
#include "hello_world_util.h"
#include "ucp_util.h"
#include <ucp/api/ucp.h>
#include <string.h> /* memset */
#include <arpa/inet.h> /* inet_addr */
#include <unistd.h> /* getopt */
#include <stdlib.h> /* atoi */
#define DEFAULT_PORT 13337
#define IP_STRING_LEN 50
#define PORT_STRING_LEN 8
#define TAG 0xCAFE
#define COMM_TYPE_DEFAULT "STREAM"
#define PRINT_INTERVAL 2000
#define DEFAULT_NUM_ITERATIONS 1
#define TEST_AM_ID 0
static long test_string_length = 16;
static long iov_cnt = 1;
static uint16_t server_port = DEFAULT_PORT;
static sa_family_t ai_family = AF_INET;
static int num_iterations = DEFAULT_NUM_ITERATIONS;
static int connection_closed = 1;
typedef enum {
CLIENT_SERVER_SEND_RECV_STREAM = UCS_BIT(0),
CLIENT_SERVER_SEND_RECV_TAG = UCS_BIT(1),
CLIENT_SERVER_SEND_RECV_AM = UCS_BIT(2),
CLIENT_SERVER_SEND_RECV_DEFAULT = CLIENT_SERVER_SEND_RECV_STREAM
} send_recv_type_t;
typedef struct ucx_server_ctx {
volatile ucp_conn_request_h conn_request;
ucp_listener_h listener;
} ucx_server_ctx_t;
typedef struct test_req {
int complete;
} test_req_t;
static struct {
volatile int complete;
int is_rndv;
void *desc;
void *recv_buf;
} am_data_desc = {0, 0, NULL, NULL};
static void usage(void);
void buffer_free(ucp_dt_iov_t *iov)
{
size_t idx;
for (idx = 0; idx < iov_cnt; idx++) {
mem_type_free(iov[idx].buffer);
}
}
int buffer_malloc(ucp_dt_iov_t *iov)
{
size_t idx;
for (idx = 0; idx < iov_cnt; idx++) {
iov[idx].length = test_string_length;
iov[idx].buffer = mem_type_malloc(iov[idx].length);
if (iov[idx].buffer == NULL) {
buffer_free(iov);
return -1;
}
}
return 0;
}
int fill_buffer(ucp_dt_iov_t *iov)
{
int ret = 0;
size_t idx;
for (idx = 0; idx < iov_cnt; idx++) {
ret = generate_test_string(iov[idx].buffer, iov[idx].length);
if (ret != 0) {
break;
}
}
CHKERR_ACTION(ret != 0, "generate test string", return -1;);
return 0;
}
static void common_cb(void *user_data, const char *type_str)
{
test_req_t *ctx;
if (user_data == NULL) {
fprintf(stderr, "user_data passed to %s mustn't be NULL\n", type_str);
return;
}
ctx = user_data;
ctx->complete = 1;
}
static void tag_recv_cb(void *request, ucs_status_t status,
const ucp_tag_recv_info_t *info, void *user_data)
{
common_cb(user_data, "tag_recv_cb");
}
static void stream_recv_cb(void *request, ucs_status_t status, size_t length,
void *user_data)
{
common_cb(user_data, "stream_recv_cb");
}
static void am_recv_cb(void *request, ucs_status_t status, size_t length,
void *user_data)
{
common_cb(user_data, "am_recv_cb");
}
static void send_cb(void *request, ucs_status_t status, void *user_data)
{
common_cb(user_data, "send_cb");
}
static void err_cb(void *arg, ucp_ep_h ep, ucs_status_t status)
{
printf("error handling callback was invoked with status %d (%s)\n",
status, ucs_status_string(status));
connection_closed = 1;
}
void set_sock_addr(const char *address_str, struct sockaddr_storage *saddr)
{
struct sockaddr_in *sa_in;
struct sockaddr_in6 *sa_in6;
/* The server will listen on INADDR_ANY */
memset(saddr, 0, sizeof(*saddr));
switch (ai_family) {
case AF_INET:
sa_in = (struct sockaddr_in*)saddr;
if (address_str != NULL) {
inet_pton(AF_INET, address_str, &sa_in->sin_addr);
} else {
sa_in->sin_addr.s_addr = INADDR_ANY;
}
sa_in->sin_family = AF_INET;
sa_in->sin_port = htons(server_port);
break;
case AF_INET6:
sa_in6 = (struct sockaddr_in6*)saddr;
if (address_str != NULL) {
inet_pton(AF_INET6, address_str, &sa_in6->sin6_addr);
} else {
sa_in6->sin6_addr = in6addr_any;
}
sa_in6->sin6_family = AF_INET6;
sa_in6->sin6_port = htons(server_port);
break;
default:
fprintf(stderr, "Invalid address family");
break;
}
}
static ucs_status_t start_client(ucp_worker_h ucp_worker,
const char *address_str, ucp_ep_h *client_ep)
{
ucp_ep_params_t ep_params;
struct sockaddr_storage connect_addr;
ucs_status_t status;
set_sock_addr(address_str, &connect_addr);
/*
* Endpoint field mask bits:
* UCP_EP_PARAM_FIELD_FLAGS - Use the value of the 'flags' field.
* UCP_EP_PARAM_FIELD_SOCK_ADDR - Use a remote sockaddr to connect
* to the remote peer.
* UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE - Error handling mode - this flag
* is temporarily required since the
* endpoint will be closed with
* UCP_EP_CLOSE_MODE_FORCE which
* requires this mode.
* Once UCP_EP_CLOSE_MODE_FORCE is
* removed, the error handling mode
* will be removed.
*/
ep_params.err_handler.cb = err_cb;
ep_params.err_handler.arg = NULL;
ep_params.sockaddr.addr = (struct sockaddr*)&connect_addr;
ep_params.sockaddr.addrlen = sizeof(connect_addr);
status = ucp_ep_create(ucp_worker, &ep_params, client_ep);
if (status != UCS_OK) {
fprintf(stderr, "failed to connect to %s (%s)\n", address_str,
ucs_status_string(status));
}
return status;
}
static void print_iov(const ucp_dt_iov_t *iov)
{
char *msg = alloca(test_string_length);
size_t idx;
for (idx = 0; idx < iov_cnt; idx++) {
/* In case of Non-System memory */
mem_type_memcpy(msg, iov[idx].buffer, test_string_length);
printf("%s.\n", msg);
}
}
static
void print_result(int is_server, const ucp_dt_iov_t *iov, int current_iter)
{
if (is_server) {
printf("Server: iteration #%d\n", (current_iter + 1));
printf("UCX data message was received\n");
printf("\n\n----- UCP TEST SUCCESS -------\n\n");
} else {
printf("Client: iteration #%d\n", (current_iter + 1));
printf("\n\n------------------------------\n\n");
}
print_iov(iov);
printf("\n\n------------------------------\n\n");
}
static ucs_status_t request_wait(ucp_worker_h ucp_worker, void *request,
test_req_t *ctx)
{
ucs_status_t status;
/* if operation was completed immediately */
if (request == NULL) {
return UCS_OK;
}
if (UCS_PTR_IS_ERR(request)) {
return UCS_PTR_STATUS(request);
}
while (ctx->complete == 0) {
ucp_worker_progress(ucp_worker);
}
status = ucp_request_check_status(request);
ucp_request_free(request);
return status;
}
static int request_finalize(ucp_worker_h ucp_worker, test_req_t *request,
test_req_t *ctx, int is_server, ucp_dt_iov_t *iov,
int current_iter)
{
int ret = 0;
ucs_status_t status;
status = request_wait(ucp_worker, request, ctx);
if (status != UCS_OK) {
fprintf(stderr, "unable to %s UCX message (%s)\n",
is_server ? "receive": "send", ucs_status_string(status));
ret = -1;
goto release_iov;
}
/* Print the output of the first, last and every PRINT_INTERVAL iteration */
if ((current_iter == 0) || (current_iter == (num_iterations - 1)) ||
!((current_iter + 1) % (PRINT_INTERVAL))) {
print_result(is_server, iov, current_iter);
}
release_iov:
buffer_free(iov);
return ret;
}
static int
fill_request_param(ucp_dt_iov_t *iov, int is_client,
void **msg, size_t *msg_length,
test_req_t *ctx, ucp_request_param_t *param)
{
CHKERR_ACTION(buffer_malloc(iov) != 0, "allocate memory", return -1;);
if (is_client && (fill_buffer(iov) != 0)) {
buffer_free(iov);
return -1;
}
*msg = (iov_cnt == 1) ? iov[0].buffer : iov;
*msg_length = (iov_cnt == 1) ? iov[0].length : iov_cnt;
ctx->complete = 0;
param->datatype = (iov_cnt == 1) ? ucp_dt_make_contig(1) :
param->user_data = ctx;
return 0;
}
static int send_recv_stream(ucp_worker_h ucp_worker, ucp_ep_h ep, int is_server,
int current_iter)
{
ucp_dt_iov_t *iov = alloca(iov_cnt * sizeof(ucp_dt_iov_t));
test_req_t *request;
size_t msg_length;
void *msg;
test_req_t ctx;
memset(iov, 0, iov_cnt * sizeof(*iov));
if (fill_request_param(iov, !is_server, &msg, &msg_length,
&ctx, &param) != 0) {
return -1;
}
if (!is_server) {
/* Client sends a message to the server using the stream API */
param.cb.send = send_cb;
request = ucp_stream_send_nbx(ep, msg, msg_length, &param);
} else {
/* Server receives a message from the client using the stream API */
param.cb.recv_stream = stream_recv_cb;
request = ucp_stream_recv_nbx(ep, msg, msg_length,
&msg_length, &param);
}
return request_finalize(ucp_worker, request, &ctx, is_server, iov,
current_iter);
}
static int send_recv_tag(ucp_worker_h ucp_worker, ucp_ep_h ep, int is_server,
int current_iter)
{
ucp_dt_iov_t *iov = alloca(iov_cnt * sizeof(ucp_dt_iov_t));
void *request;
size_t msg_length;
void *msg;
test_req_t ctx;
memset(iov, 0, iov_cnt * sizeof(*iov));
if (fill_request_param(iov, !is_server, &msg, &msg_length,
&ctx, &param) != 0) {
return -1;
}
if (!is_server) {
/* Client sends a message to the server using the Tag-Matching API */
param.cb.send = send_cb;
request = ucp_tag_send_nbx(ep, msg, msg_length, TAG, &param);
} else {
/* Server receives a message from the client using the Tag-Matching API */
param.cb.recv = tag_recv_cb;
request = ucp_tag_recv_nbx(ucp_worker, msg, msg_length, TAG, 0,
&param);
}
return request_finalize(ucp_worker, request, &ctx, is_server, iov,
current_iter);
}
ucs_status_t ucp_am_data_cb(void *arg, const void *header, size_t header_length,
void *data, size_t length,
const ucp_am_recv_param_t *param)
{
size_t idx;
size_t offset;
if (length != iov_cnt * test_string_length) {
fprintf(stderr, "received wrong data length %ld (expected %ld)",
length, iov_cnt * test_string_length);
return UCS_OK;
}
if (header_length != 0) {
fprintf(stderr, "received unexpected header, length %ld", header_length);
}
am_data_desc.complete = 1;
/* Rendezvous request arrived, data contains an internal UCX descriptor,
* which has to be passed to ucp_am_recv_data_nbx function to confirm
* data transfer.
*/
am_data_desc.is_rndv = 1;
am_data_desc.desc = data;
}
/* Message delivered with eager protocol, data should be available
* immediately
*/
am_data_desc.is_rndv = 0;
iov = am_data_desc.recv_buf;
offset = 0;
for (idx = 0; idx < iov_cnt; idx++) {
mem_type_memcpy(iov[idx].buffer, UCS_PTR_BYTE_OFFSET(data, offset),
iov[idx].length);
offset += iov[idx].length;
}
return UCS_OK;
}
static int send_recv_am(ucp_worker_h ucp_worker, ucp_ep_h ep, int is_server,
int current_iter)
{
ucp_dt_iov_t *iov = alloca(iov_cnt * sizeof(ucp_dt_iov_t));
test_req_t *request;
size_t msg_length;
void *msg;
test_req_t ctx;
memset(iov, 0, iov_cnt * sizeof(*iov));
if (fill_request_param(iov, !is_server, &msg, &msg_length,
&ctx, &params) != 0) {
return -1;
}
if (is_server) {
am_data_desc.recv_buf = iov;
/* waiting for AM callback has called */
while (!am_data_desc.complete) {
ucp_worker_progress(ucp_worker);
}
am_data_desc.complete = 0;
if (am_data_desc.is_rndv) {
/* Rendezvous request has arrived, need to invoke receive operation
* to confirm data transfer from the sender to the "recv_message"
* buffer. */
params.cb.recv_am = am_recv_cb,
request = ucp_am_recv_data_nbx(ucp_worker,
am_data_desc.desc,
msg, msg_length,
&params);
} else {
/* Data has arrived eagerly and is ready for use, no need to
* initiate receive operation. */
request = NULL;
}
} else {
/* Client sends a message to the server using the AM API */
params.cb.send = (ucp_send_nbx_callback_t)send_cb,
request = ucp_am_send_nbx(ep, TEST_AM_ID, NULL, 0ul, msg,
msg_length, &params);
}
return request_finalize(ucp_worker, request, &ctx, is_server, iov,
current_iter);
}
static void usage()
{
fprintf(stderr, "Usage: ucp_client_server [parameters]\n");
fprintf(stderr, "UCP client-server example utility\n");
fprintf(stderr, "\nParameters are:\n");
fprintf(stderr, " -a Set IP address of the server "
"(required for client and should not be specified "
"for the server)\n");
fprintf(stderr, " -l Set IP address where server listens "
"(If not specified, server uses INADDR_ANY; "
"Irrelevant at client)\n");
fprintf(stderr, " -p Port number to listen/connect to (default = %d). "
"0 on the server side means select a random port and print it\n",
DEFAULT_PORT);
fprintf(stderr, " -c Communication type for the client and server. "
" Valid values are:\n"
" 'stream' : Stream API\n"
" 'tag' : Tag API\n"
" 'am' : AM API\n"
" If not specified, %s API will be used.\n", COMM_TYPE_DEFAULT);
fprintf(stderr, " -i Number of iterations to run. Client and server must "
"have the same value. (default = %d).\n",
num_iterations);
fprintf(stderr, " -v Number of buffers in a single data "
"transfer function call. (default = %ld).\n",
iov_cnt);
print_common_help();
fprintf(stderr, "\n");
}
static int parse_cmd(int argc, char *const argv[], char **server_addr,
char **listen_addr, send_recv_type_t *send_recv_type)
{
int c = 0;
int port;
while ((c = getopt(argc, argv, "a:l:p:c:6i:s:v:m:h")) != -1) {
switch (c) {
case 'a':
*server_addr = optarg;
break;
case 'c':
if (!strcasecmp(optarg, "stream")) {
*send_recv_type = CLIENT_SERVER_SEND_RECV_STREAM;
} else if (!strcasecmp(optarg, "tag")) {
*send_recv_type = CLIENT_SERVER_SEND_RECV_TAG;
} else if (!strcasecmp(optarg, "am")) {
*send_recv_type = CLIENT_SERVER_SEND_RECV_AM;
} else {
fprintf(stderr, "Wrong communication type %s. "
"Using %s as default\n", optarg, COMM_TYPE_DEFAULT);
*send_recv_type = CLIENT_SERVER_SEND_RECV_DEFAULT;
}
break;
case 'l':
*listen_addr = optarg;
break;
case 'p':
port = atoi(optarg);
if ((port < 0) || (port > UINT16_MAX)) {
fprintf(stderr, "Wrong server port number %d\n", port);
return -1;
}
server_port = port;
break;
case '6':
ai_family = AF_INET6;
break;
case 'i':
num_iterations = atoi(optarg);
break;
case 's':
test_string_length = atol(optarg);
if (test_string_length < 0) {
fprintf(stderr, "Wrong string size %ld\n", test_string_length);
}
break;
case 'v':
iov_cnt = atol(optarg);
if (iov_cnt <= 0) {
fprintf(stderr, "Wrong iov count %ld\n", iov_cnt);
}
break;
case 'm':
test_mem_type = parse_mem_type(optarg);
if (test_mem_type == UCS_MEMORY_TYPE_LAST) {
}
break;
case 'h':
default:
usage();
return -1;
}
}
return 0;
}
static char* sockaddr_get_ip_str(const struct sockaddr_storage *sock_addr,
char *ip_str, size_t max_size)
{
struct sockaddr_in addr_in;
struct sockaddr_in6 addr_in6;
switch (sock_addr->ss_family) {
case AF_INET:
memcpy(&addr_in, sock_addr, sizeof(struct sockaddr_in));
inet_ntop(AF_INET, &addr_in.sin_addr, ip_str, max_size);
return ip_str;
case AF_INET6:
memcpy(&addr_in6, sock_addr, sizeof(struct sockaddr_in6));
inet_ntop(AF_INET6, &addr_in6.sin6_addr, ip_str, max_size);
return ip_str;
default:
return "Invalid address family";
}
}
static char* sockaddr_get_port_str(const struct sockaddr_storage *sock_addr,
char *port_str, size_t max_size)
{
struct sockaddr_in addr_in;
struct sockaddr_in6 addr_in6;
switch (sock_addr->ss_family) {
case AF_INET:
memcpy(&addr_in, sock_addr, sizeof(struct sockaddr_in));
snprintf(port_str, max_size, "%d", ntohs(addr_in.sin_port));
return port_str;
case AF_INET6:
memcpy(&addr_in6, sock_addr, sizeof(struct sockaddr_in6));
snprintf(port_str, max_size, "%d", ntohs(addr_in6.sin6_port));
return port_str;
default:
return "Invalid address family";
}
}
static int client_server_communication(ucp_worker_h worker, ucp_ep_h ep,
send_recv_type_t send_recv_type,
int is_server, int current_iter)
{
int ret;
switch (send_recv_type) {
case CLIENT_SERVER_SEND_RECV_STREAM:
/* Client-Server communication via Stream API */
ret = send_recv_stream(worker, ep, is_server, current_iter);
break;
case CLIENT_SERVER_SEND_RECV_TAG:
/* Client-Server communication via Tag-Matching API */
ret = send_recv_tag(worker, ep, is_server, current_iter);
break;
case CLIENT_SERVER_SEND_RECV_AM:
/* Client-Server communication via AM API. */
ret = send_recv_am(worker, ep, is_server, current_iter);
break;
default:
fprintf(stderr, "unknown send-recv type %d\n", send_recv_type);
return -1;
}
return ret;
}
static int init_worker(ucp_context_h ucp_context, ucp_worker_h *ucp_worker)
{
ucp_worker_params_t worker_params;
ucs_status_t status;
int ret = 0;
memset(&worker_params, 0, sizeof(worker_params));
status = ucp_worker_create(ucp_context, &worker_params, ucp_worker);
if (status != UCS_OK) {
fprintf(stderr, "failed to ucp_worker_create (%s)\n", ucs_status_string(status));
ret = -1;
}
return ret;
}
static void server_conn_handle_cb(ucp_conn_request_h conn_request, void *arg)
{
ucx_server_ctx_t *context = arg;
char ip_str[IP_STRING_LEN];
char port_str[PORT_STRING_LEN];
ucs_status_t status;
status = ucp_conn_request_query(conn_request, &attr);
if (status == UCS_OK) {
printf("Server received a connection request from client at address %s:%s\n",
sockaddr_get_ip_str(&attr.client_address, ip_str, sizeof(ip_str)),
sockaddr_get_port_str(&attr.client_address, port_str, sizeof(port_str)));
} else if (status != UCS_ERR_UNSUPPORTED) {
fprintf(stderr, "failed to query the connection request (%s)\n",
ucs_status_string(status));
}
if (context->conn_request == NULL) {
context->conn_request = conn_request;
} else {
/* The server is already handling a connection request from a client,
* reject this new one */
printf("Rejecting a connection request. "
"Only one client at a time is supported.\n");
status = ucp_listener_reject(context->listener, conn_request);
if (status != UCS_OK) {
fprintf(stderr, "server failed to reject a connection request: (%s)\n",
ucs_status_string(status));
}
}
}
static ucs_status_t server_create_ep(ucp_worker_h data_worker,
ucp_conn_request_h conn_request,
ucp_ep_h *server_ep)
{
ucp_ep_params_t ep_params;
ucs_status_t status;
/* Server creates an ep to the client on the data worker.
* This is not the worker the listener was created on.
* The client side should have initiated the connection, leading
* to this ep's creation */
ep_params.conn_request = conn_request;
ep_params.err_handler.cb = err_cb;
ep_params.err_handler.arg = NULL;
status = ucp_ep_create(data_worker, &ep_params, server_ep);
if (status != UCS_OK) {
fprintf(stderr, "failed to create an endpoint on the server: (%s)\n",
ucs_status_string(status));
}
return status;
}
start_server(ucp_worker_h ucp_worker, ucx_server_ctx_t *context,
ucp_listener_h *listener_p, const char *address_str)
{
struct sockaddr_storage listen_addr;
ucs_status_t status;
char ip_str[IP_STRING_LEN];
char port_str[PORT_STRING_LEN];
set_sock_addr(address_str, &listen_addr);
params.field_mask = UCP_LISTENER_PARAM_FIELD_SOCK_ADDR |
params.sockaddr.addr = (const struct sockaddr*)&listen_addr;
params.sockaddr.addrlen = sizeof(listen_addr);
params.conn_handler.cb = server_conn_handle_cb;
params.conn_handler.arg = context;
/* Create a listener on the server side to listen on the given address.*/
status = ucp_listener_create(ucp_worker, &params, listener_p);
if (status != UCS_OK) {
fprintf(stderr, "failed to listen (%s)\n", ucs_status_string(status));
goto out;
}
/* Query the created listener to get the port it is listening on. */
status = ucp_listener_query(*listener_p, &attr);
if (status != UCS_OK) {
fprintf(stderr, "failed to query the listener (%s)\n",
ucs_status_string(status));
ucp_listener_destroy(*listener_p);
goto out;
}
fprintf(stderr, "server is listening on IP %s port %s\n",
sockaddr_get_ip_str(&attr.sockaddr, ip_str, IP_STRING_LEN),
sockaddr_get_port_str(&attr.sockaddr, port_str, PORT_STRING_LEN));
printf("Waiting for connection...\n");
out:
return status;
}
static int client_server_do_work(ucp_worker_h ucp_worker, ucp_ep_h ep,
send_recv_type_t send_recv_type, int is_server)
{
int i, ret = 0;
connection_closed = 0;
for (i = 0; i < num_iterations; i++) {
ret = client_server_communication(ucp_worker, ep, send_recv_type,
is_server, i);
if (ret != 0) {
fprintf(stderr, "%s failed on iteration #%d\n",
(is_server ? "server": "client"), i + 1);
goto out;
}
}
/* FIN message in reverse direction to acknowledge delivery */
ret = client_server_communication(ucp_worker, ep, send_recv_type,
!is_server, i + 1);
if (ret != 0) {
fprintf(stderr, "%s failed on FIN message\n",
(is_server ? "server": "client"));
goto out;
}
printf("%s FIN message\n", is_server ? "sent" : "received");
/* Server waits until the client closed the connection after receiving FIN */
while (is_server && !connection_closed) {
ucp_worker_progress(ucp_worker);
}
out:
return ret;
}
static int run_server(ucp_context_h ucp_context, ucp_worker_h ucp_worker,
char *listen_addr, send_recv_type_t send_recv_type)
{
ucx_server_ctx_t context;
ucp_worker_h ucp_data_worker;
ucp_ep_h server_ep;
ucs_status_t status;
int ret;
/* Create a data worker (to be used for data exchange between the server
* and the client after the connection between them was established) */
ret = init_worker(ucp_context, &ucp_data_worker);
if (ret != 0) {
goto err;
}
if (send_recv_type == CLIENT_SERVER_SEND_RECV_AM) {
/* Initialize Active Message data handler */
param.id = TEST_AM_ID;
param.cb = ucp_am_data_cb;
param.arg = ucp_data_worker; /* not used in our callback */
status = ucp_worker_set_am_recv_handler(ucp_data_worker,
&param);
if (status != UCS_OK) {
ret = -1;
goto err_worker;
}
}
/* Initialize the server's context. */
context.conn_request = NULL;
/* Create a listener on the worker created at first. The 'connection
* worker' - used for connection establishment between client and server.
* This listener will stay open for listening to incoming connection
* requests from the client */
status = start_server(ucp_worker, &context, &context.listener, listen_addr);
if (status != UCS_OK) {
ret = -1;
goto err_worker;
}
/* Server is always up listening */
while (1) {
/* Wait for the server to receive a connection request from the client.
* If there are multiple clients for which the server's connection request
* callback is invoked, i.e. several clients are trying to connect in
* parallel, the server will handle only the first one and reject the rest */
while (context.conn_request == NULL) {
ucp_worker_progress(ucp_worker);
}
/* Server creates an ep to the client on the data worker.
* This is not the worker the listener was created on.
* The client side should have initiated the connection, leading
* to this ep's creation */
status = server_create_ep(ucp_data_worker, context.conn_request,
&server_ep);
if (status != UCS_OK) {
ret = -1;
goto err_listener;
}
/* The server waits for all the iterations to complete before moving on
* to the next client */
ret = client_server_do_work(ucp_data_worker, server_ep, send_recv_type,
1);
if (ret != 0) {
goto err_ep;
}
/* Close the endpoint to the client */
ep_close(ucp_data_worker, server_ep, UCP_EP_CLOSE_MODE_FORCE);
/* Reinitialize the server's context to be used for the next client */
context.conn_request = NULL;
printf("Waiting for connection...\n");
}
err_ep:
ep_close(ucp_data_worker, server_ep, UCP_EP_CLOSE_MODE_FORCE);
err_listener:
ucp_listener_destroy(context.listener);
err_worker:
ucp_worker_destroy(ucp_data_worker);
err:
return ret;
}
static int run_client(ucp_worker_h ucp_worker, char *server_addr,
send_recv_type_t send_recv_type)
{
ucp_ep_h client_ep;
ucs_status_t status;
int ret;
status = start_client(ucp_worker, server_addr, &client_ep);
if (status != UCS_OK) {
fprintf(stderr, "failed to start client (%s)\n", ucs_status_string(status));
ret = -1;
goto out;
}
ret = client_server_do_work(ucp_worker, client_ep, send_recv_type, 0);
/* Close the endpoint to the server */
ep_close(ucp_worker, client_ep, UCP_EP_CLOSE_MODE_FLUSH);
out:
return ret;
}
static int init_context(ucp_context_h *ucp_context, ucp_worker_h *ucp_worker,
send_recv_type_t send_recv_type)
{
/* UCP objects */
ucs_status_t status;
int ret = 0;
memset(&ucp_params, 0, sizeof(ucp_params));
/* UCP initialization */
if (send_recv_type == CLIENT_SERVER_SEND_RECV_STREAM) {
} else if (send_recv_type == CLIENT_SERVER_SEND_RECV_TAG) {
ucp_params.features = UCP_FEATURE_TAG;
} else {
ucp_params.features = UCP_FEATURE_AM;
}
status = ucp_init(&ucp_params, NULL, ucp_context);
if (status != UCS_OK) {
fprintf(stderr, "failed to ucp_init (%s)\n", ucs_status_string(status));
ret = -1;
goto err;
}
ret = init_worker(*ucp_context, ucp_worker);
if (ret != 0) {
goto err_cleanup;
}
return ret;
err_cleanup:
ucp_cleanup(*ucp_context);
err:
return ret;
}
int main(int argc, char **argv)
{
send_recv_type_t send_recv_type = CLIENT_SERVER_SEND_RECV_DEFAULT;
char *server_addr = NULL;
char *listen_addr = NULL;
int ret;
/* UCP objects */
ucp_context_h ucp_context;
ucp_worker_h ucp_worker;
ret = parse_cmd(argc, argv, &server_addr, &listen_addr, &send_recv_type);
if (ret != 0) {
goto err;
}
/* Initialize the UCX required objects */
ret = init_context(&ucp_context, &ucp_worker, send_recv_type);
if (ret != 0) {
goto err;
}
/* Client-Server initialization */
if (server_addr == NULL) {
/* Server side */
ret = run_server(ucp_context, ucp_worker, listen_addr, send_recv_type);
} else {
/* Client side */
ret = run_client(ucp_worker, server_addr, send_recv_type);
}
ucp_worker_destroy(ucp_worker);
ucp_cleanup(ucp_context);
err:
return ret;
}
+
+ + + + diff --git a/api/v1.14/html/ucp_hello_world_8c-example.html b/api/v1.14/html/ucp_hello_world_8c-example.html new file mode 100644 index 00000000000..28a0f368e90 --- /dev/null +++ b/api/v1.14/html/ucp_hello_world_8c-example.html @@ -0,0 +1,120 @@ + + + + + + +UCX: ucp_hello_world.c + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ucp_hello_world.c
+
+
+

UCP hello world client / server example utility.

+
#ifndef HAVE_CONFIG_H
# define HAVE_CONFIG_H /* Force using config.h, so test would fail if header
actually tries to use it */
#endif
/*
* UCP hello world client / server example utility
* -----------------------------------------------
*
* Server side:
*
* ./ucp_hello_world
*
* Client side:
*
* ./ucp_hello_world -n <server host name>
*
* Notes:
*
* - Client acquires Server UCX address via TCP socket
*
*
* Author:
*
* Ilya Nelkenbaum <ilya@nelkenbaum.com>
* Sergey Shalnov <sergeysh@mellanox.com> 7-June-2016
*/
#include "hello_world_util.h"
#include "ucp_util.h"
#include <ucp/api/ucp.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <sys/epoll.h>
#include <netinet/in.h>
#include <assert.h>
#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h> /* getopt */
#include <pthread.h> /* pthread_self */
#include <errno.h> /* errno */
#include <time.h>
#include <signal.h> /* raise */
struct msg {
uint64_t data_len;
};
struct ucx_context {
int completed;
};
enum ucp_test_mode_t {
TEST_MODE_PROBE,
TEST_MODE_WAIT,
TEST_MODE_EVENTFD
} ucp_test_mode = TEST_MODE_PROBE;
typedef enum {
FAILURE_MODE_NONE,
FAILURE_MODE_SEND, /* fail send operation on server */
FAILURE_MODE_RECV, /* fail receive operation on client */
FAILURE_MODE_KEEPALIVE /* fail without communication on client */
} failure_mode_t;
static struct err_handling {
failure_mode_t failure_mode;
} err_handling_opt;
static ucs_status_t ep_status = UCS_OK;
static uint16_t server_port = 13337;
static sa_family_t ai_family = AF_INET;
static long test_string_length = 16;
static const ucp_tag_t tag = 0x1337a880u;
static const ucp_tag_t tag_mask = UINT64_MAX;
static const char *addr_msg_str = "UCX address message";
static const char *data_msg_str = "UCX data message";
static int print_config = 0;
static ucs_status_t parse_cmd(int argc, char * const argv[], char **server_name);
static void set_msg_data_len(struct msg *msg, uint64_t data_len)
{
mem_type_memcpy(&msg->data_len, &data_len, sizeof(data_len));
}
static void request_init(void *request)
{
struct ucx_context *contex = (struct ucx_context *)request;
contex->completed = 0;
}
static void send_handler(void *request, ucs_status_t status, void *ctx)
{
struct ucx_context *context = (struct ucx_context *)request;
const char *str = (const char *)ctx;
context->completed = 1;
printf("[0x%x] send handler called for \"%s\" with status %d (%s)\n",
(unsigned int)pthread_self(), str, status,
ucs_status_string(status));
}
static void failure_handler(void *arg, ucp_ep_h ep, ucs_status_t status)
{
ucs_status_t *arg_status = (ucs_status_t *)arg;
printf("[0x%x] failure handler called with status %d (%s)\n",
(unsigned int)pthread_self(), status, ucs_status_string(status));
*arg_status = status;
}
static void recv_handler(void *request, ucs_status_t status,
const ucp_tag_recv_info_t *info, void *user_data)
{
struct ucx_context *context = (struct ucx_context *)request;
context->completed = 1;
printf("[0x%x] receive handler called with status %d (%s), length %lu\n",
(unsigned int)pthread_self(), status, ucs_status_string(status),
info->length);
}
static ucs_status_t ucx_wait(ucp_worker_h ucp_worker, struct ucx_context *request,
const char *op_str, const char *data_str)
{
ucs_status_t status;
if (UCS_PTR_IS_ERR(request)) {
status = UCS_PTR_STATUS(request);
} else if (UCS_PTR_IS_PTR(request)) {
while (!request->completed) {
ucp_worker_progress(ucp_worker);
}
request->completed = 0;
status = ucp_request_check_status(request);
ucp_request_free(request);
} else {
status = UCS_OK;
}
if (status != UCS_OK) {
fprintf(stderr, "unable to %s %s (%s)\n", op_str, data_str,
ucs_status_string(status));
} else {
printf("finish to %s %s\n", op_str, data_str);
}
return status;
}
static ucs_status_t test_poll_wait(ucp_worker_h ucp_worker)
{
int err = 0;
int epoll_fd_local = 0;
int epoll_fd = 0;
ucs_status_t status;
struct epoll_event ev;
ev.data.u64 = 0;
status = ucp_worker_get_efd(ucp_worker, &epoll_fd);
CHKERR_JUMP(UCS_OK != status, "ucp_worker_get_efd", err);
/* It is recommended to copy original fd */
epoll_fd_local = epoll_create(1);
ev.data.fd = epoll_fd;
ev.events = EPOLLIN;
err = epoll_ctl(epoll_fd_local, EPOLL_CTL_ADD, epoll_fd, &ev);
CHKERR_JUMP(err < 0, "add original socket to the new epoll\n", err_fd);
/* Need to prepare ucp_worker before epoll_wait */
status = ucp_worker_arm(ucp_worker);
if (status == UCS_ERR_BUSY) { /* some events are arrived already */
ret = UCS_OK;
goto err_fd;
}
CHKERR_JUMP(status != UCS_OK, "ucp_worker_arm\n", err_fd);
do {
err = epoll_wait(epoll_fd_local, &ev, 1, -1);
} while ((err == -1) && (errno == EINTR));
ret = UCS_OK;
err_fd:
close(epoll_fd_local);
err:
return ret;
}
static void ep_close_err_mode(ucp_worker_h ucp_worker, ucp_ep_h ucp_ep)
{
uint64_t ep_close_flags;
if (err_handling_opt.ucp_err_mode == UCP_ERR_HANDLING_MODE_PEER) {
ep_close_flags = UCP_EP_CLOSE_FLAG_FORCE;
} else {
ep_close_flags = 0;
}
ep_close(ucp_worker, ucp_ep, ep_close_flags);
}
static int run_ucx_client(ucp_worker_h ucp_worker,
ucp_address_t *local_addr, size_t local_addr_len,
ucp_address_t *peer_addr, size_t peer_addr_len)
{
struct msg *msg = NULL;
size_t msg_len = 0;
int ret = -1;
ucp_request_param_t send_param, recv_param;
ucs_status_t status;
ucp_ep_h server_ep;
ucp_ep_params_t ep_params;
struct ucx_context *request;
char *str;
/* Send client UCX address to server */
ep_params.address = peer_addr;
ep_params.err_mode = err_handling_opt.ucp_err_mode;
ep_params.err_handler.cb = failure_handler;
ep_params.err_handler.arg = NULL;
ep_params.user_data = &ep_status;
status = ucp_ep_create(ucp_worker, &ep_params, &server_ep);
CHKERR_JUMP(status != UCS_OK, "ucp_ep_create\n", err);
msg_len = sizeof(*msg) + local_addr_len;
msg = malloc(msg_len);
CHKERR_JUMP(msg == NULL, "allocate memory\n", err_ep);
memset(msg, 0, msg_len);
msg->data_len = local_addr_len;
memcpy(msg + 1, local_addr, local_addr_len);
send_param.cb.send = send_handler;
send_param.user_data = (void*)addr_msg_str;
request = ucp_tag_send_nbx(server_ep, msg, msg_len, tag,
&send_param);
status = ucx_wait(ucp_worker, request, "send",
addr_msg_str);
if (status != UCS_OK) {
free(msg);
goto err_ep;
}
free(msg);
if (err_handling_opt.failure_mode == FAILURE_MODE_RECV) {
fprintf(stderr, "Emulating failure before receive operation on client side\n");
raise(SIGKILL);
}
/* Receive test string from server */
for (;;) {
CHKERR_JUMP(ep_status != UCS_OK, "receive data: EP disconnected\n", err_ep);
/* Probing incoming events in non-block mode */
msg_tag = ucp_tag_probe_nb(ucp_worker, tag, tag_mask, 1, &info_tag);
if (msg_tag != NULL) {
/* Message arrived */
break;
} else if (ucp_worker_progress(ucp_worker)) {
/* Some events were polled; try again without going to sleep */
continue;
}
/* If we got here, ucp_worker_progress() returned 0, so we can sleep.
* Following blocked methods used to polling internal file descriptor
* to make CPU idle and don't spin loop
*/
if (ucp_test_mode == TEST_MODE_WAIT) {
/* Polling incoming events*/
status = ucp_worker_wait(ucp_worker);
CHKERR_JUMP(status != UCS_OK, "ucp_worker_wait\n", err_ep);
} else if (ucp_test_mode == TEST_MODE_EVENTFD) {
status = test_poll_wait(ucp_worker);
CHKERR_JUMP(status != UCS_OK, "test_poll_wait\n", err_ep);
}
}
if (err_handling_opt.failure_mode == FAILURE_MODE_KEEPALIVE) {
fprintf(stderr, "Emulating unexpected failure after receive completion "
"on client side, server should detect error by "
"keepalive mechanism\n");
raise(SIGKILL);
}
msg = mem_type_malloc(info_tag.length);
CHKERR_JUMP(msg == NULL, "allocate memory\n", err_ep);
recv_param.datatype = ucp_dt_make_contig(1);
recv_param.cb.recv = recv_handler;
request = ucp_tag_msg_recv_nbx(ucp_worker, msg, info_tag.length, msg_tag,
&recv_param);
status = ucx_wait(ucp_worker, request, "receive", data_msg_str);
if (status != UCS_OK) {
mem_type_free(msg);
goto err_ep;
}
str = calloc(1, test_string_length);
if (str == NULL) {
fprintf(stderr, "Memory allocation failed\n");
ret = -1;
goto err_msg;
}
mem_type_memcpy(str, msg + 1, test_string_length);
printf("\n\n----- UCP TEST SUCCESS ----\n\n");
printf("%s", str);
printf("\n\n---------------------------\n\n");
free(str);
ret = 0;
err_msg:
mem_type_free(msg);
err_ep:
ep_close_err_mode(ucp_worker, server_ep);
err:
return ret;
}
static ucs_status_t flush_ep(ucp_worker_h worker, ucp_ep_h ep)
{
void *request;
param.op_attr_mask = 0;
request = ucp_ep_flush_nbx(ep, &param);
if (request == NULL) {
return UCS_OK;
} else if (UCS_PTR_IS_ERR(request)) {
return UCS_PTR_STATUS(request);
} else {
ucs_status_t status;
do {
status = ucp_request_check_status(request);
} while (status == UCS_INPROGRESS);
ucp_request_free(request);
return status;
}
}
static int run_ucx_server(ucp_worker_h ucp_worker)
{
struct msg *msg = NULL;
struct ucx_context *request = NULL;
size_t msg_len = 0;
ucp_request_param_t send_param, recv_param;
ucs_status_t status;
ucp_ep_h client_ep;
ucp_ep_params_t ep_params;
ucp_address_t *peer_addr;
size_t peer_addr_len;
int ret;
/* Receive client UCX address */
do {
/* Progressing before probe to update the state */
ucp_worker_progress(ucp_worker);
/* Probing incoming events in non-block mode */
msg_tag = ucp_tag_probe_nb(ucp_worker, tag, tag_mask, 1, &info_tag);
} while (msg_tag == NULL);
msg = malloc(info_tag.length);
CHKERR_ACTION(msg == NULL, "allocate memory\n", ret = -1; goto err);
recv_param.datatype = ucp_dt_make_contig(1);
recv_param.cb.recv = recv_handler;
request = ucp_tag_msg_recv_nbx(ucp_worker, msg, info_tag.length,
msg_tag, &recv_param);
status = ucx_wait(ucp_worker, request, "receive", addr_msg_str);
if (status != UCS_OK) {
free(msg);
ret = -1;
goto err;
}
if (err_handling_opt.failure_mode == FAILURE_MODE_SEND) {
fprintf(stderr, "Emulating unexpected failure on server side, client "
"should detect error by keepalive mechanism\n");
free(msg);
raise(SIGKILL);
exit(1);
}
peer_addr_len = msg->data_len;
peer_addr = malloc(peer_addr_len);
if (peer_addr == NULL) {
fprintf(stderr, "unable to allocate memory for peer address\n");
free(msg);
ret = -1;
goto err;
}
memcpy(peer_addr, msg + 1, peer_addr_len);
free(msg);
/* Send test string to client */
ep_params.address = peer_addr;
ep_params.err_mode = err_handling_opt.ucp_err_mode;
ep_params.err_handler.cb = failure_handler;
ep_params.err_handler.arg = NULL;
ep_params.user_data = &ep_status;
status = ucp_ep_create(ucp_worker, &ep_params, &client_ep);
/* If peer failure testing was requested, it could be possible that UCP EP
* couldn't be created; in this case set `ret = 0` to report success */
ret = (err_handling_opt.failure_mode != FAILURE_MODE_NONE) ? 0 : -1;
CHKERR_ACTION(status != UCS_OK, "ucp_ep_create\n", goto err);
msg_len = sizeof(*msg) + test_string_length;
msg = mem_type_malloc(msg_len);
CHKERR_ACTION(msg == NULL, "allocate memory\n", ret = -1; goto err_ep);
mem_type_memset(msg, 0, msg_len);
set_msg_data_len(msg, msg_len - sizeof(*msg));
ret = generate_test_string((char *)(msg + 1), test_string_length);
CHKERR_JUMP(ret < 0, "generate test string", err_free_mem_type_msg);
if (err_handling_opt.failure_mode == FAILURE_MODE_RECV) {
/* Sleep for small amount of time to ensure that client was killed
* and peer failure handling is covered */
sleep(5);
}
ucp_worker_progress(ucp_worker);
send_param.cb.send = send_handler;
send_param.user_data = (void*)data_msg_str;
send_param.memory_type = test_mem_type;
request = ucp_tag_send_nbx(client_ep, msg, msg_len, tag,
&send_param);
status = ucx_wait(ucp_worker, request, "send",
data_msg_str);
if (status != UCS_OK) {
if (err_handling_opt.failure_mode != FAILURE_MODE_NONE) {
ret = -1;
} else {
/* If peer failure testing was requested, set `ret = 0` to report
* success from the application */
ret = 0;
/* Make sure that failure_handler was called */
while (ep_status == UCS_OK) {
ucp_worker_progress(ucp_worker);
}
}
goto err_free_mem_type_msg;
}
if (err_handling_opt.failure_mode == FAILURE_MODE_KEEPALIVE) {
fprintf(stderr, "Waiting for client is terminated\n");
while (ep_status == UCS_OK) {
ucp_worker_progress(ucp_worker);
}
}
status = flush_ep(ucp_worker, client_ep);
printf("flush_ep completed with status %d (%s)\n",
status, ucs_status_string(status));
ret = 0;
err_free_mem_type_msg:
mem_type_free(msg);
err_ep:
ep_close_err_mode(ucp_worker, client_ep);
err:
return ret;
}
static void progress_worker(void *arg)
{
}
int main(int argc, char **argv)
{
/* UCP temporary vars */
ucp_worker_attr_t worker_attr;
ucp_worker_params_t worker_params;
ucp_config_t *config;
ucs_status_t status;
/* UCP handler objects */
ucp_context_h ucp_context;
ucp_worker_h ucp_worker;
/* OOB connection vars */
uint64_t local_addr_len = 0;
ucp_address_t *local_addr = NULL;
uint64_t peer_addr_len = 0;
ucp_address_t *peer_addr = NULL;
char *client_target_name = NULL;
int oob_sock = -1;
int ret = -1;
memset(&ucp_params, 0, sizeof(ucp_params));
memset(&worker_attr, 0, sizeof(worker_attr));
memset(&worker_params, 0, sizeof(worker_params));
/* Parse the command line */
status = parse_cmd(argc, argv, &client_target_name);
CHKERR_JUMP(status != UCS_OK, "parse_cmd\n", err);
/* UCP initialization */
status = ucp_config_read(NULL, NULL, &config);
CHKERR_JUMP(status != UCS_OK, "ucp_config_read\n", err);
ucp_params.features = UCP_FEATURE_TAG;
if (ucp_test_mode == TEST_MODE_WAIT || ucp_test_mode == TEST_MODE_EVENTFD) {
}
ucp_params.request_size = sizeof(struct ucx_context);
ucp_params.request_init = request_init;
status = ucp_init(&ucp_params, config, &ucp_context);
if (print_config) {
ucp_config_print(config, stdout, NULL, UCS_CONFIG_PRINT_CONFIG);
}
CHKERR_JUMP(status != UCS_OK, "ucp_init\n", err);
status = ucp_worker_create(ucp_context, &worker_params, &ucp_worker);
CHKERR_JUMP(status != UCS_OK, "ucp_worker_create\n", err_cleanup);
status = ucp_worker_query(ucp_worker, &worker_attr);
CHKERR_JUMP(status != UCS_OK, "ucp_worker_query\n", err_worker);
local_addr_len = worker_attr.address_length;
local_addr = worker_attr.address;
printf("[0x%x] local address length: %lu\n",
(unsigned int)pthread_self(), local_addr_len);
/* OOB connection establishment */
if (client_target_name != NULL) {
oob_sock = connect_common(client_target_name, server_port, ai_family);
CHKERR_JUMP(oob_sock < 0, "client_connect\n", err_addr);
ret = recv(oob_sock, &peer_addr_len, sizeof(peer_addr_len), MSG_WAITALL);
CHKERR_JUMP_RETVAL(ret != (int)sizeof(peer_addr_len),
"receive address length\n", err_addr, ret);
peer_addr = malloc(peer_addr_len);
CHKERR_JUMP(!peer_addr, "allocate memory\n", err_addr);
ret = recv(oob_sock, peer_addr, peer_addr_len, MSG_WAITALL);
CHKERR_JUMP_RETVAL(ret != (int)peer_addr_len,
"receive address\n", err_peer_addr, ret);
} else {
oob_sock = connect_common(NULL, server_port, ai_family);
CHKERR_JUMP(oob_sock < 0, "server_connect\n", err_peer_addr);
ret = send(oob_sock, &local_addr_len, sizeof(local_addr_len), 0);
CHKERR_JUMP_RETVAL(ret != (int)sizeof(local_addr_len),
"send address length\n", err_peer_addr, ret);
ret = send(oob_sock, local_addr, local_addr_len, 0);
CHKERR_JUMP_RETVAL(ret != (int)local_addr_len, "send address\n",
err_peer_addr, ret);
}
if (client_target_name != NULL) {
ret = run_ucx_client(ucp_worker,
local_addr, local_addr_len,
peer_addr, peer_addr_len);
} else {
ret = run_ucx_server(ucp_worker);
}
if (!ret && (err_handling_opt.failure_mode == FAILURE_MODE_NONE)) {
/* Make sure remote is disconnected before destroying local worker */
ret = barrier(oob_sock, progress_worker, ucp_worker);
}
close(oob_sock);
err_peer_addr:
free(peer_addr);
err_addr:
ucp_worker_release_address(ucp_worker, local_addr);
err_worker:
ucp_worker_destroy(ucp_worker);
err_cleanup:
ucp_cleanup(ucp_context);
err:
return ret;
}
static void print_usage()
{
fprintf(stderr, "Usage: ucp_hello_world [parameters]\n");
fprintf(stderr, "UCP hello world client/server example utility\n");
fprintf(stderr, "\nParameters are:\n");
fprintf(stderr, " -w Select test mode \"wait\" to test "
"ucp_worker_wait function\n");
fprintf(stderr, " -f Select test mode \"event fd\" to test "
"ucp_worker_get_efd function with later poll\n");
fprintf(stderr, " -b Select test mode \"busy polling\" to test "
"ucp_tag_probe_nb and ucp_worker_progress (default)\n");
fprintf(stderr, " -n <name> Set node name or IP address "
"of the server (required for client and should be ignored "
"for server)\n");
fprintf(stderr, " -e <type> Emulate unexpected failure and handle an "
"error with enabled UCP_ERR_HANDLING_MODE_PEER\n");
fprintf(stderr, " send - send failure on server side "
"before send initiated\n");
fprintf(stderr, " recv - receive failure on client side "
"before receive completed\n");
fprintf(stderr, " keepalive - keepalive failure on client side "
"after communication completed\n");
fprintf(stderr, " -c Print UCP configuration\n");
print_common_help();
fprintf(stderr, "\n");
}
ucs_status_t parse_cmd(int argc, char * const argv[], char **server_name)
{
int c = 0, idx = 0;
err_handling_opt.ucp_err_mode = UCP_ERR_HANDLING_MODE_NONE;
err_handling_opt.failure_mode = FAILURE_MODE_NONE;
while ((c = getopt(argc, argv, "wfb6e:n:p:s:m:ch")) != -1) {
switch (c) {
case 'w':
ucp_test_mode = TEST_MODE_WAIT;
break;
case 'f':
ucp_test_mode = TEST_MODE_EVENTFD;
break;
case 'b':
ucp_test_mode = TEST_MODE_PROBE;
break;
case 'e':
err_handling_opt.ucp_err_mode = UCP_ERR_HANDLING_MODE_PEER;
if (!strcmp(optarg, "recv")) {
err_handling_opt.failure_mode = FAILURE_MODE_RECV;
} else if (!strcmp(optarg, "send")) {
err_handling_opt.failure_mode = FAILURE_MODE_SEND;
} else if (!strcmp(optarg, "keepalive")) {
err_handling_opt.failure_mode = FAILURE_MODE_KEEPALIVE;
} else {
print_usage();
}
break;
case 'n':
*server_name = optarg;
break;
case '6':
ai_family = AF_INET6;
break;
case 'p':
server_port = atoi(optarg);
if (server_port <= 0) {
fprintf(stderr, "Wrong server port number %d\n", server_port);
}
break;
case 's':
test_string_length = atol(optarg);
if (test_string_length < 0) {
fprintf(stderr, "Wrong string size %ld\n", test_string_length);
}
break;
case 'm':
test_mem_type = parse_mem_type(optarg);
if (test_mem_type == UCS_MEMORY_TYPE_LAST) {
}
break;
case 'c':
print_config = 1;
break;
case 'h':
default:
print_usage();
}
}
fprintf(stderr, "INFO: UCP_HELLO_WORLD mode = %d server = %s port = %d, pid = %d\n",
ucp_test_mode, *server_name, server_port, getpid());
for (idx = optind; idx < argc; idx++) {
fprintf(stderr, "WARNING: Non-option argument %s\n", argv[idx]);
}
return UCS_OK;
}
+
+ + + + diff --git a/api/v1.14/html/uct_8h_source.html b/api/v1.14/html/uct_8h_source.html new file mode 100644 index 00000000000..fae613f2dd0 --- /dev/null +++ b/api/v1.14/html/uct_8h_source.html @@ -0,0 +1,437 @@ + + + + + + +UCX: uct.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
uct.h
+
+
+
1 
10 #ifndef UCT_H_
11 #define UCT_H_
12 
13 #include <uct/api/uct_def.h>
14 #include <uct/api/tl.h>
15 #include <uct/api/version.h>
16 #include <ucs/async/async_fwd.h>
17 #include <ucs/datastruct/callbackq.h>
18 #include <ucs/datastruct/linear_func.h>
19 #include <ucs/memory/memory_type.h>
20 #include <ucs/type/status.h>
21 #include <ucs/type/thread_mode.h>
22 #include <ucs/type/cpu_set.h>
23 #include <ucs/stats/stats_fwd.h>
24 #include <ucs/sys/compiler_def.h>
25 #include <ucs/sys/topo/base/topo.h>
26 
27 #include <sys/socket.h>
28 #include <stdio.h>
29 #include <sched.h>
30 
31 BEGIN_C_DECLS
32 
217 typedef struct uct_md_resource_desc {
218  char md_name[UCT_MD_NAME_MAX];
220 
221 
234 };
235 
236 
244 typedef struct uct_component_attr {
251  uint64_t field_mask;
252 
254  char name[UCT_COMPONENT_NAME_MAX];
255 
258 
273 
277  uint64_t flags;
279 
280 
288 enum {
293  UCT_COMPONENT_FLAG_CM = UCS_BIT(0),
294 
300 };
301 
302 
307 typedef enum {
314 
315 
327 typedef struct uct_tl_resource_desc {
328  char tl_name[UCT_TL_NAME_MAX];
329  char dev_name[UCT_DEVICE_NAME_MAX];
332  ucs_sys_device_t sys_device;
335 
336 #define UCT_TL_RESOURCE_DESC_FMT "%s/%s"
337 #define UCT_TL_RESOURCE_DESC_ARG(_resource) (_resource)->tl_name, (_resource)->dev_name
338 
339 
347 typedef enum uct_atomic_op {
348  UCT_ATOMIC_OP_ADD,
349  UCT_ATOMIC_OP_AND,
350  UCT_ATOMIC_OP_OR,
351  UCT_ATOMIC_OP_XOR,
352  UCT_ATOMIC_OP_SWAP,
353  UCT_ATOMIC_OP_CSWAP,
354  UCT_ATOMIC_OP_LAST
355 } uct_atomic_op_t;
356 
357 
368  /* Active message capabilities */
369 #define UCT_IFACE_FLAG_AM_SHORT UCS_BIT(0)
370 #define UCT_IFACE_FLAG_AM_BCOPY UCS_BIT(1)
371 #define UCT_IFACE_FLAG_AM_ZCOPY UCS_BIT(2)
373 #define UCT_IFACE_FLAG_PENDING UCS_BIT(3)
375  /* PUT capabilities */
376 #define UCT_IFACE_FLAG_PUT_SHORT UCS_BIT(4)
377 #define UCT_IFACE_FLAG_PUT_BCOPY UCS_BIT(5)
378 #define UCT_IFACE_FLAG_PUT_ZCOPY UCS_BIT(6)
380  /* GET capabilities */
381 #define UCT_IFACE_FLAG_GET_SHORT UCS_BIT(8)
382 #define UCT_IFACE_FLAG_GET_BCOPY UCS_BIT(9)
383 #define UCT_IFACE_FLAG_GET_ZCOPY UCS_BIT(10)
385  /* Atomic operations domain */
386 #define UCT_IFACE_FLAG_ATOMIC_CPU UCS_BIT(30)
388 #define UCT_IFACE_FLAG_ATOMIC_DEVICE UCS_BIT(31)
392  /* Error handling capabilities */
393 #define UCT_IFACE_FLAG_ERRHANDLE_SHORT_BUF UCS_BIT(32)
394 #define UCT_IFACE_FLAG_ERRHANDLE_BCOPY_BUF UCS_BIT(33)
395 #define UCT_IFACE_FLAG_ERRHANDLE_ZCOPY_BUF UCS_BIT(34)
396 #define UCT_IFACE_FLAG_ERRHANDLE_AM_ID UCS_BIT(35)
397 #define UCT_IFACE_FLAG_ERRHANDLE_REMOTE_MEM UCS_BIT(36)
398 #define UCT_IFACE_FLAG_ERRHANDLE_BCOPY_LEN UCS_BIT(37)
399 #define UCT_IFACE_FLAG_ERRHANDLE_PEER_FAILURE UCS_BIT(38)
401 #define UCT_IFACE_FLAG_EP_CHECK UCS_BIT(39)
403  /* Connection establishment */
404 #define UCT_IFACE_FLAG_CONNECT_TO_IFACE UCS_BIT(40)
405 #define UCT_IFACE_FLAG_CONNECT_TO_EP UCS_BIT(41)
406 #define UCT_IFACE_FLAG_CONNECT_TO_SOCKADDR UCS_BIT(42)
408  /* Special transport flags */
409 #define UCT_IFACE_FLAG_AM_DUP UCS_BIT(43)
413  /* Callback invocation */
414 #define UCT_IFACE_FLAG_CB_SYNC UCS_BIT(44)
417 #define UCT_IFACE_FLAG_CB_ASYNC UCS_BIT(45)
424  /* Keepalive */
425 #define UCT_IFACE_FLAG_EP_KEEPALIVE UCS_BIT(46)
431  /* Tag matching operations */
432 #define UCT_IFACE_FLAG_TAG_EAGER_SHORT UCS_BIT(50)
433 #define UCT_IFACE_FLAG_TAG_EAGER_BCOPY UCS_BIT(51)
434 #define UCT_IFACE_FLAG_TAG_EAGER_ZCOPY UCS_BIT(52)
435 #define UCT_IFACE_FLAG_TAG_RNDV_ZCOPY UCS_BIT(53)
451  /* Event types */
452 #define UCT_IFACE_FLAG_EVENT_SEND_COMP UCS_BIT(0)
454 #define UCT_IFACE_FLAG_EVENT_RECV UCS_BIT(1)
456 #define UCT_IFACE_FLAG_EVENT_RECV_SIG UCS_BIT(2)
458  /* Event notification mechanisms */
459 #define UCT_IFACE_FLAG_EVENT_FD UCS_BIT(3)
461 #define UCT_IFACE_FLAG_EVENT_ASYNC_CB UCS_BIT(4)
472 typedef enum {
482 
483 
496  UCT_EVENT_SEND_COMP = UCS_BIT(0),
497  UCT_EVENT_RECV = UCS_BIT(1),
498  UCT_EVENT_RECV_SIG = UCS_BIT(2)
500 };
502 
507 enum uct_flush_flags {
512  UCT_FLUSH_FLAG_CANCEL = UCS_BIT(0),
527  UCT_FLUSH_FLAG_REMOTE = UCS_BIT(1)
536 };
537 
538 
543 enum uct_progress_types {
544  UCT_PROGRESS_SEND = UCS_BIT(0),
545  UCT_PROGRESS_RECV = UCS_BIT(1),
546  UCT_PROGRESS_THREAD_SAFE = UCS_BIT(7)
549 };
550 
551 
556 enum uct_msg_flags {
557  UCT_SEND_FLAG_SIGNALED = UCS_BIT(0),
563  UCT_SEND_FLAG_PEER_CHECK = UCS_BIT(1)
570 };
571 
572 
579 enum uct_cb_flags {
580  UCT_CB_FLAG_RESERVED = UCS_BIT(1),
581  UCT_CB_FLAG_ASYNC = UCS_BIT(2)
596 };
597 
598 
603 enum uct_iface_open_mode {
605  UCT_IFACE_OPEN_MODE_DEVICE = UCS_BIT(0),
606 
610 
614 };
615 
616 
627 
629  UCT_IFACE_PARAM_FIELD_OPEN_MODE = UCS_BIT(1),
633  UCT_IFACE_PARAM_FIELD_DEVICE = UCS_BIT(2),
637  UCT_IFACE_PARAM_FIELD_SOCKADDR = UCS_BIT(3),
638 
641 
644 
653 
656 
659 
662 
665 
668 
671 
674 
677 
680 
683 };
684 
689 typedef enum {
698 
703 enum {
707  UCT_MD_FLAG_ALLOC = UCS_BIT(0),
708 
712  UCT_MD_FLAG_REG = UCS_BIT(1),
713 
717  UCT_MD_FLAG_NEED_MEMH = UCS_BIT(2),
718 
723  UCT_MD_FLAG_NEED_RKEY = UCS_BIT(3),
724 
728  UCT_MD_FLAG_ADVISE = UCS_BIT(4),
729 
733  UCT_MD_FLAG_FIXED = UCS_BIT(5),
734 
741  UCT_MD_FLAG_RKEY_PTR = UCS_BIT(6),
742 
746  UCT_MD_FLAG_SOCKADDR = UCS_BIT(7),
747 
751  UCT_MD_FLAG_INVALIDATE = UCS_BIT(8),
752 
757  UCT_MD_FLAG_EXPORTED_MKEY = UCS_BIT(9),
758 
763 };
764 
769 enum uct_md_mem_flags {
774  UCT_MD_MEM_FLAG_NONBLOCK = UCS_BIT(0),
775 
779  UCT_MD_MEM_FLAG_FIXED = UCS_BIT(1),
780 
785  UCT_MD_MEM_FLAG_LOCK = UCS_BIT(2),
786 
791  UCT_MD_MEM_FLAG_HIDE_ERRORS = UCS_BIT(3),
792 
793  /* Memory access flags */
797  UCT_MD_MEM_ACCESS_REMOTE_PUT = UCS_BIT(5),
798 
802  UCT_MD_MEM_ACCESS_REMOTE_GET = UCS_BIT(6),
803 
807  UCT_MD_MEM_ACCESS_REMOTE_ATOMIC = UCS_BIT(7),
808 
813 
817  UCT_MD_MEM_ACCESS_LOCAL_WRITE = UCS_BIT(9),
827 
835 };
836 
837 
842 typedef enum {
849 
850 
858 enum uct_cm_attr_field {
861 };
862 
874 };
875 
876 
887 
890 
893 };
895 
903 enum uct_ep_params_field {
906 
908  UCT_EP_PARAM_FIELD_USER_DATA = UCS_BIT(1),
909 
911  UCT_EP_PARAM_FIELD_DEV_ADDR = UCS_BIT(2),
912 
914  UCT_EP_PARAM_FIELD_IFACE_ADDR = UCS_BIT(3),
915 
917  UCT_EP_PARAM_FIELD_SOCKADDR = UCS_BIT(4),
918 
921 
926  UCT_EP_PARAM_FIELD_CM = UCS_BIT(7),
927 
930 
933 
936 
939 
942 
945 
948 
951 
954 };
955 
967 
970 };
972 
981 enum uct_iface_feature {
983  UCT_IFACE_FEATURE_AM = UCS_BIT(0),
984 
986  UCT_IFACE_FEATURE_PUT = UCS_BIT(1),
989  UCT_IFACE_FEATURE_GET = UCS_BIT(2),
992  UCT_IFACE_FEATURE_AMO32 = UCS_BIT(3),
993 
995  UCT_IFACE_FEATURE_AMO64 = UCS_BIT(4),
996 
998  UCT_IFACE_FEATURE_TAG = UCS_BIT(5),
999 
1001  UCT_IFACE_FEATURE_FLUSH_REMOTE = UCS_BIT(6),
1005 };
1006 
1007 /*
1008  * @ingroup UCT_RESOURCE
1009  * @brief Process Per Node (PPN) bandwidth specification: f(ppn) = dedicated + shared / ppn
1010  *
1011  * This structure specifies a function which is used as basis for bandwidth
1012  * estimation of various UCT operations. This information can be used to select
1013  * the best performing combination of UCT operations.
1014  */
1015 typedef struct uct_ppn_bandwidth {
1016  double dedicated;
1017  double shared;
1020 
1026  struct {
1027  struct {
1028  size_t max_short;
1029  size_t max_bcopy;
1030  size_t min_zcopy;
1033  size_t max_zcopy;
1036  size_t opt_zcopy_align;
1038  size_t align_mtu;
1039  size_t max_iov;
1042  } put;
1044  struct {
1045  size_t max_short;
1046  size_t max_bcopy;
1047  size_t min_zcopy;
1050  size_t max_zcopy;
1053  size_t opt_zcopy_align;
1055  size_t align_mtu;
1056  size_t max_iov;
1059  } get;
1061  struct {
1062  size_t max_short;
1064  size_t max_bcopy;
1065  size_t min_zcopy;
1068  size_t max_zcopy;
1071  size_t opt_zcopy_align;
1073  size_t align_mtu;
1074  size_t max_hdr;
1075  size_t max_iov;
1078  } am;
1080  struct {
1081  struct {
1082  size_t min_recv;
1083  size_t max_zcopy;
1085  size_t max_iov;
1088  size_t max_outstanding;
1090  } recv;
1091 
1092  struct {
1093  size_t max_short;
1095  size_t max_bcopy;
1097  size_t max_zcopy;
1099  size_t max_iov;
1101  } eager;
1103  struct {
1104  size_t max_zcopy;
1106  size_t max_hdr;
1109  size_t max_iov;
1111  } rndv;
1112  } tag;
1114  struct {
1115  uint64_t op_flags;
1116  uint64_t fop_flags;
1117  } atomic32, atomic64;
1119  uint64_t flags;
1120  uint64_t event_flags;
1121  } cap;
1123  size_t device_addr_len;
1124  size_t iface_addr_len;
1125  size_t ep_addr_len;
1126  size_t max_conn_priv;
1129  struct sockaddr_storage listen_sockaddr;
1131  /*
1132  * The following fields define expected performance of the communication
1133  * interface, this would usually be a combination of device and system
1134  * characteristics and determined at run time.
1135  */
1136  double overhead;
1137  uct_ppn_bandwidth_t bandwidth;
1138  ucs_linear_func_t latency;
1140  uint8_t priority;
1141  size_t max_num_eps;
1142  unsigned dev_num_paths;
1151 };
1152 
1153 
1165  uint64_t field_mask;
1167  ucs_cpu_set_t cpu_mask;
1169  uint64_t open_mode;
1171  union {
1178  struct {
1179  const char *tl_name;
1180  const char *dev_name;
1181  } device;
1189  struct {
1190  ucs_sock_addr_t listen_sockaddr;
1192  void *conn_request_arg;
1194  uct_sockaddr_conn_request_callback_t conn_request_cb;
1197  uint32_t cb_flags;
1198  } sockaddr;
1199  } mode;
1200 
1203  ucs_stats_node_t *stats_root;
1205  size_t rx_headroom;
1206 
1208  void *err_handler_arg;
1210  uct_error_handler_t err_handler;
1213  uint32_t err_handler_flags;
1214 
1216  void *eager_arg;
1218  uct_tag_unexp_eager_cb_t eager_cb;
1219  void *rndv_arg;
1221  uct_tag_unexp_rndv_cb_t rndv_cb;
1222 
1223  void *async_event_arg;
1228  uct_async_event_cb_t async_event_cb;
1230  /* Time period between keepalive rounds */
1231  ucs_time_t keepalive_interval;
1232 
1240  size_t am_alignment;
1241 
1258  size_t am_align_offset;
1259 
1264  uint64_t features;
1265 };
1266 
1267 
1272 struct uct_ep_params {
1278  uint64_t field_mask;
1284  uct_iface_h iface;
1289  void *user_data;
1290 
1296  const uct_device_addr_t *dev_addr;
1297 
1303  const uct_iface_addr_t *iface_addr;
1304 
1312  const ucs_sock_addr_t *sockaddr;
1313 
1322  uint32_t sockaddr_cb_flags;
1323 
1334  uct_cm_ep_priv_data_pack_callback_t sockaddr_pack_cb;
1335 
1340  uct_cm_h cm;
1341 
1349  uct_conn_request_h conn_request;
1350 
1356 
1362 
1366  uct_ep_disconnect_cb_t disconnect_cb;
1367 
1372  unsigned path_index;
1373 
1381  uct_cm_ep_resolve_callback_t cm_resolve_cb;
1389  const void *private_data;
1390 
1395  size_t private_data_length;
1396 
1403  const ucs_sock_addr_t *local_sockaddr;
1404 };
1405 
1406 
1411 struct uct_ep_connect_params {
1417  uint64_t field_mask;
1418 
1422  const void *private_data;
1423 
1428  size_t private_data_length;
1429 };
1430 
1435 struct uct_cm_attr {
1441  uint64_t field_mask;
1442 
1447  size_t max_conn_priv;
1448 };
1450 
1455 struct uct_listener_attr {
1461  uint64_t field_mask;
1466  struct sockaddr_storage sockaddr;
1467 };
1469 
1475 struct uct_listener_params {
1481  uint64_t field_mask;
1488  int backlog;
1489 
1494 
1498  void *user_data;
1499 };
1500 
1501 
1511 struct uct_md_attr {
1512  struct {
1513  uint64_t max_alloc;
1514  size_t max_reg;
1515  uint64_t flags;
1516  uint64_t reg_mem_types;
1517  uint64_t detect_mem_types;
1518  uint64_t alloc_mem_types;
1519  uint64_t access_mem_types;
1520  } cap;
1521 
1522  ucs_linear_func_t reg_cost;
1526  char component_name[UCT_COMPONENT_NAME_MAX];
1527  size_t rkey_packed_size;
1528  ucs_cpu_set_t local_cpus;
1529 };
1530 
1531 
1539 typedef enum uct_md_mem_attr_field {
1541  UCT_MD_MEM_ATTR_FIELD_MEM_TYPE = UCS_BIT(0),
1542 
1551 
1554 
1561 
1569 
1578 typedef struct uct_md_mem_attr {
1583  uint64_t field_mask;
1584 
1590  ucs_memory_type_t mem_type;
1591 
1597  ucs_sys_device_t sys_dev;
1598 
1604  void *base_address;
1605 
1611  size_t alloc_length;
1612 
1621  int dmabuf_fd;
1622 
1627  size_t dmabuf_offset;
1629 
1630 
1651 ucs_status_t uct_md_mem_query(uct_md_h md, const void *address, size_t length,
1652  uct_md_mem_attr_t *mem_attr);
1653 
1654 
1663 typedef struct uct_allocated_memory {
1664  void *address;
1665  size_t length;
1666  uct_alloc_method_t method;
1667  ucs_memory_type_t mem_type;
1668  uct_md_h md;
1669  uct_mem_h memh;
1671 
1672 
1680 typedef struct uct_rkey_bundle {
1681  uct_rkey_t rkey;
1682  void *handle;
1683  void *type;
1705 struct uct_completion {
1707  int count;
1708  ucs_status_t status;
1711 };
1712 
1713 
1721 struct uct_pending_req {
1722  uct_pending_callback_t func;
1723  char priv[UCT_PENDING_REQ_PRIV_LEN];
1724 };
1725 
1734 struct uct_tag_context {
1741  void (*tag_consumed_cb)(uct_tag_context_t *self);
1762  void (*completed_cb)(uct_tag_context_t *self, uct_tag_t stag, uint64_t imm,
1763  size_t length, void *inline_data, ucs_status_t status);
1764 
1777  void (*rndv_cb)(uct_tag_context_t *self, uct_tag_t stag, const void *header,
1778  unsigned header_length, ucs_status_t status, unsigned flags);
1779 
1781  char priv[UCT_TAG_PRIV_LEN];
1782 };
1784 
1789 enum {
1790  /* If set, header points to inline data, otherwise it is user buffer. */
1791  UCT_TAG_RECV_CB_INLINE_DATA = UCS_BIT(0)
1792 };
1793 
1794 
1795 extern const char *uct_alloc_method_names[];
1796 extern const char *uct_device_type_names[];
1797 
1813  unsigned *num_components_p);
1814 
1825 
1826 
1840  uct_component_attr_t *component_attr);
1841 
1842 
1862 ucs_status_t uct_md_open(uct_component_h component, const char *md_name,
1863  const uct_md_config_t *config, uct_md_h *md_p);
1864 
1871 void uct_md_close(uct_md_h md);
1872 
1873 
1889  uct_tl_resource_desc_t **resources_p,
1890  unsigned *num_resources_p);
1891 
1892 
1903 
1904 
1919 ucs_status_t uct_worker_create(ucs_async_context_t *async,
1920  ucs_thread_mode_t thread_mode,
1921  uct_worker_h *worker_p);
1922 
1923 
1930 void uct_worker_destroy(uct_worker_h worker);
1931 
1932 
1956 void uct_worker_progress_register_safe(uct_worker_h worker, ucs_callback_t func,
1957  void *arg, unsigned flags,
1958  uct_worker_cb_id_t *id_p);
1959 
1960 
1982  uct_worker_cb_id_t *id_p);
1983 
1984 
2012 ucs_status_t uct_md_iface_config_read(uct_md_h md, const char *tl_name,
2013  const char *env_prefix, const char *filename,
2014  uct_iface_config_t **config_p);
2015 
2016 
2024 void uct_config_release(void *config);
2025 
2026 
2042 ucs_status_t uct_config_get(void *config, const char *name, char *value,
2043  size_t max);
2044 
2045 
2058 ucs_status_t uct_config_modify(void *config, const char *name, const char *value);
2059 
2060 
2077  const uct_iface_params_t *params,
2078  const uct_iface_config_t *config,
2079  uct_iface_h *iface_p);
2080 
2081 
2088 void uct_iface_close(uct_iface_h iface);
2089 
2090 
2099 
2100 
2113 
2114 
2126 
2127 
2146 int uct_iface_is_reachable(const uct_iface_h iface, const uct_device_addr_t *dev_addr,
2147  const uct_iface_addr_t *iface_addr);
2148 
2149 
2167 ucs_status_t uct_ep_check(const uct_ep_h ep, unsigned flags,
2168  uct_completion_t *comp);
2169 
2170 
2184 
2185 
2205 ucs_status_t uct_iface_event_arm(uct_iface_h iface, unsigned events);
2206 
2207 
2223 ucs_status_t uct_iface_mem_alloc(uct_iface_h iface, size_t length, unsigned flags,
2224  const char *name, uct_allocated_memory_t *mem);
2225 
2226 
2234 
2235 
2254  uct_am_callback_t cb, void *arg, uint32_t flags);
2255 
2256 
2271  void *arg);
2272 
2273 
2286  uct_conn_request_h conn_request);
2287 
2288 
2302  uct_conn_request_h conn_request);
2303 
2304 
2339 ucs_status_t uct_ep_create(const uct_ep_params_t *params, uct_ep_h *ep_p);
2340 
2341 
2357 
2358 
2391 ucs_status_t uct_ep_disconnect(uct_ep_h ep, unsigned flags);
2392 
2393 
2400 void uct_ep_destroy(uct_ep_h ep);
2401 
2402 
2412 
2413 
2425  const uct_ep_addr_t *ep_addr);
2426 
2427 
2436 
2437 
2445 typedef enum {
2447  UCT_MEM_ALLOC_PARAM_FIELD_FLAGS = UCS_BIT(0),
2448 
2450  UCT_MEM_ALLOC_PARAM_FIELD_ADDRESS = UCS_BIT(1),
2451 
2454 
2456  UCT_MEM_ALLOC_PARAM_FIELD_MDS = UCS_BIT(3),
2457 
2459  UCT_MEM_ALLOC_PARAM_FIELD_NAME = UCS_BIT(4)
2461 
2462 
2467 typedef struct {
2473  uint64_t field_mask;
2481  unsigned flags;
2482 
2493  void *address;
2498  ucs_memory_type_t mem_type;
2499 
2500  struct {
2505  const uct_md_h *mds;
2506 
2512  unsigned count;
2513  } mds;
2521  const char *name;
2523 
2524 
2543  size_t length, uct_mem_advice_t advice);
2544 
2545 
2559 ucs_status_t uct_md_mem_reg(uct_md_h md, void *address, size_t length,
2560  unsigned flags, uct_mem_h *memh_p);
2561 
2562 
2571 
2572 
2585 ucs_status_t uct_md_detect_memory_type(uct_md_h md, const void *addr,
2586  size_t length,
2587  ucs_memory_type_t *mem_type_p);
2588 
2589 
2614 ucs_status_t uct_mem_alloc(size_t length, const uct_alloc_method_t *methods,
2615  unsigned num_methods,
2616  const uct_mem_alloc_params_t *params,
2617  uct_allocated_memory_t *mem);
2618 
2619 
2630 
2646  const char *env_prefix, const char *filename,
2647  uct_md_config_t **config_p);
2648 
2649 
2672 
2673 
2685 ucs_status_t uct_md_mkey_pack(uct_md_h md, uct_mem_h memh, void *rkey_buffer);
2686 
2687 
2707 ucs_status_t uct_rkey_unpack(uct_component_h component, const void *rkey_buffer,
2708  uct_rkey_bundle_t *rkey_ob);
2709 
2710 
2737  uint64_t remote_addr, void **addr_p);
2738 
2739 
2749  const uct_rkey_bundle_t *rkey_ob);
2750 
2751 
2766 UCT_INLINE_API unsigned uct_worker_progress(uct_worker_h worker)
2767 {
2768  return ucs_callbackq_dispatch(&worker->progress_q);
2769 }
2770 
2771 
2800 UCT_INLINE_API ucs_status_t uct_iface_flush(uct_iface_h iface, unsigned flags,
2801  uct_completion_t *comp)
2802 {
2803  return iface->ops.iface_flush(iface, flags, comp);
2804 }
2805 
2819 UCT_INLINE_API ucs_status_t uct_iface_fence(uct_iface_h iface, unsigned flags)
2820 {
2821  return iface->ops.iface_fence(iface, flags);
2822 }
2823 
2833 UCT_INLINE_API void uct_iface_release_desc(void *desc)
2834 {
2835  uct_recv_desc_t *release_desc = uct_recv_desc(desc);
2836  release_desc->cb(release_desc, desc);
2837 }
2838 
2839 
2844 UCT_INLINE_API ucs_status_t uct_ep_put_short(uct_ep_h ep, const void *buffer, unsigned length,
2845  uint64_t remote_addr, uct_rkey_t rkey)
2846 {
2847  return ep->iface->ops.ep_put_short(ep, buffer, length, remote_addr, rkey);
2848 }
2849 
2850 
2855 UCT_INLINE_API ssize_t uct_ep_put_bcopy(uct_ep_h ep, uct_pack_callback_t pack_cb,
2856  void *arg, uint64_t remote_addr,
2857  uct_rkey_t rkey)
2858 {
2859  return ep->iface->ops.ep_put_bcopy(ep, pack_cb, arg, remote_addr, rkey);
2860 }
2861 
2862 
2892 UCT_INLINE_API ucs_status_t uct_ep_put_zcopy(uct_ep_h ep,
2893  const uct_iov_t *iov, size_t iovcnt,
2894  uint64_t remote_addr, uct_rkey_t rkey,
2895  uct_completion_t *comp)
2896 {
2897  return ep->iface->ops.ep_put_zcopy(ep, iov, iovcnt, remote_addr, rkey, comp);
2898 }
2899 
2900 
2905 UCT_INLINE_API ucs_status_t uct_ep_get_short(uct_ep_h ep, void *buffer, unsigned length,
2906  uint64_t remote_addr, uct_rkey_t rkey)
2907 {
2908  return ep->iface->ops.ep_get_short(ep, buffer, length, remote_addr, rkey);
2909 }
2910 
2911 
2916 UCT_INLINE_API ucs_status_t uct_ep_get_bcopy(uct_ep_h ep, uct_unpack_callback_t unpack_cb,
2917  void *arg, size_t length,
2918  uint64_t remote_addr, uct_rkey_t rkey,
2919  uct_completion_t *comp)
2920 {
2921  return ep->iface->ops.ep_get_bcopy(ep, unpack_cb, arg, length, remote_addr,
2922  rkey, comp);
2923 }
2924 
2925 
2955 UCT_INLINE_API ucs_status_t uct_ep_get_zcopy(uct_ep_h ep,
2956  const uct_iov_t *iov, size_t iovcnt,
2957  uint64_t remote_addr, uct_rkey_t rkey,
2958  uct_completion_t *comp)
2959 {
2960  return ep->iface->ops.ep_get_zcopy(ep, iov, iovcnt, remote_addr, rkey, comp);
2961 }
2962 
2963 
2968 UCT_INLINE_API ucs_status_t uct_ep_am_short(uct_ep_h ep, uint8_t id, uint64_t header,
2969  const void *payload, unsigned length)
2970 {
2971  return ep->iface->ops.ep_am_short(ep, id, header, payload, length);
2972 }
2973 
2974 
3005 UCT_INLINE_API ucs_status_t uct_ep_am_short_iov(uct_ep_h ep, uint8_t id,
3006  const uct_iov_t *iov, size_t iovcnt)
3007 {
3008  return ep->iface->ops.ep_am_short_iov(ep, id, iov, iovcnt);
3009 }
3010 
3011 
3016 UCT_INLINE_API ssize_t uct_ep_am_bcopy(uct_ep_h ep, uint8_t id,
3017  uct_pack_callback_t pack_cb, void *arg,
3018  unsigned flags)
3019 {
3020  return ep->iface->ops.ep_am_bcopy(ep, id, pack_cb, arg, flags);
3021 }
3022 
3023 
3061 UCT_INLINE_API ucs_status_t uct_ep_am_zcopy(uct_ep_h ep, uint8_t id,
3062  const void *header,
3063  unsigned header_length,
3064  const uct_iov_t *iov, size_t iovcnt,
3065  unsigned flags,
3066  uct_completion_t *comp)
3067 {
3068  return ep->iface->ops.ep_am_zcopy(ep, id, header, header_length, iov, iovcnt,
3069  flags, comp);
3070 }
3071 
3076 UCT_INLINE_API ucs_status_t uct_ep_atomic_cswap64(uct_ep_h ep, uint64_t compare, uint64_t swap,
3077  uint64_t remote_addr, uct_rkey_t rkey,
3078  uint64_t *result, uct_completion_t *comp)
3079 {
3080  return ep->iface->ops.ep_atomic_cswap64(ep, compare, swap, remote_addr, rkey, result, comp);
3081 }
3083 
3088 UCT_INLINE_API ucs_status_t uct_ep_atomic_cswap32(uct_ep_h ep, uint32_t compare, uint32_t swap,
3089  uint64_t remote_addr, uct_rkey_t rkey,
3090  uint32_t *result, uct_completion_t *comp)
3091 {
3092  return ep->iface->ops.ep_atomic_cswap32(ep, compare, swap, remote_addr, rkey, result, comp);
3093 }
3094 
3095 
3100 UCT_INLINE_API ucs_status_t uct_ep_atomic32_post(uct_ep_h ep, uct_atomic_op_t opcode,
3101  uint32_t value, uint64_t remote_addr,
3102  uct_rkey_t rkey)
3103 {
3104  return ep->iface->ops.ep_atomic32_post(ep, opcode, value, remote_addr, rkey);
3105 }
3106 
3107 
3112 UCT_INLINE_API ucs_status_t uct_ep_atomic64_post(uct_ep_h ep, uct_atomic_op_t opcode,
3113  uint64_t value, uint64_t remote_addr,
3114  uct_rkey_t rkey)
3115 {
3116  return ep->iface->ops.ep_atomic64_post(ep, opcode, value, remote_addr, rkey);
3117 }
3118 
3119 
3124 UCT_INLINE_API ucs_status_t uct_ep_atomic32_fetch(uct_ep_h ep, uct_atomic_op_t opcode,
3125  uint32_t value, uint32_t *result,
3126  uint64_t remote_addr, uct_rkey_t rkey,
3127  uct_completion_t *comp)
3128 {
3129  return ep->iface->ops.ep_atomic32_fetch(ep, opcode, value, result,
3130  remote_addr, rkey, comp);
3131 }
3132 
3138 UCT_INLINE_API ucs_status_t uct_ep_atomic64_fetch(uct_ep_h ep, uct_atomic_op_t opcode,
3139  uint64_t value, uint64_t *result,
3140  uint64_t remote_addr, uct_rkey_t rkey,
3141  uct_completion_t *comp)
3142 {
3143  return ep->iface->ops.ep_atomic64_fetch(ep, opcode, value, result,
3144  remote_addr, rkey, comp);
3146 
3147 
3168 UCT_INLINE_API ucs_status_t uct_ep_pending_add(uct_ep_h ep,
3169  uct_pending_req_t *req,
3170  unsigned flags)
3171 {
3172  return ep->iface->ops.ep_pending_add(ep, req, flags);
3173 }
3174 
3175 
3187 UCT_INLINE_API void uct_ep_pending_purge(uct_ep_h ep,
3189  void *arg)
3190 {
3191  ep->iface->ops.ep_pending_purge(ep, cb, arg);
3192 }
3193 
3194 
3223 UCT_INLINE_API ucs_status_t uct_ep_flush(uct_ep_h ep, unsigned flags,
3224  uct_completion_t *comp)
3225 {
3226  return ep->iface->ops.ep_flush(ep, flags, comp);
3227 }
3228 
3229 
3242 UCT_INLINE_API ucs_status_t uct_ep_fence(uct_ep_h ep, unsigned flags)
3243 {
3244  return ep->iface->ops.ep_fence(ep, flags);
3245 }
3246 
3247 
3270 UCT_INLINE_API ucs_status_t uct_ep_tag_eager_short(uct_ep_h ep, uct_tag_t tag,
3271  const void *data, size_t length)
3272 {
3273  return ep->iface->ops.ep_tag_eager_short(ep, tag, data, length);
3274 }
3275 
3276 
3300 UCT_INLINE_API ssize_t uct_ep_tag_eager_bcopy(uct_ep_h ep, uct_tag_t tag,
3301  uint64_t imm,
3302  uct_pack_callback_t pack_cb,
3303  void *arg, unsigned flags)
3304 {
3305  return ep->iface->ops.ep_tag_eager_bcopy(ep, tag, imm, pack_cb, arg, flags);
3306 }
3307 
3308 
3346 UCT_INLINE_API ucs_status_t uct_ep_tag_eager_zcopy(uct_ep_h ep, uct_tag_t tag,
3347  uint64_t imm,
3348  const uct_iov_t *iov,
3349  size_t iovcnt,
3350  unsigned flags,
3351  uct_completion_t *comp)
3352 {
3353  return ep->iface->ops.ep_tag_eager_zcopy(ep, tag, imm, iov, iovcnt, flags,
3354  comp);
3355 }
3356 
3357 
3395  const void *header,
3396  unsigned header_length,
3397  const uct_iov_t *iov,
3398  size_t iovcnt,
3399  unsigned flags,
3400  uct_completion_t *comp)
3401 {
3402  return ep->iface->ops.ep_tag_rndv_zcopy(ep, tag, header, header_length,
3403  iov, iovcnt, flags, comp);
3404 }
3405 
3406 
3425 UCT_INLINE_API ucs_status_t uct_ep_tag_rndv_cancel(uct_ep_h ep, void *op)
3426 {
3427  return ep->iface->ops.ep_tag_rndv_cancel(ep, op);
3428 }
3429 
3430 
3451  const void* header,
3452  unsigned header_length,
3453  unsigned flags)
3454 {
3455  return ep->iface->ops.ep_tag_rndv_request(ep, tag, header, header_length,
3456  flags);
3457 }
3458 
3459 
3491  uct_tag_t tag,
3492  uct_tag_t tag_mask,
3493  const uct_iov_t *iov,
3494  size_t iovcnt,
3495  uct_tag_context_t *ctx)
3496 {
3497  return iface->ops.iface_tag_recv_zcopy(iface, tag, tag_mask, iov, iovcnt, ctx);
3498 }
3499 
3500 
3524  uct_tag_context_t *ctx,
3525  int force)
3526 {
3527  return iface->ops.iface_tag_recv_cancel(iface, ctx, force);
3528 }
3529 
3530 
3549 UCT_INLINE_API void uct_iface_progress_enable(uct_iface_h iface, unsigned flags)
3550 {
3551  iface->ops.iface_progress_enable(iface, flags);
3552 }
3553 
3554 
3574 UCT_INLINE_API void uct_iface_progress_disable(uct_iface_h iface, unsigned flags)
3575 {
3576  iface->ops.iface_progress_disable(iface, flags);
3577 }
3578 
3579 
3584 UCT_INLINE_API unsigned uct_iface_progress(uct_iface_h iface)
3585 {
3586  return iface->ops.iface_progress(iface);
3587 }
3588 
3589 
3613  const uct_cm_config_t *config, uct_cm_h *cm_p);
3614 
3615 
3622 void uct_cm_close(uct_cm_h cm);
3623 
3624 
3636 
3637 
3655  const char *env_prefix, const char *filename,
3656  uct_cm_config_t **config_p);
3657 
3658 
3672 
3673 
3692 ucs_status_t uct_listener_create(uct_cm_h cm, const struct sockaddr *saddr,
3693  socklen_t socklen,
3694  const uct_listener_params_t *params,
3695  uct_listener_h *listener_p);
3696 
3697 
3704 void uct_listener_destroy(uct_listener_h listener);
3705 
3706 
3723  uct_conn_request_h conn_request);
3724 
3725 
3739  uct_listener_attr_t *listener_attr);
3740 
3741 
3749 static UCS_F_ALWAYS_INLINE
3751 {
3752  if (ucs_unlikely(status != UCS_OK) && (comp->status == UCS_OK)) {
3753  /* store first failure status */
3754  comp->status = status;
3755  }
3756 }
3757 
3758 
3764 END_C_DECLS
3765 
3766 #endif
ucs_status_t uct_ep_disconnect(uct_ep_h ep, unsigned flags)
Initiate a disconnection of an endpoint connected to a sockaddr by a connection manager uct_cm_h...
+
ucs_status_t uct_md_config_read(uct_component_h component, const char *env_prefix, const char *filename, uct_md_config_t **config_p)
Read the configuration for a memory domain.
+
ucs_status_t uct_config_get(void *config, const char *name, char *value, size_t max)
Get value by name from interface configuration (uct_iface_config_t), memory domain configuration (uct...
+
uct_cm_attr_field
UCT connection manager attributes field mask.
Definition: uct.h:879
+
Definition: uct.h:843
+
ucs_status_t uct_ep_tag_eager_zcopy(uct_ep_h ep, uct_tag_t tag, uint64_t imm, const uct_iov_t *iov, size_t iovcnt, unsigned flags, uct_completion_t *comp)
Zcopy eager tagged-send operation.
Definition: uct.h:3367
+
Definition: uct.h:838
+
uct_progress_types
UCT progress types.
Definition: uct.h:564
+
Definition: uct.h:517
+
Definition: uct.h:864
+
ucs_status_t uct_iface_get_device_address(uct_iface_h iface, uct_device_addr_t *addr)
Get address of the device the interface is using.
+
Definition: uct.h:828
+
static UCS_F_ALWAYS_INLINE void uct_completion_update_status(uct_completion_t *comp, ucs_status_t status)
Update status of UCT completion handle.
Definition: uct.h:3771
+ + + +
Definition: uct.h:935
+
struct uct_tl_resource_desc uct_tl_resource_desc_t
Communication resource descriptor.
+
void(* uct_async_event_cb_t)(void *arg, unsigned flags)
Callback to process asynchronous events.
Definition: uct_def.h:897
+
void uct_config_release(void *config)
Release configuration memory returned from uct_md_iface_config_read(), uct_md_config_read(), or from uct_cm_config_read().
+
ucs_status_t uct_md_query_tl_resources(uct_md_h md, uct_tl_resource_desc_t **resources_p, unsigned *num_resources_p)
Query for transport resources.
+
uct_device_type_t
List of UCX device types.
Definition: uct.h:307
+
Definition: uct.h:762
+
ucs_status_t uct_md_mem_advise(uct_md_h md, uct_mem_h memh, void *addr, size_t length, uct_mem_advice_t advice)
Give advice about the use of memory.
+
ucs_status_t uct_iface_event_fd_get(uct_iface_h iface, int *fd_p)
Obtain a notification file descriptor for polling.
+
Definition: uct.h:800
+
ucs_status_ptr_t uct_ep_tag_rndv_zcopy(uct_ep_h ep, uct_tag_t tag, const void *header, unsigned header_length, const uct_iov_t *iov, size_t iovcnt, unsigned flags, uct_completion_t *comp)
Rendezvous tagged-send operation.
Definition: uct.h:3415
+
ucs_status_t uct_ep_atomic32_post(uct_ep_h ep, uct_atomic_op_t opcode, uint32_t value, uint64_t remote_addr, uct_rkey_t rkey)
Definition: uct.h:3121
+
ucs_status_t uct_iface_event_arm(uct_iface_h iface, unsigned events)
Turn on event notification for the next event.
+
void * uct_mem_h
Definition: uct_def.h:84
+
void(* uct_sockaddr_conn_request_callback_t)(uct_iface_h iface, void *arg, uct_conn_request_h conn_request, const void *conn_priv_data, size_t length)
Callback to process an incoming connection request on the server side.
Definition: uct_def.h:642
+
Structure for scatter-gather I/O.
Definition: uct_def.h:147
+
uct_component_attr_field
UCT component attributes field mask.
Definition: uct.h:229
+
ucs_status_t uct_iface_accept(uct_iface_h iface, uct_conn_request_h conn_request)
Accept connection request.
+ +
Definition: uct.h:968
+ +
Definition: uct.h:703
+
uct_msg_flags
Flags for active message send operation.
Definition: uct.h:577
+
void uct_ep_pending_purge(uct_ep_h ep, uct_pending_purge_callback_t cb, void *arg)
Remove all pending requests from an endpoint.
Definition: uct.h:3208
+
Definition: uct.h:754
+
ucs_status_t uct_rkey_unpack(uct_component_h component, const void *rkey_buffer, uct_rkey_bundle_t *rkey_ob)
Unpack a remote key.
+
Definition: uct.h:497
+
Definition: uct.h:654
+
ssize_t uct_ep_tag_eager_bcopy(uct_ep_h ep, uct_tag_t tag, uint64_t imm, uct_pack_callback_t pack_cb, void *arg, unsigned flags)
Bcopy eager tagged-send operation.
Definition: uct.h:3321
+
ucs_status_t uct_ep_flush(uct_ep_h ep, unsigned flags, uct_completion_t *comp)
Flush outstanding communication operations on an endpoint.
Definition: uct.h:3244
+
void(* uct_ep_disconnect_cb_t)(uct_ep_h ep, void *arg)
Callback to handle the disconnection of the remote peer.
Definition: uct_def.h:743
+
ucs_status_t uct_listener_query(uct_listener_h listener, uct_listener_attr_t *listener_attr)
Get attributes specific to a particular listener.
+
Definition: uct.h:2471
+
Definition: uct.h:310
+
ucs_status_t uct_iface_tag_recv_cancel(uct_iface_h iface, uct_tag_context_t *ctx, int force)
Cancel a posted tag.
Definition: uct.h:3544
+
Definition: uct.h:962
+
Definition: uct.h:293
+
Definition: uct.h:650
+
ucs_status_t uct_mem_alloc(size_t length, const uct_alloc_method_t *methods, unsigned num_methods, const uct_mem_alloc_params_t *params, uct_allocated_memory_t *mem)
Allocate memory for zero-copy communications and remote access.
+ +
uct_mem_advice_t
list of UCT memory use advice
Definition: uct.h:863
+
void uct_listener_destroy(uct_listener_h listener)
Destroy a transport listener.
+
Parameters used for interface creation.
Definition: uct.h:1182
+
struct uct_md_config uct_md_config_t
Definition: uct_def.h:81
+
ucs_status_t uct_ep_put_zcopy(uct_ep_h ep, const uct_iov_t *iov, size_t iovcnt, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
Write data to remote memory while avoiding local memory copy.
Definition: uct.h:2913
+
Memory domain resource descriptor.
Definition: uct.h:217
+
ucs_status_t uct_md_detect_memory_type(uct_md_h md, const void *addr, size_t length, ucs_memory_type_t *mem_type_p)
Detect memory type.
+
int uct_iface_is_reachable(const uct_iface_h iface, const uct_device_addr_t *dev_addr, const uct_iface_addr_t *iface_addr)
Check if remote iface address is reachable.
+
void(* uct_pending_purge_callback_t)(uct_pending_req_t *self, void *arg)
Callback to purge pending requests.
Definition: uct_def.h:586
+
uct_mem_alloc_params_field_t
UCT allocation parameters specification field mask.
Definition: uct.h:2466
+
ucs_status_t uct_iface_get_address(uct_iface_h iface, uct_iface_addr_t *addr)
Get interface address.
+
uct_cm_t * uct_cm_h
Definition: uct_def.h:105
+
uct_listener_params_field
UCT listener created by uct_listener_create parameters field mask.
Definition: uct.h:905
+
UCT component attributes.
Definition: uct.h:244
+
ucs_status_t(* uct_cm_ep_resolve_callback_t)(void *user_data, const uct_cm_ep_resolve_args_t *resolve_args)
Callback to notify that the client side endpoint is bound to a local device.
Definition: uct_def.h:795
+
Definition: uct.h:1812
+
ucs_status_t uct_mem_free(const uct_allocated_memory_t *mem)
Release allocated memory.
+
Definition: uct.h:309
+
uct_cb_flags
Callback flags.
Definition: uct.h:600
+
Definition: uct.h:2468
+ + +
void(* uct_cm_listener_conn_request_callback_t)(uct_listener_h listener, void *arg, const uct_cm_listener_conn_request_args_t *conn_req_args)
Callback to process an incoming connection request on the server side listener in a connection manage...
Definition: uct_def.h:667
+ +
uct_listener_attr_field
UCT listener attributes field mask.
Definition: uct.h:892
+
Definition: uct.h:744
+
Definition: uct.h:711
+
void(* uct_cm_ep_server_conn_notify_callback_t)(uct_ep_h ep, void *arg, const uct_cm_ep_server_conn_notify_args_t *connect_args)
Callback to process an incoming connection establishment acknowledgment on the server side listener...
Definition: uct_def.h:697
+ + +
void uct_iface_release_desc(void *desc)
Release AM descriptor.
Definition: uct.h:2854
+
ucs_status_t uct_ep_check(const uct_ep_h ep, unsigned flags, uct_completion_t *comp)
check if the destination endpoint is alive in respect to UCT library
+
UCT listener attributes, capabilities and limitations.
Definition: uct.h:1476
+
struct uct_worker * uct_worker_h
Definition: uct_def.h:95
+
ucs_status_t uct_ep_atomic_cswap64(uct_ep_h ep, uint64_t compare, uint64_t swap, uint64_t remote_addr, uct_rkey_t rkey, uint64_t *result, uct_completion_t *comp)
Definition: uct.h:3097
+
ucs_status_t uct_ep_atomic64_post(uct_ep_h ep, uct_atomic_op_t opcode, uint64_t value, uint64_t remote_addr, uct_rkey_t rkey)
Definition: uct.h:3133
+
Interface attributes: capabilities and limitations.
Definition: uct.h:1046
+
Definition: uct.h:812
+
int uct_worker_cb_id_t
Definition: uct_def.h:111
+
ucs_status_t uct_ep_put_short(uct_ep_h ep, const void *buffer, unsigned length, uint64_t remote_addr, uct_rkey_t rkey)
Definition: uct.h:2865
+
ucs_status_t uct_ep_am_short_iov(uct_ep_h ep, uint8_t id, const uct_iov_t *iov, size_t iovcnt)
Short io-vector send operation.
Definition: uct.h:3026
+
ucs_status_t(* uct_error_handler_t)(void *arg, uct_ep_h ep, ucs_status_t status)
Callback to process peer failure.
Definition: uct_def.h:574
+
ucs_status_t uct_ep_get_short(uct_ep_h ep, void *buffer, unsigned length, uint64_t remote_addr, uct_rkey_t rkey)
Definition: uct.h:2926
+
ucs_status_t uct_worker_create(ucs_async_context_t *async, ucs_thread_mode_t thread_mode, uct_worker_h *worker_p)
Create a worker object.
+
ucs_status_t uct_ep_get_address(uct_ep_h ep, uct_ep_addr_t *addr)
Get endpoint address.
+
Definition: uct.h:567
+
Definition: uct.h:947
+
ucs_status_t uct_iface_flush(uct_iface_h iface, unsigned flags, uct_completion_t *comp)
Flush outstanding communication operations on an interface.
Definition: uct.h:2821
+
Definition: uct.h:529
+
ucs_status_t uct_ep_get_zcopy(uct_ep_h ep, const uct_iov_t *iov, size_t iovcnt, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
Read data from remote memory while avoiding local memory copy.
Definition: uct.h:2976
+
Definition: uct.h:1562
+
void uct_iface_progress_disable(uct_iface_h iface, unsigned flags)
Disable synchronous progress for the interface.
Definition: uct.h:3595
+
Definition: uct.h:749
+
struct uct_iface_addr uct_iface_addr_t
Definition: uct_def.h:99
+ +
uint64_t field_mask
Definition: uct.h:251
+
ucs_thread_mode_t
Thread sharing mode.
Definition: thread_mode.h:19
+
ucs_status_t uct_ep_connect(uct_ep_h ep, const uct_ep_connect_params_t *params)
Connect a client side endpoint after it is bound to a local network device, i.e. uct_ep_params_t::cm_...
+
void(* uct_completion_callback_t)(uct_completion_t *self)
Callback to process send completion.
Definition: uct_def.h:536
+
Definition: uct.h:519
+
void uct_md_close(uct_md_h md)
Close a memory domain.
+
ucs_status_t uct_query_components(uct_component_h **components_p, unsigned *num_components_p)
Query for list of components.
+
ucs_status_t uct_md_open(uct_component_h component, const char *md_name, const uct_md_config_t *config, uct_md_h *md_p)
Open a memory domain.
+
struct uct_cm_config uct_cm_config_t
Definition: uct_def.h:82
+
struct uct_ep_addr uct_ep_addr_t
Definition: uct_def.h:100
+
Definition: uct.h:929
+ +
Definition: uct.h:311
+
Definition: uct.h:308
+
struct uct_md * uct_md_h
Memory domain handler.
Definition: uct_def.h:86
+
uct_ep_params_field
UCT endpoint created by uct_ep_create parameters field mask.
Definition: uct.h:924
+
Definition: uct.h:783
+
ucs_status_t uct_ep_tag_eager_short(uct_ep_h ep, uct_tag_t tag, const void *data, size_t length)
Short eager tagged-send operation.
Definition: uct.h:3291
+
ucs_status_t uct_ep_am_short(uct_ep_h ep, uint8_t id, uint64_t header, const void *payload, unsigned length)
Definition: uct.h:2989
+
Remote key with its type.
Definition: uct.h:1701
+
ucs_status_t(* uct_tag_unexp_rndv_cb_t)(void *arg, unsigned flags, uint64_t stag, const void *header, unsigned header_length, uint64_t remote_addr, size_t length, const void *rkey_buf)
Callback to process unexpected rendezvous tagged message.
Definition: uct_def.h:882
+
ucs_status_t uct_ep_tag_rndv_cancel(uct_ep_h ep, void *op)
Cancel outstanding rendezvous operation.
Definition: uct.h:3446
+
ucs_status_t uct_ep_create(const uct_ep_params_t *params, uct_ep_h *ep_p)
Create new endpoint.
+
uct_device_type_t dev_type
Definition: uct.h:330
+
Memory domain attributes.
Definition: uct.h:1599
+
size_t(* uct_pack_callback_t)(void *dest, void *arg)
Callback for producing data.
Definition: uct_def.h:598
+
struct uct_rkey_bundle uct_rkey_bundle_t
Remote key with its type.
+
Definition: uct.h:299
+
Definition: uct.h:658
+
char md_name[UCT_MD_NAME_MAX]
Definition: uct.h:218
+
Definition: uct.h:772
+
ucs_status_t uct_ep_am_zcopy(uct_ep_h ep, uint8_t id, const void *header, unsigned header_length, const uct_iov_t *iov, size_t iovcnt, unsigned flags, uct_completion_t *comp)
Send active message while avoiding local memory copy.
Definition: uct.h:3082
+
Definition: uct.h:806
+
ucs_status_t
Status codes.
Definition: status.h:45
+
Definition: uct.h:601
+
void uct_worker_progress_unregister_safe(uct_worker_h worker, uct_worker_cb_id_t *id_p)
Remove a slow path callback function from worker&#39;s progress.
+
Definition: uct.h:833
+
Definition: uct.h:533
+
Definition: uct.h:312
+
enum uct_md_mem_attr_field uct_md_mem_attr_field_t
UCT MD memory attributes field mask.
+
ucs_status_t uct_iface_open(uct_md_h md, uct_worker_h worker, const uct_iface_params_t *params, const uct_iface_config_t *config, uct_iface_h *iface_p)
Open a communication interface.
+
ucs_status_t uct_rkey_ptr(uct_component_h component, uct_rkey_bundle_t *rkey_ob, uint64_t remote_addr, void **addr_p)
Get a local pointer to remote memory.
+
Definition: uct.h:626
+
uct_md_mem_flags
Memory allocation/registration flags.
Definition: uct.h:790
+ +
Parameters for creating a listener object uct_listener_h by uct_listener_create.
Definition: uct.h:1496
+
Definition: uct.h:714
+
Definition: uct.h:496
+
Definition: uct.h:938
+
Definition: uct.h:2480
+
Definition: uct.h:1007
+ +
uint64_t flags
Definition: uct.h:277
+
Definition: uct.h:565
+
ucs_status_t uct_cm_client_ep_conn_notify(uct_ep_h ep)
Notify the server about client-side connection establishment.
+
Connection manager attributes, capabilities and limitations.
Definition: uct.h:1456
+
struct uct_listener * uct_listener_h
Definition: uct_def.h:107
+
ucs_status_t uct_md_mkey_pack(uct_md_h md, uct_mem_h memh, void *rkey_buffer)
Pack a remote key.
+
Definition: uct.h:647
+
ucs_status_t uct_md_query(uct_md_h md, uct_md_attr_t *md_attr)
Query for memory domain attributes.
+ +
Definition: uct.h:738
+
void(* uct_unpack_callback_t)(void *arg, const void *data, size_t length)
Callback for consuming data.
Definition: uct_def.h:611
+
Definition: uct.h:501
+
void uct_iface_progress_enable(uct_iface_h iface, unsigned flags)
Enable synchronous progress for the interface.
Definition: uct.h:3570
+ + +
Definition: uct.h:233
+
ucs_status_t uct_ep_atomic64_fetch(uct_ep_h ep, uct_atomic_op_t opcode, uint64_t value, uint64_t *result, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
Definition: uct.h:3159
+
uct_iface_feature
UCT interface configuration features.
Definition: uct.h:1002
+
Definition: uct.h:728
+
ssize_t uct_ep_am_bcopy(uct_ep_h ep, uint8_t id, uct_pack_callback_t pack_cb, void *arg, unsigned flags)
Definition: uct.h:3037
+
uct_flush_flags
Flush modifiers.
Definition: uct.h:528
+
struct uct_component * uct_component_h
Definition: uct_def.h:78
+
ucs_status_t uct_iface_reject(uct_iface_h iface, uct_conn_request_h conn_request)
Reject connection request. Will invoke an error handler uct_error_handler_t on the remote transport i...
+
uct_md_mem_attr_field
UCT MD memory attributes field mask.
Definition: uct.h:1560
+
uct_alloc_method_t
Memory allocation methods.
Definition: uct.h:493
+
Definition: uct.h:1022
+
Definition: status.h:47
+ + +
uint64_t uct_tag_t
Definition: uct_def.h:110
+
Definition: uct.h:767
+
Definition: uct.h:494
+
struct uct_iface_config uct_iface_config_t
Definition: uct_def.h:80
+
ucs_status_t uct_rkey_release(uct_component_h component, const uct_rkey_bundle_t *rkey_ob)
Release a remote key.
+
ucs_status_t uct_config_modify(void *config, const char *name, const char *value)
Modify interface configuration (uct_iface_config_t), memory domain configuration (uct_md_config_t) or...
+
Parameters for connecting a UCT endpoint by uct_ep_connect.
Definition: uct.h:1432
+
Parameters for allocating memory using uct_mem_alloc.
Definition: uct.h:2488
+
void uct_iface_mem_free(const uct_allocated_memory_t *mem)
Release memory allocated with uct_iface_mem_alloc().
+
Definition: uct.h:778
+
Definition: uct.h:602
+
enum ucs_memory_type ucs_memory_type_t
Memory types.
+
ucs_status_t uct_iface_fence(uct_iface_h iface, unsigned flags)
Ensures ordering of outstanding communications on the interface. Operations issued on the interface p...
Definition: uct.h:2840
+
ucs_status_t status
Definition: uct.h:1729
+
uct_ep_connect_params_field
UCT endpoint connected by uct_ep_connect parameters field mask.
Definition: uct.h:985
+
struct uct_md_resource_desc uct_md_resource_desc_t
Memory domain resource descriptor.
+
ssize_t(* uct_cm_ep_priv_data_pack_callback_t)(void *arg, const uct_cm_ep_priv_data_pack_args_t *pack_args, void *priv_data)
Callback to fill the user&#39;s private data in a client-server flow.
Definition: uct_def.h:771
+
Definition: uct.h:1010
+
unsigned md_resource_count
Definition: uct.h:257
+
Definition: uct.h:1568
+
unsigned long ucs_time_t
Definition: time_def.h:23
+
ucs_status_t uct_ep_tag_rndv_request(uct_ep_h ep, uct_tag_t tag, const void *header, unsigned header_length, unsigned flags)
Send software rendezvous request.
Definition: uct.h:3471
+
uct_iface_open_mode
Mode in which to open the interface.
Definition: uct.h:624
+
Definition: uct.h:926
+
ucs_status_t uct_md_mem_reg(uct_md_h md, void *address, size_t length, unsigned flags, uct_mem_h *memh_p)
Register memory for zero-copy sends and remote access.
+
ucs_status_t uct_ep_pending_add(uct_ep_h ep, uct_pending_req_t *req, unsigned flags)
Add a pending request to an endpoint.
Definition: uct.h:3189
+
ucs_status_t uct_iface_set_am_tracer(uct_iface_h iface, uct_am_tracer_t tracer, void *arg)
Set active message tracer for the interface.
+
Definition: uct.h:566
+
void uct_ep_destroy(uct_ep_h ep)
Destroy an endpoint.
+
Parameters for creating a UCT endpoint by uct_ep_create.
Definition: uct.h:1293
+
void * ucs_status_ptr_t
Status pointer.
Definition: status.h:106
+
uct_sockaddr_accessibility_t
Socket address accessibility type.
Definition: uct.h:710
+
Definition: uct.h:950
+ +
Definition: uct.h:1581
+
ucs_status_t uct_cm_open(uct_component_h component, uct_worker_h worker, const uct_cm_config_t *config, uct_cm_h *cm_p)
Open a connection manager.
+
ucs_status_t uct_component_query(uct_component_h component, uct_component_attr_t *component_attr)
Get component attributes.
+
Definition: uct.h:1013
+
Definition: uct.h:1016
+
ucs_status_t uct_cm_config_read(uct_component_h component, const char *env_prefix, const char *filename, uct_cm_config_t **config_p)
Read the configuration for a connection manager.
+
Memory domain attributes.
Definition: uct.h:1532
+
Definition: uct.h:578
+
uct_iface_params_field
UCT interface created by uct_iface_open parameters field mask.
Definition: uct.h:645
+
ucs_status_t uct_listener_reject(uct_listener_h listener, uct_conn_request_h conn_request)
Reject a connection request.
+
struct uct_component_attr uct_component_attr_t
UCT component attributes.
+
ucs_status_t uct_cm_query(uct_cm_h cm, uct_cm_attr_t *cm_attr)
Get connection manager attributes.
+
void * uct_conn_request_h
Definition: uct_def.h:112
+
Definition: uct.h:1004
+
void uct_release_tl_resource_list(uct_tl_resource_desc_t *resources)
Release the list of resources returned from uct_md_query_tl_resources.
+
Definition: uct.h:818
+
void uct_cm_close(uct_cm_h cm)
Close a connection manager.
+
Definition: uct.h:2477
+ +
ucs_status_t uct_md_iface_config_read(uct_md_h md, const char *tl_name, const char *env_prefix, const char *filename, uct_iface_config_t **config_p)
Read transport-specific interface configuration.
+
Definition: uct.h:499
+
ucs_status_t uct_ep_fence(uct_ep_h ep, unsigned flags)
Ensures ordering of outstanding communications on the endpoint. Operations issued on the endpoint pri...
Definition: uct.h:3263
+ +
struct uct_allocated_memory uct_allocated_memory_t
Describes a memory allocated by UCT.
+
Definition: uct.h:865
+
void uct_worker_destroy(uct_worker_h worker)
Destroy a worker object.
+
void(* uct_am_tracer_t)(void *arg, uct_am_trace_type_t type, uint8_t id, const void *data, size_t length, char *buffer, size_t max)
Callback to trace active messages.
Definition: uct_def.h:524
+
ucs_status_t(* uct_pending_callback_t)(uct_pending_req_t *self)
Callback to process pending requests.
Definition: uct_def.h:553
+ +
Definition: uct.h:498
+ + +
Communication resource descriptor.
Definition: uct.h:327
+
Pending request.
Definition: uct.h:1742
+
uct_md_resource_desc_t * md_resources
Definition: uct.h:272
+
ucs_status_t uct_iface_set_am_handler(uct_iface_h iface, uint8_t id, uct_am_callback_t cb, void *arg, uint32_t flags)
Set active message handler for the interface.
+
Definition: uct.h:1036
+
unsigned uct_worker_progress(uct_worker_h worker)
Explicit progress for UCT worker.
Definition: uct.h:2787
+
void(* uct_cm_ep_client_connect_callback_t)(uct_ep_h ep, void *arg, const uct_cm_ep_client_connect_args_t *connect_args)
Callback to process an incoming connection response on the client side from the server or handle a lo...
Definition: uct_def.h:721
+ +
void uct_worker_progress_register_safe(uct_worker_h worker, ucs_callback_t func, void *arg, unsigned flags, uct_worker_cb_id_t *id_p)
Add a slow path callback function to a worker progress.
+
struct uct_iface * uct_iface_h
Definition: uct_def.h:79
+
Definition: uct.h:881
+
Definition: uct.h:230
+
Definition: uct.h:1025
+
Definition: types.h:137
+
ucs_status_t uct_listener_create(uct_cm_h cm, const struct sockaddr *saddr, socklen_t socklen, const uct_listener_params_t *params, uct_listener_h *listener_p)
Create a new transport listener object.
+
struct uct_ep * uct_ep_h
Definition: uct_def.h:83
+
Definition: uct.h:548
+
Definition: uct.h:852
+
ucs_status_t uct_md_mem_dereg(uct_md_h md, uct_mem_h memh)
Undo the operation of uct_md_mem_reg().
+
void uct_release_component_list(uct_component_h *components)
Release the list of components returned from uct_query_components.
+
Posted tag context.
Definition: uct.h:1755
+
ucs_status_t uct_iface_query(uct_iface_h iface, uct_iface_attr_t *iface_attr)
Get interface attributes.
+ + +
ucs_status_t(* uct_tag_unexp_eager_cb_t)(void *arg, void *data, size_t length, unsigned flags, uct_tag_t stag, uint64_t imm, void **context)
Callback to process unexpected eager tagged message.
Definition: uct_def.h:845
+ +
Completion handle.
Definition: uct.h:1726
+ + +
ssize_t uct_ep_put_bcopy(uct_ep_h ep, uct_pack_callback_t pack_cb, void *arg, uint64_t remote_addr, uct_rkey_t rkey)
Definition: uct.h:2876
+
ucs_status_t uct_ep_get_bcopy(uct_ep_h ep, uct_unpack_callback_t unpack_cb, void *arg, size_t length, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
Definition: uct.h:2937
+ + +
Definition: uct.h:823
+
struct uct_device_addr uct_device_addr_t
Definition: uct_def.h:98
+
Definition: uct.h:584
+
void uct_iface_close(uct_iface_h iface)
Close and destroy an interface.
+
unsigned uct_iface_progress(uct_iface_h iface)
Perform a progress on an interface.
Definition: uct.h:3605
+
ucs_sys_device_t sys_device
Definition: uct.h:332
+ +
ucs_status_t(* uct_am_callback_t)(void *arg, void *data, size_t length, unsigned flags)
Callback to process incoming active message.
Definition: uct_def.h:506
+
uintptr_t uct_rkey_t
Definition: uct_def.h:85
+
ucs_status_t uct_iface_tag_recv_zcopy(uct_iface_h iface, uct_tag_t tag, uct_tag_t tag_mask, const uct_iov_t *iov, size_t iovcnt, uct_tag_context_t *ctx)
Post a tag to a transport interface.
Definition: uct.h:3511
+
ucs_status_t uct_ep_connect_to_ep(uct_ep_h ep, const uct_device_addr_t *dev_addr, const uct_ep_addr_t *ep_addr)
Connect endpoint to a remote endpoint.
+
struct uct_md_mem_attr uct_md_mem_attr_t
Memory domain attributes.
+ +
Definition: uct.h:518
+
ucs_status_t uct_md_mem_query(uct_md_h md, const void *address, size_t length, uct_md_mem_attr_t *mem_attr)
Query attributes of a given pointer.
+
Definition: uct.h:500
+
Definition: uct.h:795
+
ucs_status_t uct_iface_mem_alloc(uct_iface_h iface, size_t length, unsigned flags, const char *name, uct_allocated_memory_t *mem)
Allocate memory which can be used for zero-copy communications.
+
ucs_status_t uct_ep_atomic32_fetch(uct_ep_h ep, uct_atomic_op_t opcode, uint32_t value, uint32_t *result, uint64_t remote_addr, uct_rkey_t rkey, uct_completion_t *comp)
Definition: uct.h:3145
+
int uct_md_is_sockaddr_accessible(uct_md_h md, const ucs_sock_addr_t *sockaddr, uct_sockaddr_accessibility_t mode)
Check if remote sock address is accessible from the memory domain.
+
ucs_status_t uct_ep_atomic_cswap32(uct_ep_h ep, uint32_t compare, uint32_t swap, uint64_t remote_addr, uct_rkey_t rkey, uint32_t *result, uct_completion_t *comp)
Definition: uct.h:3109
+
uct_iface_event_types
Asynchronous event types.
Definition: uct.h:516
+
Definition: uct.h:1019
+
Definition: uct.h:733
+
Describes a memory allocated by UCT.
Definition: uct.h:1684
+
Definition: uct.h:932
+
+
+ + + + diff --git a/api/v1.14/html/uct__def_8h_source.html b/api/v1.14/html/uct__def_8h_source.html new file mode 100644 index 00000000000..6a95a108b8f --- /dev/null +++ b/api/v1.14/html/uct__def_8h_source.html @@ -0,0 +1,241 @@ + + + + + + +UCX: uct_def.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
uct_def.h
+
+
+
1 
7 #ifndef UCT_DEF_H_
8 #define UCT_DEF_H_
9 
10 #include <ucs/config/types.h>
11 #include <ucs/type/status.h>
12 
13 #include <stddef.h>
14 #include <stdint.h>
15 #include <sys/types.h>
16 
17 
18 #define UCT_COMPONENT_NAME_MAX 16
19 #define UCT_MD_GLOBAL_ID_MAX 256
20 #define UCT_TL_NAME_MAX 10
21 #define UCT_MD_NAME_MAX 16
22 #define UCT_DEVICE_NAME_MAX 32
23 #define UCT_PENDING_REQ_PRIV_LEN 40
24 #define UCT_TAG_PRIV_LEN 32
25 #define UCT_AM_ID_BITS 5
26 #define UCT_AM_ID_MAX UCS_BIT(UCT_AM_ID_BITS)
27 #define UCT_MEM_HANDLE_NULL NULL
28 #define UCT_INVALID_RKEY ((uintptr_t)(-1))
29 #define UCT_INLINE_API static UCS_F_ALWAYS_INLINE
30 #define UCT_DMABUF_FD_INVALID -1
31 
32 
43 };
44 
45 
69  UCT_CB_PARAM_FLAG_DESC = UCS_BIT(0),
72 };
73 
78 typedef struct uct_component *uct_component_h;
79 typedef struct uct_iface *uct_iface_h;
80 typedef struct uct_iface_config uct_iface_config_t;
81 typedef struct uct_md_config uct_md_config_t;
82 typedef struct uct_cm_config uct_cm_config_t;
83 typedef struct uct_ep *uct_ep_h;
84 typedef void * uct_mem_h;
85 typedef uintptr_t uct_rkey_t;
86 typedef struct uct_md *uct_md_h;
87 typedef struct uct_md_ops uct_md_ops_t;
88 typedef void *uct_rkey_ctx_h;
91 typedef struct uct_ep_attr uct_ep_attr_t;
92 typedef struct uct_md_attr uct_md_attr_t;
95 typedef struct uct_worker *uct_worker_h;
96 typedef struct uct_md uct_md_t;
98 typedef struct uct_device_addr uct_device_addr_t;
99 typedef struct uct_iface_addr uct_iface_addr_t;
100 typedef struct uct_ep_addr uct_ep_addr_t;
103 typedef struct uct_cm_attr uct_cm_attr_t;
104 typedef struct uct_cm uct_cm_t;
107 typedef struct uct_listener *uct_listener_h;
110 typedef uint64_t uct_tag_t; /* tag type - 64 bit */
111 typedef int uct_worker_cb_id_t;
112 typedef void* uct_conn_request_h;
113 
147 typedef struct uct_iov {
148  void *buffer;
149  size_t length;
151  size_t stride;
153  unsigned count;
154 } uct_iov_t;
155 
156 
171 };
172 
173 
186 
191 };
192 
193 
206  uint64_t field_mask;
207 
214  char dev_name[UCT_DEVICE_NAME_MAX];
216 
217 
224 typedef struct uct_cm_ep_resolve_args {
230  uint64_t field_mask;
231 
238  char dev_name[UCT_DEVICE_NAME_MAX];
239 
250 
251 
262 
265 
268 
271 };
272 
273 
281 typedef struct uct_cm_remote_data {
287  uint64_t field_mask;
288 
293 
298 
303  const void *conn_priv_data;
304 
310 
311 
326 
332 
338 
344 };
345 
346 
360  uint64_t field_mask;
361 
365  char dev_name[UCT_DEVICE_NAME_MAX];
366 
373 
378 
384 
385 
397 
400 };
401 
402 
415  uint64_t field_mask;
416 
421 
433 
434 
449 };
450 
451 
464  uint64_t field_mask;
465 
478 
479 
506 typedef ucs_status_t (*uct_am_callback_t)(void *arg, void *data, size_t length,
507  unsigned flags);
508 
509 
524 typedef void (*uct_am_tracer_t)(void *arg, uct_am_trace_type_t type, uint8_t id,
525  const void *data, size_t length, char *buffer,
526  size_t max);
527 
528 
537 
538 
554 
555 
574 typedef ucs_status_t (*uct_error_handler_t)(void *arg, uct_ep_h ep,
575  ucs_status_t status);
576 
577 
587  void *arg);
588 
598 typedef size_t (*uct_pack_callback_t)(void *dest, void *arg);
599 
600 
611 typedef void (*uct_unpack_callback_t)(void *arg, const void *data, size_t length);
612 
613 
641 typedef void
643  uct_conn_request_h conn_request,
644  const void *conn_priv_data,
645  size_t length);
646 
647 
666 typedef void
669  *conn_req_args);
670 
671 
697  (uct_ep_h ep, void *arg,
698  const uct_cm_ep_server_conn_notify_args_t *connect_args);
699 
700 
721 typedef void (*uct_cm_ep_client_connect_callback_t)(uct_ep_h ep, void *arg,
723  *connect_args);
724 
725 
743 typedef void (*uct_ep_disconnect_cb_t)(uct_ep_h ep, void *arg);
744 
745 
770 typedef ssize_t
773  *pack_args, void *priv_data);
774 
775 
794 typedef ucs_status_t
795 (*uct_cm_ep_resolve_callback_t)(void *user_data,
796  const uct_cm_ep_resolve_args_t *resolve_args);
797 
798 
845 typedef ucs_status_t (*uct_tag_unexp_eager_cb_t)(void *arg, void *data,
846  size_t length, unsigned flags,
847  uct_tag_t stag, uint64_t imm,
848  void **context);
849 
850 
882 typedef ucs_status_t (*uct_tag_unexp_rndv_cb_t)(void *arg, unsigned flags,
883  uint64_t stag, const void *header,
884  unsigned header_length,
885  uint64_t remote_addr, size_t length,
886  const void *rkey_buf);
887 
888 
897 typedef void (*uct_async_event_cb_t)(void *arg, unsigned flags);
898 
899 
900 #endif
Definition: uct_def.h:70
+
struct uct_cm_ep_client_connect_args uct_cm_ep_client_connect_args_t
Arguments to the client&#39;s connect callback.
+
struct uct_md uct_md_t
Definition: uct_def.h:96
+ + +
Definition: uct_def.h:261
+
uct_am_trace_type
Trace types for active message tracer.
Definition: uct_def.h:37
+
void(* uct_async_event_cb_t)(void *arg, unsigned flags)
Callback to process asynchronous events.
Definition: uct_def.h:897
+
struct uct_cm_remote_data uct_cm_remote_data_t
Data received from the remote peer.
+
void * uct_mem_h
Definition: uct_def.h:84
+
void(* uct_sockaddr_conn_request_callback_t)(uct_iface_h iface, void *arg, uct_conn_request_h conn_request, const void *conn_priv_data, size_t length)
Callback to process an incoming connection request on the server side.
Definition: uct_def.h:642
+
Structure for scatter-gather I/O.
Definition: uct_def.h:147
+
size_t conn_priv_data_length
Definition: uct_def.h:308
+
void(* uct_ep_disconnect_cb_t)(uct_ep_h ep, void *arg)
Callback to handle the disconnection of the remote peer.
Definition: uct_def.h:743
+
Arguments to the client-server private data pack callback.
Definition: uct_def.h:200
+
ucs_status_t status
Definition: uct_def.h:476
+
struct uct_md_ops uct_md_ops_t
Definition: uct_def.h:87
+
struct uct_iov uct_iov_t
Structure for scatter-gather I/O.
+
Parameters used for interface creation.
Definition: uct.h:1182
+
struct uct_md_config uct_md_config_t
Definition: uct_def.h:81
+
void(* uct_pending_purge_callback_t)(uct_pending_req_t *self, void *arg)
Callback to purge pending requests.
Definition: uct_def.h:586
+
Arguments to the listener&#39;s connection request callback.
Definition: uct_def.h:354
+
Arguments to the client&#39;s connect callback.
Definition: uct_def.h:409
+
uct_cm_t * uct_cm_h
Definition: uct_def.h:105
+
uct_cb_param_flags
Flags for active message and tag-matching offload callbacks (callback&#39;s parameters).
Definition: uct_def.h:68
+
ucs_status_t(* uct_cm_ep_resolve_callback_t)(void *user_data, const uct_cm_ep_resolve_args_t *resolve_args)
Callback to notify that the client side endpoint is bound to a local device.
Definition: uct_def.h:795
+
Definition: uct_def.h:185
+
void * buffer
Definition: uct_def.h:148
+
ucs_sock_addr_t client_address
Definition: uct_def.h:382
+
uct_cm_listener_conn_request_args_field
Listener&#39;s connection request callback arguments field mask.
Definition: uct_def.h:320
+
void(* uct_cm_listener_conn_request_callback_t)(uct_listener_h listener, void *arg, const uct_cm_listener_conn_request_args_t *conn_req_args)
Callback to process an incoming connection request on the server side listener in a connection manage...
Definition: uct_def.h:667
+
void(* uct_cm_ep_server_conn_notify_callback_t)(uct_ep_h ep, void *arg, const uct_cm_ep_server_conn_notify_args_t *connect_args)
Callback to process an incoming connection establishment acknowledgment on the server side listener...
Definition: uct_def.h:697
+ +
UCT listener attributes, capabilities and limitations.
Definition: uct.h:1476
+
struct uct_worker * uct_worker_h
Definition: uct_def.h:95
+
Interface attributes: capabilities and limitations.
Definition: uct.h:1046
+
int uct_worker_cb_id_t
Definition: uct_def.h:111
+
ucs_status_t(* uct_error_handler_t)(void *arg, uct_ep_h ep, ucs_status_t status)
Callback to process peer failure.
Definition: uct_def.h:574
+
uint64_t field_mask
Definition: uct_def.h:287
+
Definition: uct_def.h:71
+
uint64_t field_mask
Definition: uct_def.h:415
+
struct uct_iface_addr uct_iface_addr_t
Definition: uct_def.h:99
+
void(* uct_completion_callback_t)(uct_completion_t *self)
Callback to process send completion.
Definition: uct_def.h:536
+
struct uct_cm_ep_server_conn_notify_args uct_cm_ep_server_conn_notify_args_t
Arguments to the server&#39;s notify callback.
+
struct uct_cm_config uct_cm_config_t
Definition: uct_def.h:82
+
struct uct_ep_addr uct_ep_addr_t
Definition: uct_def.h:100
+
ucs_status_t status
Definition: uct_def.h:248
+
struct uct_md * uct_md_h
Memory domain handler.
Definition: uct_def.h:86
+
const uct_cm_remote_data_t * remote_data
Definition: uct_def.h:420
+
ucs_status_t(* uct_tag_unexp_rndv_cb_t)(void *arg, unsigned flags, uint64_t stag, const void *header, unsigned header_length, uint64_t remote_addr, size_t length, const void *rkey_buf)
Callback to process unexpected rendezvous tagged message.
Definition: uct_def.h:882
+
Definition: uct_def.h:41
+
size_t(* uct_pack_callback_t)(void *dest, void *arg)
Callback for producing data.
Definition: uct_def.h:598
+ +
const void * conn_priv_data
Definition: uct_def.h:303
+
uct_cm_ep_resolve_args_field
Client-Server resolve callback arguments field mask.
Definition: uct_def.h:181
+
struct uct_cm_ep_resolve_args uct_cm_ep_resolve_args_t
Arguments to the client-server resolved callback.
+
size_t length
Definition: uct_def.h:149
+
ucs_status_t
Status codes.
Definition: status.h:45
+
uint64_t field_mask
Definition: uct_def.h:464
+
Parameters for creating a listener object uct_listener_h by uct_listener_create.
Definition: uct.h:1496
+
uct_cm_ep_priv_data_pack_args_field
Client-Server private data pack callback arguments field mask.
Definition: uct_def.h:165
+
uct_cm_remote_data_field
Remote data attributes field mask.
Definition: uct_def.h:259
+
ucs_status_t status
Definition: uct_def.h:431
+
Connection manager attributes, capabilities and limitations.
Definition: uct.h:1456
+
struct uct_listener * uct_listener_h
Definition: uct_def.h:107
+
void(* uct_unpack_callback_t)(void *arg, const void *data, size_t length)
Callback for consuming data.
Definition: uct_def.h:611
+
uint64_t field_mask
Definition: uct_def.h:360
+
Definition: uct_def.h:190
+
struct uct_ep_attr uct_ep_attr_t
Definition: uct_def.h:91
+
struct uct_component * uct_component_h
Definition: uct_def.h:78
+
const uct_cm_remote_data_t * remote_data
Definition: uct_def.h:377
+
uint64_t uct_tag_t
Definition: uct_def.h:110
+
struct uct_iface_config uct_iface_config_t
Definition: uct_def.h:80
+
uint64_t field_mask
Definition: uct_def.h:230
+
Parameters for connecting a UCT endpoint by uct_ep_connect.
Definition: uct.h:1432
+
unsigned count
Definition: uct_def.h:153
+
ssize_t(* uct_cm_ep_priv_data_pack_callback_t)(void *arg, const uct_cm_ep_priv_data_pack_args_t *pack_args, void *priv_data)
Callback to fill the user&#39;s private data in a client-server flow.
Definition: uct_def.h:771
+
struct uct_cm_ep_priv_data_pack_args uct_cm_ep_priv_data_pack_args_t
Arguments to the client-server private data pack callback.
+
uct_cm_ep_server_conn_notify_args_field
Field mask flags for server-side connection established notification callback.
Definition: uct_def.h:444
+ +
Arguments to the server&#39;s notify callback.
Definition: uct_def.h:458
+
Parameters for creating a UCT endpoint by uct_ep_create.
Definition: uct.h:1293
+
uct_mem_h memh
Definition: uct_def.h:150
+
Definition: uct_def.h:69
+ +
uct_conn_request_h conn_request
Definition: uct_def.h:372
+
Memory domain attributes.
Definition: uct.h:1532
+
void * uct_conn_request_h
Definition: uct_def.h:112
+
uct_cm_ep_client_connect_args_field
Field mask flags for client-side connection established callback.
Definition: uct_def.h:394
+
size_t dev_addr_length
Definition: uct_def.h:297
+ +
void(* uct_am_tracer_t)(void *arg, uct_am_trace_type_t type, uint8_t id, const void *data, size_t length, char *buffer, size_t max)
Callback to trace active messages.
Definition: uct_def.h:524
+
ucs_status_t(* uct_pending_callback_t)(uct_pending_req_t *self)
Callback to process pending requests.
Definition: uct_def.h:553
+
Pending request.
Definition: uct.h:1742
+ +
size_t stride
Definition: uct_def.h:151
+
void(* uct_cm_ep_client_connect_callback_t)(uct_ep_h ep, void *arg, const uct_cm_ep_client_connect_args_t *connect_args)
Callback to process an incoming connection response on the client side from the server or handle a lo...
Definition: uct_def.h:721
+
struct uct_cm_listener_conn_request_args uct_cm_listener_conn_request_args_t
Arguments to the listener&#39;s connection request callback.
+
struct uct_iface * uct_iface_h
Definition: uct_def.h:79
+
Arguments to the client-server resolved callback.
Definition: uct_def.h:224
+
Definition: types.h:137
+
const uct_device_addr_t * dev_addr
Definition: uct_def.h:292
+
struct uct_ep * uct_ep_h
Definition: uct_def.h:83
+ +
Definition: uct_def.h:38
+
Posted tag context.
Definition: uct.h:1755
+
Definition: uct_def.h:39
+
Definition: uct_def.h:40
+
ucs_status_t(* uct_tag_unexp_eager_cb_t)(void *arg, void *data, size_t length, unsigned flags, uct_tag_t stag, uint64_t imm, void **context)
Callback to process unexpected eager tagged message.
Definition: uct_def.h:845
+
enum uct_am_trace_type uct_am_trace_type_t
Definition: uct_def.h:97
+
Completion handle.
Definition: uct.h:1726
+
void * uct_rkey_ctx_h
Definition: uct_def.h:88
+
Definition: uct_def.h:42
+
struct uct_device_addr uct_device_addr_t
Definition: uct_def.h:98
+
ucs_status_t(* uct_am_callback_t)(void *arg, void *data, size_t length, unsigned flags)
Callback to process incoming active message.
Definition: uct_def.h:506
+
uintptr_t uct_rkey_t
Definition: uct_def.h:85
+ + +
Data received from the remote peer.
Definition: uct_def.h:281
+
struct uct_cm uct_cm_t
Definition: uct_def.h:104
+
uint64_t field_mask
Definition: uct_def.h:206
+
+
+ + + + diff --git a/api/v1.14/html/uct_hello_world_8c-example.html b/api/v1.14/html/uct_hello_world_8c-example.html new file mode 100644 index 00000000000..54cfbcd5e7e --- /dev/null +++ b/api/v1.14/html/uct_hello_world_8c-example.html @@ -0,0 +1,120 @@ + + + + + + +UCX: uct_hello_world.c + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
UCX +  1.14 +
+
Unified Communication X
+
+
+ + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
uct_hello_world.c
+
+
+

UCT hello world client / server example utility.

+
#include "hello_world_util.h"
#include <limits.h>
#include <uct/api/uct.h>
#include <assert.h>
#include <inttypes.h>
typedef enum {
FUNC_AM_SHORT,
FUNC_AM_BCOPY,
FUNC_AM_ZCOPY
} func_am_t;
typedef struct {
int is_uct_desc;
} recv_desc_t;
typedef struct {
char *server_name;
uint16_t server_port;
sa_family_t ai_family;
func_am_t func_am_type;
const char *dev_name;
const char *tl_name;
long test_strlen;
} cmd_args_t;
typedef struct {
uct_iface_attr_t iface_attr; /* Interface attributes: capabilities and limitations */
uct_iface_h iface; /* Communication interface context */
uct_md_attr_t md_attr; /* Memory domain attributes: capabilities and limitations */
uct_md_h md; /* Memory domain */
uct_worker_h worker; /* Workers represent allocated resources in a communication thread */
} iface_info_t;
/* Helper data type for am_short */
typedef struct {
uint64_t header;
char *payload;
size_t len;
} am_short_args_t;
/* Helper data type for am_bcopy */
typedef struct {
char *data;
size_t len;
} am_bcopy_args_t;
/* Helper data type for am_zcopy */
typedef struct {
uct_completion_t uct_comp;
uct_mem_h memh;
} zcopy_comp_t;
static void* desc_holder = NULL;
int print_err_usage(void);
static char *func_am_t_str(func_am_t func_am_type)
{
switch (func_am_type) {
case FUNC_AM_SHORT:
return "uct_ep_am_short";
case FUNC_AM_BCOPY:
return "uct_ep_am_bcopy";
case FUNC_AM_ZCOPY:
return "uct_ep_am_zcopy";
}
return NULL;
}
static size_t func_am_max_size(func_am_t func_am_type,
const uct_iface_attr_t *attr)
{
switch (func_am_type) {
case FUNC_AM_SHORT:
return attr->cap.am.max_short;
case FUNC_AM_BCOPY:
return attr->cap.am.max_bcopy;
case FUNC_AM_ZCOPY:
return attr->cap.am.max_zcopy;
}
return 0;
}
/* Helper function for am_short */
void am_short_params_pack(char *buf, size_t len, am_short_args_t *args)
{
args->header = *(uint64_t *)buf;
if (len > sizeof(args->header)) {
args->payload = (buf + sizeof(args->header));
args->len = len - sizeof(args->header);
} else {
args->payload = NULL;
args->len = 0;
}
}
ucs_status_t do_am_short(iface_info_t *if_info, uct_ep_h ep, uint8_t id,
const cmd_args_t *cmd_args, char *buf)
{
ucs_status_t status;
am_short_args_t send_args;
am_short_params_pack(buf, cmd_args->test_strlen, &send_args);
do {
/* Send active message to remote endpoint */
status = uct_ep_am_short(ep, id, send_args.header, send_args.payload,
send_args.len);
uct_worker_progress(if_info->worker);
} while (status == UCS_ERR_NO_RESOURCE);
return status;
}
/* Pack callback for am_bcopy */
size_t am_bcopy_data_pack_cb(void *dest, void *arg)
{
am_bcopy_args_t *bc_args = arg;
mem_type_memcpy(dest, bc_args->data, bc_args->len);
return bc_args->len;
}
ucs_status_t do_am_bcopy(iface_info_t *if_info, uct_ep_h ep, uint8_t id,
const cmd_args_t *cmd_args, char *buf)
{
am_bcopy_args_t args;
ssize_t len;
args.data = buf;
args.len = cmd_args->test_strlen;
/* Send active message to remote endpoint */
do {
len = uct_ep_am_bcopy(ep, id, am_bcopy_data_pack_cb, &args, 0);
uct_worker_progress(if_info->worker);
} while (len == UCS_ERR_NO_RESOURCE);
/* Negative len is an error code */
return (len >= 0) ? UCS_OK : (ucs_status_t)len;
}
/* Completion callback for am_zcopy */
void zcopy_completion_cb(uct_completion_t *self)
{
zcopy_comp_t *comp = (zcopy_comp_t *)self;
assert((comp->uct_comp.count == 0) && (self->status == UCS_OK));
if (comp->memh != UCT_MEM_HANDLE_NULL) {
uct_md_mem_dereg(comp->md, comp->memh);
}
desc_holder = (void *)0xDEADBEEF;
}
ucs_status_t do_am_zcopy(iface_info_t *if_info, uct_ep_h ep, uint8_t id,
const cmd_args_t *cmd_args, char *buf)
{
ucs_status_t status = UCS_OK;
uct_mem_h memh;
uct_iov_t iov;
zcopy_comp_t comp;
if (if_info->md_attr.cap.flags & UCT_MD_FLAG_NEED_MEMH) {
status = uct_md_mem_reg(if_info->md, buf, cmd_args->test_strlen,
} else {
memh = UCT_MEM_HANDLE_NULL;
}
iov.buffer = buf;
iov.length = cmd_args->test_strlen;
iov.memh = memh;
iov.stride = 0;
iov.count = 1;
comp.uct_comp.func = zcopy_completion_cb;
comp.uct_comp.count = 1;
comp.uct_comp.status = UCS_OK;
comp.md = if_info->md;
comp.memh = memh;
if (status == UCS_OK) {
do {
status = uct_ep_am_zcopy(ep, id, NULL, 0, &iov, 1, 0,
(uct_completion_t *)&comp);
uct_worker_progress(if_info->worker);
} while (status == UCS_ERR_NO_RESOURCE);
if (status == UCS_INPROGRESS) {
while (!desc_holder) {
/* Explicitly progress outstanding active message request */
uct_worker_progress(if_info->worker);
}
status = UCS_OK;
}
}
return status;
}
static void print_strings(const char *label, const char *local_str,
const char *remote_str, size_t length)
{
fprintf(stdout, "\n\n----- UCT TEST SUCCESS ----\n\n");
fprintf(stdout, "[%s] %s sent %s (%" PRIu64 " bytes)", label, local_str,
(length != 0) ? remote_str : "<none>", length);
fprintf(stdout, "\n\n---------------------------\n");
fflush(stdout);
}
/* Callback to handle receive active message */
static ucs_status_t hello_world(void *arg, void *data, size_t length,
unsigned flags)
{
func_am_t func_am_type = *(func_am_t *)arg;
recv_desc_t *rdesc;
print_strings("callback", func_am_t_str(func_am_type), data, length);
if (flags & UCT_CB_PARAM_FLAG_DESC) {
rdesc = (recv_desc_t *)data - 1;
/* Hold descriptor to release later and return UCS_INPROGRESS */
rdesc->is_uct_desc = 1;
desc_holder = rdesc;
}
/* We need to copy-out data and return UCS_OK if want to use the data
* outside the callback */
rdesc = malloc(sizeof(*rdesc) + length);
CHKERR_ACTION(rdesc == NULL, "allocate memory\n", return UCS_ERR_NO_MEMORY);
rdesc->is_uct_desc = 0;
memcpy(rdesc + 1, data, length);
desc_holder = rdesc;
return UCS_OK;
}
/* Init the transport by its name */
static ucs_status_t init_iface(char *dev_name, char *tl_name,
func_am_t func_am_type,
iface_info_t *iface_p)
{
ucs_status_t status;
uct_iface_config_t *config; /* Defines interface configuration options */
params.mode.device.tl_name = tl_name;
params.mode.device.dev_name = dev_name;
params.stats_root = NULL;
params.rx_headroom = sizeof(recv_desc_t);
UCS_CPU_ZERO(&params.cpu_mask);
/* Read transport-specific interface configuration */
status = uct_md_iface_config_read(iface_p->md, tl_name, NULL, NULL, &config);
CHKERR_JUMP(UCS_OK != status, "setup iface_config", error_ret);
/* Open communication interface */
assert(iface_p->iface == NULL);
status = uct_iface_open(iface_p->md, iface_p->worker, &params, config,
&iface_p->iface);
CHKERR_JUMP(UCS_OK != status, "open temporary interface", error_ret);
/* Enable progress on the interface */
uct_iface_progress_enable(iface_p->iface,
/* Get interface attributes */
status = uct_iface_query(iface_p->iface, &iface_p->iface_attr);
CHKERR_JUMP(UCS_OK != status, "query iface", error_iface);
/* Check if current device and transport support required active messages */
if ((func_am_type == FUNC_AM_SHORT) &&
(iface_p->iface_attr.cap.flags & UCT_IFACE_FLAG_AM_SHORT)) {
if (test_mem_type != UCS_MEMORY_TYPE_CUDA) {
return UCS_OK;
} else {
fprintf(stderr, "AM short protocol doesn't support CUDA memory");
}
}
if ((func_am_type == FUNC_AM_BCOPY) &&
(iface_p->iface_attr.cap.flags & UCT_IFACE_FLAG_AM_BCOPY)) {
return UCS_OK;
}
if ((func_am_type == FUNC_AM_ZCOPY) &&
(iface_p->iface_attr.cap.flags & UCT_IFACE_FLAG_AM_ZCOPY)) {
return UCS_OK;
}
error_iface:
uct_iface_close(iface_p->iface);
iface_p->iface = NULL;
error_ret:
}
/* Device and transport to be used are determined by minimum latency */
static ucs_status_t dev_tl_lookup(const cmd_args_t *cmd_args,
iface_info_t *iface_p)
{
uct_tl_resource_desc_t *tl_resources = NULL; /* Communication resource descriptor */
unsigned num_tl_resources = 0; /* Number of transport resources resource objects created */
uct_component_h *components;
unsigned num_components;
unsigned cmpt_index;
uct_component_attr_t component_attr;
unsigned md_index;
unsigned tl_index;
uct_md_config_t *md_config;
ucs_status_t status;
status = uct_query_components(&components, &num_components);
CHKERR_JUMP(UCS_OK != status, "query for components", error_ret);
for (cmpt_index = 0; cmpt_index < num_components; ++cmpt_index) {
status = uct_component_query(components[cmpt_index], &component_attr);
CHKERR_JUMP(UCS_OK != status, "query component attributes",
release_component_list);
component_attr.md_resources = alloca(sizeof(*component_attr.md_resources) *
component_attr.md_resource_count);
status = uct_component_query(components[cmpt_index], &component_attr);
CHKERR_JUMP(UCS_OK != status, "query for memory domain resources",
release_component_list);
iface_p->iface = NULL;
/* Iterate through memory domain resources */
for (md_index = 0; md_index < component_attr.md_resource_count; ++md_index) {
status = uct_md_config_read(components[cmpt_index], NULL, NULL,
&md_config);
CHKERR_JUMP(UCS_OK != status, "read MD config",
release_component_list);
status = uct_md_open(components[cmpt_index],
component_attr.md_resources[md_index].md_name,
md_config, &iface_p->md);
uct_config_release(md_config);
CHKERR_JUMP(UCS_OK != status, "open memory domains",
release_component_list);
status = uct_md_query(iface_p->md, &iface_p->md_attr);
CHKERR_JUMP(UCS_OK != status, "query iface",
close_md);
status = uct_md_query_tl_resources(iface_p->md, &tl_resources,
&num_tl_resources);
CHKERR_JUMP(UCS_OK != status, "query transport resources", close_md);
/* Go through each available transport and find the proper name */
for (tl_index = 0; tl_index < num_tl_resources; ++tl_index) {
if (!strcmp(cmd_args->dev_name, tl_resources[tl_index].dev_name) &&
!strcmp(cmd_args->tl_name, tl_resources[tl_index].tl_name)) {
if ((cmd_args->func_am_type == FUNC_AM_ZCOPY) &&
!(iface_p->md_attr.cap.reg_mem_types &
UCS_BIT(test_mem_type))) {
fprintf(stderr, "Unsupported memory type %s by "
UCT_TL_RESOURCE_DESC_FMT" on %s MD\n",
ucs_memory_type_names[test_mem_type],
UCT_TL_RESOURCE_DESC_ARG(&tl_resources[tl_index]),
component_attr.md_resources[md_index].md_name);
break;
}
status = init_iface(tl_resources[tl_index].dev_name,
tl_resources[tl_index].tl_name,
cmd_args->func_am_type, iface_p);
if (status != UCS_OK) {
break;
}
fprintf(stdout, "Using "UCT_TL_RESOURCE_DESC_FMT"\n",
UCT_TL_RESOURCE_DESC_ARG(&tl_resources[tl_index]));
goto release_tl_resources;
}
}
release_tl_resources:
if ((status == UCS_OK) &&
(tl_index < num_tl_resources)) {
goto release_component_list;
}
tl_resources = NULL;
num_tl_resources = 0;
uct_md_close(iface_p->md);
}
}
fprintf(stderr, "No supported (dev/tl) found (%s/%s)\n",
cmd_args->dev_name, cmd_args->tl_name);
release_component_list:
error_ret:
return status;
close_md:
uct_md_close(iface_p->md);
goto release_component_list;
}
int print_err_usage()
{
const char func_template[] = " -%c Select \"%s\" function to send the message%s\n";
fprintf(stderr, "Usage: uct_hello_world [parameters]\n");
fprintf(stderr, "UCT hello world client/server example utility\n");
fprintf(stderr, "\nParameters are:\n");
fprintf(stderr, func_template, 'i', func_am_t_str(FUNC_AM_SHORT), " (default)");
fprintf(stderr, func_template, 'b', func_am_t_str(FUNC_AM_BCOPY), "");
fprintf(stderr, func_template, 'z', func_am_t_str(FUNC_AM_ZCOPY), "");
fprintf(stderr, " -d Select device name\n");
fprintf(stderr, " -t Select transport layer\n");
fprintf(stderr, " -n <name> Set node name or IP address "
"of the server (required for client and should be ignored "
"for server)\n");
print_common_help();
fprintf(stderr, "\nExample:\n");
fprintf(stderr, " Server: uct_hello_world -d eth0 -t tcp\n");
fprintf(stderr, " Client: uct_hello_world -d eth0 -t tcp -n localhost\n");
}
int parse_cmd(int argc, char * const argv[], cmd_args_t *args)
{
int c = 0, idx = 0;
assert(args);
memset(args, 0, sizeof(*args));
/* Defaults */
args->server_port = 13337;
args->ai_family = AF_INET;
args->func_am_type = FUNC_AM_SHORT;
args->test_strlen = 16;
while ((c = getopt(argc, argv, "6ibzd:t:n:p:s:m:h")) != -1) {
switch (c) {
case 'i':
args->func_am_type = FUNC_AM_SHORT;
break;
case 'b':
args->func_am_type = FUNC_AM_BCOPY;
break;
case 'z':
args->func_am_type = FUNC_AM_ZCOPY;
break;
case 'd':
args->dev_name = optarg;
break;
case 't':
args->tl_name = optarg;
break;
case 'n':
args->server_name = optarg;
break;
case '6':
args->ai_family = AF_INET6;
break;
case 'p':
args->server_port = atoi(optarg);
if (args->server_port <= 0) {
fprintf(stderr, "Wrong server port number %d\n",
args->server_port);
}
break;
case 's':
args->test_strlen = atol(optarg);
if (args->test_strlen < 0) {
fprintf(stderr, "Wrong string size %ld\n", args->test_strlen);
}
break;
case 'm':
test_mem_type = parse_mem_type(optarg);
if (test_mem_type == UCS_MEMORY_TYPE_LAST) {
}
break;
case 'h':
default:
return print_err_usage();
}
}
fprintf(stderr, "INFO: UCT_HELLO_WORLD AM function = %s server = %s port = %d\n",
func_am_t_str(args->func_am_type), args->server_name,
args->server_port);
for (idx = optind; idx < argc; idx++) {
fprintf(stderr, "WARNING: Non-option argument %s\n", argv[idx]);
}
if (args->dev_name == NULL) {
fprintf(stderr, "WARNING: device is not set\n");
return print_err_usage();
}
if (args->tl_name == NULL) {
fprintf(stderr, "WARNING: transport layer is not set\n");
return print_err_usage();
}
return UCS_OK;
}
/* The caller is responsible to free *rbuf */
int sendrecv(int sock, const void *sbuf, size_t slen, void **rbuf)
{
int ret = 0;
size_t rlen = 0;
*rbuf = NULL;
ret = send(sock, &slen, sizeof(slen), 0);
if ((ret < 0) || (ret != sizeof(slen))) {
fprintf(stderr, "failed to send buffer length\n");
return -1;
}
ret = send(sock, sbuf, slen, 0);
if (ret != (int)slen) {
fprintf(stderr, "failed to send buffer, return value %d\n", ret);
return -1;
}
ret = recv(sock, &rlen, sizeof(rlen), MSG_WAITALL);
if ((ret != sizeof(rlen)) || (rlen > (SIZE_MAX / 2))) {
fprintf(stderr,
"failed to receive device address length, return value %d\n",
ret);
return -1;
}
*rbuf = calloc(1, rlen);
if (!*rbuf) {
fprintf(stderr, "failed to allocate receive buffer\n");
return -1;
}
ret = recv(sock, *rbuf, rlen, MSG_WAITALL);
if (ret != (int)rlen) {
fprintf(stderr, "failed to receive device address, return value %d\n",
ret);
return -1;
}
return 0;
}
static void progress_worker(void *arg)
{
}
int main(int argc, char **argv)
{
uct_device_addr_t *peer_dev = NULL;
uct_iface_addr_t *peer_iface = NULL;
uct_ep_addr_t *own_ep = NULL;
uct_ep_addr_t *peer_ep = NULL;
uint8_t id = 0;
int oob_sock = -1; /* OOB connection socket */
ucs_status_t status = UCS_OK; /* status codes for UCS */
uct_iface_addr_t *own_iface;
uct_ep_h ep; /* Remote endpoint */
ucs_async_context_t *async; /* Async event context manages
times and fd notifications */
cmd_args_t cmd_args;
iface_info_t if_info;
uct_ep_params_t ep_params;
int res;
/* Parse the command line */
if (parse_cmd(argc, argv, &cmd_args)) {
goto out;
}
/* Initialize context
* It is better to use different contexts for different workers */
status = ucs_async_context_create(UCS_ASYNC_MODE_THREAD_SPINLOCK, &async);
CHKERR_JUMP(UCS_OK != status, "init async context", out);
/* Create a worker object */
status = uct_worker_create(async, UCS_THREAD_MODE_SINGLE, &if_info.worker);
CHKERR_JUMP(UCS_OK != status, "create worker", out_cleanup_async);
/* Search for the desired transport */
status = dev_tl_lookup(&cmd_args, &if_info);
CHKERR_JUMP(UCS_OK != status, "find supported device and transport",
out_destroy_worker);
/* Set active message handler */
status = uct_iface_set_am_handler(if_info.iface, id, hello_world,
&cmd_args.func_am_type, 0);
CHKERR_JUMP(UCS_OK != status, "set callback", out_destroy_iface);
own_dev = (uct_device_addr_t*)calloc(1, if_info.iface_attr.device_addr_len);
CHKERR_JUMP(NULL == own_dev, "allocate memory for dev addr",
out_destroy_iface);
own_iface = (uct_iface_addr_t*)calloc(1, if_info.iface_attr.iface_addr_len);
CHKERR_JUMP(NULL == own_iface, "allocate memory for if addr",
out_free_dev_addrs);
oob_sock = connect_common(cmd_args.server_name, cmd_args.server_port,
cmd_args.ai_family);
CHKERR_ACTION(oob_sock < 0, "OOB connect",
status = UCS_ERR_IO_ERROR; goto out_close_oob_sock);
/* Get device address */
if (if_info.iface_attr.device_addr_len > 0) {
status = uct_iface_get_device_address(if_info.iface, own_dev);
CHKERR_JUMP(UCS_OK != status, "get device address", out_free_if_addrs);
res = sendrecv(oob_sock, own_dev, if_info.iface_attr.device_addr_len,
(void**)&peer_dev);
CHKERR_ACTION(0 != res, "device exchange", status = UCS_ERR_NO_MESSAGE;
goto out_close_oob_sock);
}
/* Get interface address */
if (if_info.iface_attr.iface_addr_len > 0) {
status = uct_iface_get_address(if_info.iface, own_iface);
CHKERR_JUMP(UCS_OK != status, "get interface address",
out_close_oob_sock);
status = (ucs_status_t)sendrecv(oob_sock, own_iface, if_info.iface_attr.iface_addr_len,
(void **)&peer_iface);
CHKERR_JUMP(0 != status, "ifaces exchange", out_close_oob_sock);
}
status = (ucs_status_t)uct_iface_is_reachable(if_info.iface, peer_dev,
peer_iface);
CHKERR_JUMP(0 == status, "reach the peer", out_close_oob_sock);
ep_params.iface = if_info.iface;
if (if_info.iface_attr.cap.flags & UCT_IFACE_FLAG_CONNECT_TO_EP) {
own_ep = (uct_ep_addr_t*)calloc(1, if_info.iface_attr.ep_addr_len);
CHKERR_ACTION(NULL == own_ep, "allocate memory for ep addrs",
status = UCS_ERR_NO_MEMORY; goto out_close_oob_sock);
/* Create new endpoint */
status = uct_ep_create(&ep_params, &ep);
CHKERR_JUMP(UCS_OK != status, "create endpoint", out_free_ep_addrs);
/* Get endpoint address */
status = uct_ep_get_address(ep, own_ep);
CHKERR_JUMP(UCS_OK != status, "get endpoint address", out_free_ep);
status = (ucs_status_t)sendrecv(oob_sock, own_ep, if_info.iface_attr.ep_addr_len,
(void **)&peer_ep);
CHKERR_JUMP(0 != status, "EPs exchange", out_free_ep);
/* Connect endpoint to a remote endpoint */
status = uct_ep_connect_to_ep(ep, peer_dev, peer_ep);
if (barrier(oob_sock, progress_worker, if_info.worker)) {
status = UCS_ERR_IO_ERROR;
goto out_free_ep;
}
} else if (if_info.iface_attr.cap.flags & UCT_IFACE_FLAG_CONNECT_TO_IFACE) {
/* Create an endpoint which is connected to a remote interface */
ep_params.dev_addr = peer_dev;
ep_params.iface_addr = peer_iface;
status = uct_ep_create(&ep_params, &ep);
CHKERR_JUMP(UCS_OK != status, "create endpoint", out_free_ep_addrs);
} else {
goto out_free_ep_addrs;
}
if (cmd_args.test_strlen > func_am_max_size(cmd_args.func_am_type, &if_info.iface_attr)) {
fprintf(stderr, "Test string is too long: %ld, max supported: %lu\n",
cmd_args.test_strlen,
func_am_max_size(cmd_args.func_am_type, &if_info.iface_attr));
goto out_free_ep;
}
if (cmd_args.server_name) {
char *str = (char *)mem_type_malloc(cmd_args.test_strlen);
CHKERR_ACTION(str == NULL, "allocate memory",
status = UCS_ERR_NO_MEMORY; goto out_free_ep);
res = generate_test_string(str, cmd_args.test_strlen);
CHKERR_ACTION(res < 0, "generate test string",
status = UCS_ERR_NO_MEMORY; goto out_free_ep);
/* Send active message to remote endpoint */
if (cmd_args.func_am_type == FUNC_AM_SHORT) {
status = do_am_short(&if_info, ep, id, &cmd_args, str);
} else if (cmd_args.func_am_type == FUNC_AM_BCOPY) {
status = do_am_bcopy(&if_info, ep, id, &cmd_args, str);
} else if (cmd_args.func_am_type == FUNC_AM_ZCOPY) {
status = do_am_zcopy(&if_info, ep, id, &cmd_args, str);
}
mem_type_free(str);
CHKERR_JUMP(UCS_OK != status, "send active msg", out_free_ep);
} else {
recv_desc_t *rdesc;
while (desc_holder == NULL) {
/* Explicitly progress any outstanding active message requests */
uct_worker_progress(if_info.worker);
}
rdesc = desc_holder;
print_strings("main", func_am_t_str(cmd_args.func_am_type),
(char *)(rdesc + 1), cmd_args.test_strlen);
if (rdesc->is_uct_desc) {
/* Release descriptor because callback returns UCS_INPROGRESS */
} else {
free(rdesc);
}
}
if (barrier(oob_sock, progress_worker, if_info.worker)) {
status = UCS_ERR_IO_ERROR;
}
out_free_ep:
out_free_ep_addrs:
free(own_ep);
free(peer_ep);
out_close_oob_sock:
close(oob_sock);
out_free_if_addrs:
free(own_iface);
free(peer_iface);
out_free_dev_addrs:
free(own_dev);
free(peer_dev);
out_destroy_iface:
uct_iface_close(if_info.iface);
uct_md_close(if_info.md);
out_destroy_worker:
uct_worker_destroy(if_info.worker);
out_cleanup_async:
out:
return (status == UCS_ERR_UNSUPPORTED) ? UCS_OK : status;
}
+
+ + + + diff --git a/api/v1.14/ucx-v1.14.pdf b/api/v1.14/ucx-v1.14.pdf new file mode 100644 index 00000000000..466cf7fbf7a Binary files /dev/null and b/api/v1.14/ucx-v1.14.pdf differ diff --git a/api/v1.14/ucx.pdf b/api/v1.14/ucx.pdf new file mode 120000 index 00000000000..7f4f1c7bb92 --- /dev/null +++ b/api/v1.14/ucx.pdf @@ -0,0 +1 @@ +ucx-v1.14.pdf \ No newline at end of file