Transport interface operations uct_iface_ops_t
Name
Description
ep_put_short
ep_put_bcopy
ep_put_zcopy
Name
Description
ep_get_short
ep_get_bcopy
ep_get_zcopy
Name
Description
ep_am_short
ep_am_bcopy
ep_am_zcopy
Name
Description
ep_atomic_cswap64
ep_atomic_cswap32
ep_atomic32_post
ep_atomic64_post
ep_atomic32_fetch
ep_atomic64_fetch
Endpoint tagged operations
Name
Description
ep_tag_eager_short
ep_tag_eager_bcopy
ep_tag_eager_zcopy
ep_tag_rndv_zcopy
ep_tag_rndv_cancel
ep_tag_rndv_request
Interface tagged operations
Name
Description
iface_tag_recv_zcopy
iface_tag_recv_cancel
Name
Description
ep_pending_add
ep_pending_purge
Name
Description
ep_flush
ep_fence
ep_check
Endpoint connection establishment
Name
Description
ep_create
ep_destroy
ep_get_address
ep_connect_to_ep
iface_accept
iface_reject
Interface synchronization
Name
Description
iface_flush
iface_fence
Interface progress control
Name
Description
iface_progress_enable
iface_progress_disable
iface_progress
Name
Description
iface_event_fd_get
iface_event_arm
Name
Description
iface_close
iface_query
Interface connection establishment
Name
Description
iface_get_device_address
iface_get_address
iface_is_reachable
function
RDMACM
TCP
ep_am_bcopy
ep_am_short
ep_am_zcopy
ep_atomic32_fetch
ep_atomic32_post
ep_atomic64_fetch
ep_atomic64_post
ep_atomic_cswap32
ep_atomic_cswap64
ep_check
ep_connect_to_ep
ep_create
Y
Y
ep_destroy
Y
Y
ep_fence
Y
Y
ep_flush
Y
Y
ep_get_address
ep_get_bcopy
ep_get_short
ep_get_zcopy
ep_pending_add
ep_pending_purge
Y
Y
ep_put_bcopy
ep_put_short
ep_put_zcopy
ep_tag_eager_bcopy
ep_tag_eager_short
ep_tag_eager_zcopy
ep_tag_rndv_cancel
ep_tag_rndv_request
ep_tag_rndv_zcopy
iface_accept
Y
Y
iface_close
Y
Y
iface_event_arm
iface_event_fd_get
iface_fence
Y
Y
iface_flush
Y
Y
iface_get_address
Y
Y
iface_get_device_address
Y
Y
iface_is_reachable
Y
Y
iface_progress
Y
Y
iface_progress_disable
Y
Y
iface_progress_enable
Y
Y
iface_query
Y
Y
iface_reject
Y
Y
iface_tag_recv_cancel
iface_tag_recv_zcopy
typedef struct uct_ib_iface_ops uct_ib_iface_ops_t ;
struct uct_ib_iface_ops {
uct_iface_ops_t super ;
ucs_status_t (* create_cq )(struct ibv_context * context , int cqe ,
struct ibv_comp_channel * channel ,
int comp_vector , int ignore_overrun ,
size_t * inl , struct ibv_cq * * cq_p );
ucs_status_t (* arm_cq )(uct_ib_iface_t * iface ,
uct_ib_dir_t dir ,
int solicited_only );
void (* event_cq )(uct_ib_iface_t * iface ,
uct_ib_dir_t dir );
void (* handle_failure )(uct_ib_iface_t * iface , void * arg ,
ucs_status_t status );
ucs_status_t (* set_ep_failed )(uct_ib_iface_t * iface , uct_ep_h ep ,
ucs_status_t status );
ucs_status_t (* create_qp )(uct_ib_iface_t * iface , uct_ib_qp_attr_t * attr ,
struct ibv_qp * * qp_p );
ucs_status_t (* init_res_domain )(uct_ib_iface_t * iface );
void (* cleanup_res_domain )(uct_ib_iface_t * iface );
};
typedef struct uct_rc_iface_ops {
uct_ib_iface_ops_t super ;
ucs_status_t (* init_rx )(uct_rc_iface_t * iface ,
const uct_rc_iface_config_t * config );
ucs_status_t (* fc_ctrl )(uct_ep_t * ep , unsigned op ,
uct_rc_fc_request_t * req );
ucs_status_t (* fc_handler )(uct_rc_iface_t * iface , unsigned qp_num ,
uct_rc_hdr_t * hdr , unsigned length ,
uint32_t imm_data , uint16_t lid ,
unsigned flags );
} uct_rc_iface_ops_t ;