13#include <ucc/api/ucc_def.h>
14#include <ucc/api/ucc_version.h>
15#include <ucc/api/ucc_status.h>
195#define UCC_DT_INT8 UCC_PREDEFINED_DT(0)
196#define UCC_DT_INT16 UCC_PREDEFINED_DT(1)
197#define UCC_DT_INT32 UCC_PREDEFINED_DT(2)
198#define UCC_DT_INT64 UCC_PREDEFINED_DT(3)
199#define UCC_DT_INT128 UCC_PREDEFINED_DT(4)
200#define UCC_DT_UINT8 UCC_PREDEFINED_DT(5)
201#define UCC_DT_UINT16 UCC_PREDEFINED_DT(6)
202#define UCC_DT_UINT32 UCC_PREDEFINED_DT(7)
203#define UCC_DT_UINT64 UCC_PREDEFINED_DT(8)
204#define UCC_DT_UINT128 UCC_PREDEFINED_DT(9)
205#define UCC_DT_FLOAT16 UCC_PREDEFINED_DT(10)
206#define UCC_DT_FLOAT32 UCC_PREDEFINED_DT(11)
207#define UCC_DT_FLOAT64 UCC_PREDEFINED_DT(12)
208#define UCC_DT_BFLOAT16 UCC_PREDEFINED_DT(13)
209#define UCC_DT_PREDEFINED_LAST 14
265 ucc_dt_generic_t *
dt;
295 void* (*start_pack)(
void *context,
const void *buffer,
size_t count);
310 void* (*start_unpack)(
void *context,
void *buffer,
size_t count);
343 size_t (*
pack) (
void *state,
size_t offset,
void *dest,
size_t max_length);
711ucc_status_t ucc_init_version(
unsigned api_major_version,
712 unsigned api_minor_version,
750 return ucc_init_version(UCC_API_MAJOR, UCC_API_MINOR, params, config,
848 void *allgather_info,
void **request);
975 const char *filename,
1049 const char *component,
const char *name,
1511 uint32_t num_contexts,
ucc_memory_type_t mem_type
Definition: ucc.h:1766
ucc_aint_t * displacements
Definition: ucc.h:1756
void * buffer
Definition: ucc.h:1774
ucc_datatype_t datatype
Definition: ucc.h:1776
ucc_count_t * counts
Definition: ucc.h:1754
ucc_count_t count
Definition: ucc.h:1775
void * buffer
Definition: ucc.h:1753
ucc_datatype_t datatype
Definition: ucc.h:1765
ucc_memory_type_t mem_type
Definition: ucc.h:1777
uint64_t ucc_count_t
Count datatype to support both small (32 bit) and large counts (64 bit)
Definition: ucc_def.h:106
enum ucc_memory_type ucc_memory_type_t
ucc_memory_type
Definition: ucc.h:162
uint16_t ucc_coll_id_t
Datatype for collective tags.
Definition: ucc_def.h:135
ucc_coll_args_field
Definition: ucc.h:1792
uint64_t ucc_aint_t
Datatype to support both small (32 bit) and large address offsets (64 bit)
Definition: ucc_def.h:112
struct ucc_coll_buffer_info_v ucc_coll_buffer_info_v_t
ucc_coll_args_flags_t
Definition: ucc.h:1697
ucc_error_type_t
Definition: ucc.h:1784
struct ucc_coll_buffer_info ucc_coll_buffer_info_t
@ UCC_MEMORY_TYPE_ROCM
Definition: ucc.h:166
@ UCC_MEMORY_TYPE_CUDA
Definition: ucc.h:164
@ UCC_MEMORY_TYPE_HOST
Definition: ucc.h:163
@ UCC_MEMORY_TYPE_ROCM_MANAGED
Definition: ucc.h:167
@ UCC_MEMORY_TYPE_CUDA_MANAGED
Definition: ucc.h:165
@ UCC_MEMORY_TYPE_LAST
Definition: ucc.h:168
@ UCC_MEMORY_TYPE_UNKNOWN
Definition: ucc.h:169
@ UCC_COLL_ARGS_FIELD_FLAGS
Definition: ucc.h:1793
@ UCC_COLL_ARGS_FIELD_GLOBAL_WORK_BUFFER
Definition: ucc.h:1796
@ UCC_COLL_ARGS_FIELD_TAG
Definition: ucc.h:1794
@ UCC_COLL_ARGS_FIELD_CB
Definition: ucc.h:1795
@ UCC_COLL_ARGS_FLAG_CONTIG_DST_BUFFER
Definition: ucc.h:1726
@ UCC_COLL_ARGS_FLAG_IN_PLACE
Definition: ucc.h:1698
@ UCC_COLL_ARGS_FLAG_CONTIG_SRC_BUFFER
Definition: ucc.h:1720
@ UCC_COLL_ARGS_FLAG_TIMEOUT
Definition: ucc.h:1732
@ UCC_COLL_ARGS_FLAG_MEM_MAPPED_BUFFERS
Definition: ucc.h:1741
@ UCC_COLL_ARGS_FLAG_DISPLACEMENTS_64BIT
Definition: ucc.h:1716
@ UCC_COLL_ARGS_FLAG_PERSISTENT
Definition: ucc.h:1702
@ UCC_COLL_ARGS_FLAG_COUNT_64BIT
Definition: ucc.h:1713
@ UCC_ERR_TYPE_LOCAL
Definition: ucc.h:1785
@ UCC_ERR_TYPE_GLOBAL
Definition: ucc.h:1786
ucc_reduction_op_t op
Definition: ucc.h:1843
void * global_work_buffer
Definition: ucc.h:1853
ucc_coll_callback_t cb
Definition: ucc.h:1863
double timeout
Definition: ucc.h:1864
ucc_coll_type_t coll_type
Definition: ucc.h:1834
union ucc_coll_args::@3 src
ucc_error_type_t error_type
Definition: ucc.h:1851
uint64_t root
Definition: ucc.h:1849
ucc_coll_id_t tag
Definition: ucc.h:1852
uint64_t mask
Definition: ucc.h:1833
uint64_t flags
Definition: ucc.h:1848
union ucc_coll_args::@4 dst
static ucc_status_t ucc_collective_test(ucc_coll_req_h request)
The routine to query the status of the collective operation.
Definition: ucc.h:1966
ucc_status_t ucc_collective_finalize(ucc_coll_req_h request)
The routine to release the collective operation associated with the request object.
ucc_status_t ucc_collective_init_and_post(ucc_coll_args_t *coll_args, ucc_coll_req_h *request, ucc_team_h team)
The routine to initialize and post a collective operation.
ucc_status_t ucc_collective_post(ucc_coll_req_h request)
The routine to post a collective operation.
struct ucc_coll_args ucc_coll_args_t
Structure representing arguments for the collective operations.
ucc_status_t ucc_collective_init(ucc_coll_args_t *coll_args, ucc_coll_req_h *request, ucc_team_h team)
The routine to initialize a collective operation.
Structure representing arguments for the collective operations.
Definition: ucc.h:1832
ucc_coll_sync_type_t sync_type
Definition: ucc.h:938
void * address
Definition: ucc.h:872
ucc_mem_map_params_t mem_params
Definition: ucc.h:913
size_t len
Definition: ucc.h:873
uint64_t ctx_id
Definition: ucc.h:912
ucc_coll_sync_type_t sync_type
Definition: ucc.h:910
uint64_t mask
Definition: ucc.h:908
ucc_context_addr_len_t ctx_addr_len
Definition: ucc.h:940
uint64_t global_work_buffer_size
Definition: ucc.h:941
uint64_t n_segments
Definition: ucc.h:882
ucc_context_type_t type
Definition: ucc.h:937
ucc_context_type_t type
Definition: ucc.h:909
ucc_mem_map_t * segments
Definition: ucc.h:881
ucc_context_oob_coll_t oob
Definition: ucc.h:911
ucc_context_addr_h ctx_addr
Definition: ucc.h:939
uint64_t mask
Definition: ucc.h:936
struct ucc_mem_map_params ucc_mem_map_params_t
ucc_context_attr_field
Definition: ucc.h:833
struct ucc_oob_coll ucc_oob_coll_t
OOB collective operation for creating the context.
ucc_context_type_t
Definition: ucc.h:812
struct ucc_context_config * ucc_context_config_h
UCC context configuration handle.
Definition: ucc_def.h:99
struct ucc_context_params ucc_context_params_t
Structure representing the parameters to customize the context.
struct ucc_mem_map ucc_mem_map_t
struct ucc_context * ucc_context_h
UCC context.
Definition: ucc_def.h:38
struct ucc_context_attr ucc_context_attr_t
Structure representing context attributes.
ucc_context_params_field
Definition: ucc.h:821
@ UCC_CONTEXT_ATTR_FIELD_SYNC_TYPE
Definition: ucc.h:835
@ UCC_CONTEXT_ATTR_FIELD_CTX_ADDR
Definition: ucc.h:836
@ UCC_CONTEXT_ATTR_FIELD_WORK_BUFFER_SIZE
Definition: ucc.h:838
@ UCC_CONTEXT_ATTR_FIELD_TYPE
Definition: ucc.h:834
@ UCC_CONTEXT_ATTR_FIELD_CTX_ADDR_LEN
Definition: ucc.h:837
@ UCC_CONTEXT_SHARED
Definition: ucc.h:814
@ UCC_CONTEXT_EXCLUSIVE
Definition: ucc.h:813
@ UCC_CONTEXT_PARAM_FIELD_TYPE
Definition: ucc.h:822
@ UCC_CONTEXT_PARAM_FIELD_MEM_PARAMS
Definition: ucc.h:826
@ UCC_CONTEXT_PARAM_FIELD_SYNC_TYPE
Definition: ucc.h:823
@ UCC_CONTEXT_PARAM_FIELD_OOB
Definition: ucc.h:824
@ UCC_CONTEXT_PARAM_FIELD_ID
Definition: ucc.h:825
Structure representing context attributes.
Definition: ucc.h:935
Structure representing the parameters to customize the context.
Definition: ucc.h:907
ucc_status_t ucc_context_create(ucc_lib_h lib_handle, const ucc_context_params_t *params, const ucc_context_config_h config, ucc_context_h *context)
The ucc_context_create routine creates the context handle.
ucc_status_t ucc_context_progress(ucc_context_h context)
The ucc_context_progress routine progresses the operations on the context handle.
ucc_status_t ucc_context_destroy(ucc_context_h context)
The ucc_context_destroy routine frees the context handle.
ucc_status_t ucc_context_config_modify(ucc_context_config_h config, const char *component, const char *name, const char *value)
The ucc_context_config_modify routine modifies the runtime configuration of UCC context (optionally f...
void ucc_context_config_release(ucc_context_config_h config)
The ucc_context_config_release routine releases the configuration descriptor.
ucc_status_t ucc_context_config_read(ucc_lib_h lib_handle, const char *filename, ucc_context_config_h *config)
Routine reads the configuration information for contexts from the runtime enviornment and creates the...
void ucc_context_config_print(const ucc_context_config_h config, FILE *stream, const char *title, ucc_config_print_flags_t print_flags)
The ucc_context_config_print routine prints the configuration information.
ucc_status_t ucc_context_get_attr(ucc_context_h context, ucc_context_attr_t *context_attr)
The routine queries the attributes of the context handle.
size_t stride
Definition: ucc.h:264
void * cb_ctx
Definition: ucc.h:267
uint64_t mask
Definition: ucc.h:257
size_t count
Definition: ucc.h:263
void * src2
Definition: ucc.h:259
size_t n_vectors
Definition: ucc.h:262
void * src1
Definition: ucc.h:258
ucc_dt_generic_t * dt
Definition: ucc.h:265
void * dst
Definition: ucc.h:261
uint64_t ucc_datatype_t
Enumeration representing the UCC library's datatype.
Definition: ucc.h:193
size_t(* pack)(void *state, size_t offset, void *dest, size_t max_length)
Pack data.
Definition: ucc.h:343
ucc_generic_dt_ops_field
Definition: ucc.h:214
void ucc_dt_destroy(ucc_datatype_t datatype)
Destroy generic datatype.
ucc_status_t ucc_dt_create_generic(const ucc_generic_dt_ops_t *ops, void *context, ucc_datatype_t *datatype_p)
Create a generic datatype.
struct ucc_generic_dt_ops::@0 reduce
User-defined reduction callback.
struct ucc_reduce_cb_params ucc_reduce_cb_params_t
Descriptor of user-defined reduction callback.
void(* finish)(void *state)
Finish packing/unpacking.
Definition: ucc.h:376
struct ucc_generic_dt_ops ucc_generic_dt_ops_t
UCC generic data type descriptor.
size_t(* packed_size)(void *state)
Get the total size of packed data.
Definition: ucc.h:325
ucc_status_t(* unpack)(void *state, size_t offset, const void *src, size_t length)
Unpack data.
Definition: ucc.h:360
void * cb_ctx
Definition: ucc.h:389
ucc_generic_dt_ops_flags_t
Flags that can be specified for generic datatype.
Definition: ucc.h:224
@ UCC_GENERIC_DT_OPS_FIELD_FLAGS
Definition: ucc.h:215
@ UCC_GENERIC_DT_OPS_FLAG_CONTIG
Definition: ucc.h:225
@ UCC_GENERIC_DT_OPS_FLAG_REDUCE
Definition: ucc.h:231
Descriptor of user-defined reduction callback.
Definition: ucc.h:256
ucc_ee_type_t ee_type
Definition: ucc.h:2029
ucc_coll_req_h req
Definition: ucc.h:2021
void * ev_context
Definition: ucc.h:2019
void * ee_context
Definition: ucc.h:2030
ucc_event_type_t ev_type
Definition: ucc.h:2018
size_t ee_context_size
Definition: ucc.h:2031
size_t ev_context_size
Definition: ucc.h:2020
enum ucc_event_type ucc_event_type_t
ucc_event_type
Definition: ucc.h:1995
enum ucc_ee_type ucc_ee_type_t
struct ucc_ee_params ucc_ee_params_t
struct ucc_event ucc_ev_t
ucc_ee_type
Definition: ucc.h:2006
@ UCC_EVENT_COMPUTE_COMPLETE
Definition: ucc.h:1998
@ UCC_EVENT_COLLECTIVE_COMPLETE
Definition: ucc.h:1997
@ UCC_EVENT_COLLECTIVE_POST
Definition: ucc.h:1996
@ UCC_EVENT_OVERFLOW
Definition: ucc.h:1999
@ UCC_EE_CUDA_STREAM
Definition: ucc.h:2007
@ UCC_EE_LAST
Definition: ucc.h:2009
@ UCC_EE_CPU_THREAD
Definition: ucc.h:2008
@ UCC_EE_UNKNOWN
Definition: ucc.h:2010
ucc_status_t ucc_ee_wait(ucc_ee_h ee, ucc_ev_t *ev)
The routine blocks the calling thread until there is an event on the queue.
ucc_status_t ucc_ee_get_event(ucc_ee_h ee, ucc_ev_t **ev)
The routine gets the event from the event queue.
ucc_status_t ucc_ee_create(ucc_team_h team, const ucc_ee_params_t *params, ucc_ee_h *ee)
The routine creates the execution context for collective operations.
ucc_status_t ucc_ee_set_event(ucc_ee_h ee, ucc_ev_t *ev)
The routine to set the event to the tail of the queue.
ucc_status_t ucc_ee_ack_event(ucc_ee_h ee, ucc_ev_t *ev)
The routine acks the events from the event queue.
ucc_status_t ucc_ee_destroy(ucc_ee_h ee)
The routine destroys the execution context created for collective operations.
ucc_status_t ucc_collective_triggered_post(ucc_ee_h ee, ucc_ev_t *ee_event)
The routine posts the collective operation on the execution engine, which is launched on the event.
uint64_t coll_types
Definition: ucc.h:565
uint64_t reduction_types
Definition: ucc.h:593
uint64_t coll_types
Definition: ucc.h:592
uint64_t reduction_types
Definition: ucc.h:566
uint64_t mask
Definition: ucc.h:563
ucc_thread_mode_t thread_mode
Definition: ucc.h:591
ucc_coll_sync_type_t sync_type
Definition: ucc.h:594
ucc_thread_mode_t thread_mode
Definition: ucc.h:564
uint64_t mask
Definition: ucc.h:590
ucc_coll_sync_type_t sync_type
Definition: ucc.h:567
struct ucc_lib_params ucc_lib_params_t
Structure representing the parameters to customize the library.
struct ucc_lib_config * ucc_lib_config_h
UCC library configuration handle.
Definition: ucc_def.h:92
ucc_coll_sync_type_t
Enumeration representing the collective synchronization model.
Definition: ucc.h:510
ucc_lib_attr_field
Definition: ucc.h:535
struct ucc_lib_info * ucc_lib_h
UCC library handle.
Definition: ucc_def.h:25
ucc_lib_params_field
UCC library initialization parameters.
Definition: ucc.h:524
ucc_coll_type_t
Enumeration representing the collective operations.
Definition: ucc.h:139
ucc_reduction_op_t
Enumeration representing the UCC reduction operations.
Definition: ucc.h:443
ucc_thread_mode_t
Enumeration representing the UCC library's thread model.
Definition: ucc.h:482
struct ucc_lib_attr ucc_lib_attr_t
Structure representing the attributes of the library.
@ UCC_SYNC_COLLECTIVES
Definition: ucc.h:512
@ UCC_NO_SYNC_COLLECTIVES
Definition: ucc.h:511
@ UCC_LIB_ATTR_FIELD_SYNC_TYPE
Definition: ucc.h:539
@ UCC_LIB_ATTR_FIELD_COLL_TYPES
Definition: ucc.h:537
@ UCC_LIB_ATTR_FIELD_REDUCTION_TYPES
Definition: ucc.h:538
@ UCC_LIB_ATTR_FIELD_THREAD_MODE
Definition: ucc.h:536
@ UCC_LIB_PARAM_FIELD_SYNC_TYPE
Definition: ucc.h:528
@ UCC_LIB_PARAM_FIELD_REDUCTION_TYPES
Definition: ucc.h:527
@ UCC_LIB_PARAM_FIELD_COLL_TYPES
Definition: ucc.h:526
@ UCC_LIB_PARAM_FIELD_THREAD_MODE
Definition: ucc.h:525
@ UCC_COLL_TYPE_ALLGATHERV
Definition: ucc.h:141
@ UCC_COLL_TYPE_GATHER
Definition: ucc.h:149
@ UCC_COLL_TYPE_ALLTOALLV
Definition: ucc.h:144
@ UCC_COLL_TYPE_SCATTER
Definition: ucc.h:154
@ UCC_COLL_TYPE_ALLREDUCE
Definition: ucc.h:142
@ UCC_COLL_TYPE_FANIN
Definition: ucc.h:147
@ UCC_COLL_TYPE_REDUCE
Definition: ucc.h:151
@ UCC_COLL_TYPE_SCATTERV
Definition: ucc.h:155
@ UCC_COLL_TYPE_FANOUT
Definition: ucc.h:148
@ UCC_COLL_TYPE_LAST
Definition: ucc.h:156
@ UCC_COLL_TYPE_BCAST
Definition: ucc.h:146
@ UCC_COLL_TYPE_BARRIER
Definition: ucc.h:145
@ UCC_COLL_TYPE_REDUCE_SCATTERV
Definition: ucc.h:153
@ UCC_COLL_TYPE_ALLTOALL
Definition: ucc.h:143
@ UCC_COLL_TYPE_REDUCE_SCATTER
Definition: ucc.h:152
@ UCC_COLL_TYPE_ALLGATHER
Definition: ucc.h:140
@ UCC_COLL_TYPE_GATHERV
Definition: ucc.h:150
@ UCC_OP_SUM
Definition: ucc.h:444
@ UCC_OP_BXOR
Definition: ucc.h:453
@ UCC_OP_LAST
Definition: ucc.h:457
@ UCC_OP_MAX
Definition: ucc.h:446
@ UCC_OP_MAXLOC
Definition: ucc.h:454
@ UCC_OP_AVG
Definition: ucc.h:456
@ UCC_OP_PROD
Definition: ucc.h:445
@ UCC_OP_BAND
Definition: ucc.h:451
@ UCC_OP_LAND
Definition: ucc.h:448
@ UCC_OP_MINLOC
Definition: ucc.h:455
@ UCC_OP_MIN
Definition: ucc.h:447
@ UCC_OP_LXOR
Definition: ucc.h:450
@ UCC_OP_BOR
Definition: ucc.h:452
@ UCC_OP_LOR
Definition: ucc.h:449
@ UCC_THREAD_MULTIPLE
Definition: ucc.h:485
@ UCC_THREAD_SINGLE
Definition: ucc.h:483
@ UCC_THREAD_FUNNELED
Definition: ucc.h:484
Structure representing the attributes of the library.
Definition: ucc.h:589
Structure representing the parameters to customize the library.
Definition: ucc.h:562
static ucc_status_t ucc_init(const ucc_lib_params_t *params, const ucc_lib_config_h config, ucc_lib_h *lib_p)
The ucc_init initializes the UCC library.
Definition: ucc.h:746
ucc_status_t ucc_lib_get_attr(ucc_lib_h lib_p, ucc_lib_attr_t *lib_attr)
The ucc_lib_get_attr routine queries the library attributes.
ucc_status_t ucc_finalize(ucc_lib_h lib_p)
The ucc_finalize routine finalizes the UCC library.
void ucc_lib_config_release(ucc_lib_config_h config)
The ucc_lib_config_release routine releases the configuration descriptor.
ucc_status_t ucc_lib_config_read(const char *env_prefix, const char *filename, ucc_lib_config_h *config)
The ucc_lib_config_read routine provides a method to read library configuration from the environment ...
void ucc_lib_config_print(const ucc_lib_config_h config, FILE *stream, const char *title, ucc_config_print_flags_t print_flags)
The ucc_lib_config_print routine prints the configuration information.
ucc_status_t ucc_lib_config_modify(ucc_lib_config_h config, const char *name, const char *value)
The ucc_lib_config_modify routine modifies the runtime configuration as described by the descriptor.
uint64_t * ep_list
Definition: ucc.h:1373
uint64_t ep
Definition: ucc.h:1368
ucc_coll_sync_type_t sync_type
Definition: ucc.h:1476
int64_t stride
Definition: ucc.h:1277
ucc_ep_map_t ep_map
Definition: ucc.h:1437
uint64_t mask
Definition: ucc.h:1349
ucc_mem_map_params_t mem_params
Definition: ucc.h:1428
uint64_t mask
Definition: ucc.h:1471
uint64_t id
Definition: ucc.h:1448
uint64_t team_size
Definition: ucc.h:1384
ucc_ep_range_type_t ep_range
Definition: ucc.h:1475
uint64_t ep_num
Definition: ucc.h:1316
ucc_ep_range_type_t ep_range
Definition: ucc.h:1378
uint64_t start
Definition: ucc.h:1276
uint64_t ep
Definition: ucc.h:1474
ucc_post_ordering_t ordering
Definition: ucc.h:1354
uint64_t outstanding_colls
Definition: ucc.h:1473
ucc_team_p2p_conn_t p2p_conn
Definition: ucc.h:1421
ucc_coll_sync_type_t sync_type
Definition: ucc.h:1390
ucc_team_oob_coll_t oob
Definition: ucc.h:1416
size_t elem_size
Definition: ucc.h:1286
ucc_post_ordering_t ordering
Definition: ucc.h:1472
ucc_ep_map_type_t type
Definition: ucc.h:1315
uint64_t outstanding_colls
Definition: ucc.h:1361
ucc_mem_map_params_t mem_params
Definition: ucc.h:1477
void * map
Definition: ucc.h:1285
uint64_t flags
Definition: ucc.h:1350
struct ucc_team_attr ucc_team_attr_t
Structure representing the team attributes.
size_t ucc_context_addr_len_t
Definition: ucc_def.h:150
struct ucc_team_params ucc_team_params_t
Structure representing the parameters to customize the team.
struct ucc_team_p2p_conn ucc_team_p2p_conn_t
void * ucc_context_addr_h
Definition: ucc_def.h:145
struct ucc_ep_map_t ucc_ep_map_t
struct ucc_team * ucc_team_h
UCC team handle.
Definition: ucc_def.h:50
ucc_team_params_field
Definition: ucc.h:1164
ucc_post_ordering_t
Definition: ucc.h:1223
ucc_team_flags
Definition: ucc.h:1197
void * ucc_p2p_conn_t
Definition: ucc_def.h:140
ucc_ep_map_type_t
Definition: ucc.h:1302
ucc_ep_range_type_t
Definition: ucc.h:1266
ucc_team_attr_field
Definition: ucc.h:1184
@ UCC_TEAM_PARAM_FIELD_ID
Definition: ucc.h:1176
@ UCC_TEAM_PARAM_FIELD_EP_LIST
Definition: ucc.h:1168
@ UCC_TEAM_PARAM_FIELD_EP
Definition: ucc.h:1167
@ UCC_TEAM_PARAM_FIELD_SYNC_TYPE
Definition: ucc.h:1171
@ UCC_TEAM_PARAM_FIELD_MEM_PARAMS
Definition: ucc.h:1174
@ UCC_TEAM_PARAM_FIELD_EP_MAP
Definition: ucc.h:1175
@ UCC_TEAM_PARAM_FIELD_EP_RANGE
Definition: ucc.h:1169
@ UCC_TEAM_PARAM_FIELD_ORDERING
Definition: ucc.h:1165
@ UCC_TEAM_PARAM_FIELD_FLAGS
Definition: ucc.h:1177
@ UCC_TEAM_PARAM_FIELD_OOB
Definition: ucc.h:1172
@ UCC_TEAM_PARAM_FIELD_OUTSTANDING_COLLS
Definition: ucc.h:1166
@ UCC_TEAM_PARAM_FIELD_P2P_CONN
Definition: ucc.h:1173
@ UCC_TEAM_PARAM_FIELD_TEAM_SIZE
Definition: ucc.h:1170
@ UCC_COLLECTIVE_INIT_UNORDERED
Definition: ucc.h:1247
@ UCC_COLLECTIVE_POST_ORDERED
Definition: ucc.h:1229
@ UCC_COLLECTIVE_INIT_ORDERED
Definition: ucc.h:1241
@ UCC_COLLECTIVE_INIT_AND_POST_UNORDERED
Definition: ucc.h:1259
@ UCC_COLLECTIVE_INIT_AND_POST_ORDERED
Definition: ucc.h:1253
@ UCC_COLLECTIVE_POST_UNORDERED
Definition: ucc.h:1235
@ UCC_TEAM_FLAG_COLL_WORK_BUFFER
Definition: ucc.h:1198
@ UCC_EP_MAP_CB
Definition: ucc.h:1307
@ UCC_EP_MAP_STRIDED
Definition: ucc.h:1304
@ UCC_EP_MAP_ARRAY
Definition: ucc.h:1305
@ UCC_EP_MAP_FULL
Definition: ucc.h:1303
@ UCC_COLLECTIVE_EP_RANGE_NONCONTIG
Definition: ucc.h:1268
@ UCC_COLLECTIVE_EP_RANGE_CONTIG
Definition: ucc.h:1267
@ UCC_TEAM_ATTR_FIELD_POST_ORDERING
Definition: ucc.h:1185
@ UCC_TEAM_ATTR_FIELD_SYNC_TYPE
Definition: ucc.h:1189
@ UCC_TEAM_ATTR_FIELD_OUTSTANDING_CALLS
Definition: ucc.h:1186
@ UCC_TEAM_ATTR_FIELD_MEM_PARAMS
Definition: ucc.h:1190
@ UCC_TEAM_ATTR_FIELD_EP
Definition: ucc.h:1187
@ UCC_TEAM_ATTR_FIELD_EP_RANGE
Definition: ucc.h:1188
Structure representing the team attributes.
Definition: ucc.h:1470
Structure representing the parameters to customize the team.
Definition: ucc.h:1347
ucc_status_t ucc_team_get_my_ep(ucc_team_h team, uint64_t *ep)
The routine returns the endpoint of the calling participant.
ucc_status_t ucc_team_create_post(ucc_context_h *contexts, uint32_t num_contexts, const ucc_team_params_t *team_params, ucc_team_h *new_team)
The routine is a method to create the team.
ucc_status_t ucc_team_get_size(ucc_team_h team, uint32_t *size)
The routine returns the size of the team.
ucc_status_t ucc_team_create_from_parent(uint64_t my_ep, uint32_t included, ucc_team_h parent_team, ucc_team_h *new_team)
The routine creates a new team from the parent team.
ucc_status_t ucc_team_destroy(ucc_team_h team)
The team frees the team handle.
ucc_status_t ucc_team_get_all_eps(ucc_team_h team, uint64_t **ep, uint64_t *num_eps)
The routine queries all endpoints associated with the team handle.
ucc_status_t ucc_team_create_test(ucc_team_h team)
The routine queries the status of the team creation operation.
ucc_status_t ucc_team_get_attr(ucc_team_h team, ucc_team_attr_t *team_attr)
The routine returns the attributes of the team.
ucc_config_print_flags_t
Print configurations.
Definition: ucc_def.h:124
ucc_status_t
Status codes for the UCC operations.
Definition: ucc_status.h:26
ucc_status_t status
Definition: ucc_def.h:63
UCC collective completion callback.
Definition: ucc_def.h:74
uint64_t(* cb)(uint64_t ep, void *cb_ctx)
Definition: ucc.h:1294
void * cb_ctx
Definition: ucc.h:1295
UCC generic data type descriptor.
Definition: ucc.h:278
size_t contig_size
Definition: ucc.h:281
uint64_t flags
Definition: ucc.h:280
uint64_t mask
Definition: ucc.h:279
OOB collective operation for creating the context.
Definition: ucc.h:846
ucc_status_t(* req_test)(void *request)
Definition: ucc.h:849
uint32_t oob_ep
Definition: ucc.h:855
ucc_status_t(* allgather)(void *src_buf, void *recv_buf, size_t size, void *allgather_info, void **request)
Definition: ucc.h:847
void * coll_info
Definition: ucc.h:851
ucc_status_t(* req_free)(void *request)
Definition: ucc.h:850
uint32_t n_oob_eps
Definition: ucc.h:852
ucc_status_t(* req_test)(void *request)
Definition: ucc.h:1215
int(* conn_info_release)(ucc_p2p_conn_t *conn_info)
Definition: ucc.h:1213
int(* conn_info_lookup)(void *conn_ctx, uint64_t ep, ucc_p2p_conn_t **conn_info, void *request)
Definition: ucc.h:1212
ucc_status_t(* req_free)(void *request)
Definition: ucc.h:1216
void * conn_ctx
Definition: ucc.h:1214